All functions:
  Elements:
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: __get_cpuid_count
      Src: /src/opus/cmake/cpu_info_by_c.c:8,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9
      start: 2
    functionDepth: 0
    functionLinenumber: 2
    functionLinenumberEnd: 9
    functionName: main
    functionSourceFile: /src/opus/cmake/cpu_info_by_c.c
    functionUses: 0
    functionsReached:
    - __get_cpuid_count
    linkageType: ''
    returnType: int
    signature: int main()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7
      start: 1
    functionDepth: 0
    functionLinenumber: 1
    functionLinenumberEnd: 7
    functionName: main
    functionSourceFile: /src/opus/cmake/vla.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int main()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 2
    functionDepth: 0
    functionLinenumber: 2
    functionLinenumberEnd: 31
    functionName: main
    functionSourceFile: /src/opus/cmake/cpu_info_by_asm.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int main()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_multistream_surround_encoder_create
      Src: /src/opus/tests/opus_encode_regressions.c:53,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:55,1
    - Dst: OPUS_SET_SIGNAL
      Src: /src/opus/tests/opus_encode_regressions.c:55,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:56,1
    - Dst: OPUS_SET_VBR
      Src: /src/opus/tests/opus_encode_regressions.c:56,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:57,1
    - Dst: OPUS_SET_VBR_CONSTRAINT
      Src: /src/opus/tests/opus_encode_regressions.c:57,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:58,1
    - Dst: OPUS_SET_PREDICTION_DISABLED
      Src: /src/opus/tests/opus_encode_regressions.c:58,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:59,1
    - Dst: OPUS_SET_PHASE_INVERSION_DISABLED
      Src: /src/opus/tests/opus_encode_regressions.c:59,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:60,1
    - Dst: OPUS_SET_DTX
      Src: /src/opus/tests/opus_encode_regressions.c:60,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:61,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/tests/opus_encode_regressions.c:61,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:62,1
    - Dst: OPUS_SET_MAX_BANDWIDTH
      Src: /src/opus/tests/opus_encode_regressions.c:62,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:63,1
    - Dst: OPUS_SET_BANDWIDTH
      Src: /src/opus/tests/opus_encode_regressions.c:63,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:64,1
    - Dst: OPUS_SET_LSB_DEPTH
      Src: /src/opus/tests/opus_encode_regressions.c:64,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:65,1
    - Dst: OPUS_SET_INBAND_FEC
      Src: /src/opus/tests/opus_encode_regressions.c:65,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:66,1
    - Dst: OPUS_SET_PACKET_LOSS_PERC
      Src: /src/opus/tests/opus_encode_regressions.c:66,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:67,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/tests/opus_encode_regressions.c:67,1
    - Dst: opus_multistream_encode
      Src: /src/opus/tests/opus_encode_regressions.c:108,1
    - Dst: opus_test_assert
      Src: /src/opus/tests/opus_encode_regressions.c:109,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:111,1
    - Dst: OPUS_SET_SIGNAL
      Src: /src/opus/tests/opus_encode_regressions.c:111,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:112,1
    - Dst: OPUS_SET_VBR
      Src: /src/opus/tests/opus_encode_regressions.c:112,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:113,1
    - Dst: OPUS_SET_VBR_CONSTRAINT
      Src: /src/opus/tests/opus_encode_regressions.c:113,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:114,1
    - Dst: OPUS_SET_PREDICTION_DISABLED
      Src: /src/opus/tests/opus_encode_regressions.c:114,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:115,1
    - Dst: OPUS_SET_PHASE_INVERSION_DISABLED
      Src: /src/opus/tests/opus_encode_regressions.c:115,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:116,1
    - Dst: OPUS_SET_DTX
      Src: /src/opus/tests/opus_encode_regressions.c:116,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:117,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/tests/opus_encode_regressions.c:117,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:118,1
    - Dst: OPUS_SET_MAX_BANDWIDTH
      Src: /src/opus/tests/opus_encode_regressions.c:118,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:119,1
    - Dst: OPUS_SET_BANDWIDTH
      Src: /src/opus/tests/opus_encode_regressions.c:119,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:120,1
    - Dst: OPUS_SET_LSB_DEPTH
      Src: /src/opus/tests/opus_encode_regressions.c:120,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:121,1
    - Dst: OPUS_SET_INBAND_FEC
      Src: /src/opus/tests/opus_encode_regressions.c:121,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:122,1
    - Dst: OPUS_SET_PACKET_LOSS_PERC
      Src: /src/opus/tests/opus_encode_regressions.c:122,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:123,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/tests/opus_encode_regressions.c:123,1
    - Dst: opus_multistream_encode
      Src: /src/opus/tests/opus_encode_regressions.c:146,1
    - Dst: opus_test_assert
      Src: /src/opus/tests/opus_encode_regressions.c:147,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:149,1
    - Dst: OPUS_SET_SIGNAL
      Src: /src/opus/tests/opus_encode_regressions.c:149,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:150,1
    - Dst: OPUS_SET_VBR
      Src: /src/opus/tests/opus_encode_regressions.c:150,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:151,1
    - Dst: OPUS_SET_VBR_CONSTRAINT
      Src: /src/opus/tests/opus_encode_regressions.c:151,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:152,1
    - Dst: OPUS_SET_PREDICTION_DISABLED
      Src: /src/opus/tests/opus_encode_regressions.c:152,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:153,1
    - Dst: OPUS_SET_PHASE_INVERSION_DISABLED
      Src: /src/opus/tests/opus_encode_regressions.c:153,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:154,1
    - Dst: OPUS_SET_DTX
      Src: /src/opus/tests/opus_encode_regressions.c:154,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:155,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/tests/opus_encode_regressions.c:155,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:156,1
    - Dst: OPUS_SET_MAX_BANDWIDTH
      Src: /src/opus/tests/opus_encode_regressions.c:156,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:157,1
    - Dst: OPUS_SET_BANDWIDTH
      Src: /src/opus/tests/opus_encode_regressions.c:157,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:158,1
    - Dst: OPUS_SET_LSB_DEPTH
      Src: /src/opus/tests/opus_encode_regressions.c:158,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:159,1
    - Dst: OPUS_SET_INBAND_FEC
      Src: /src/opus/tests/opus_encode_regressions.c:159,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:160,1
    - Dst: OPUS_SET_PACKET_LOSS_PERC
      Src: /src/opus/tests/opus_encode_regressions.c:160,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:161,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/tests/opus_encode_regressions.c:161,1
    - Dst: opus_multistream_encode
      Src: /src/opus/tests/opus_encode_regressions.c:184,1
    - Dst: opus_test_assert
      Src: /src/opus/tests/opus_encode_regressions.c:185,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:187,1
    - Dst: OPUS_SET_SIGNAL
      Src: /src/opus/tests/opus_encode_regressions.c:187,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:188,1
    - Dst: OPUS_SET_VBR
      Src: /src/opus/tests/opus_encode_regressions.c:188,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:189,1
    - Dst: OPUS_SET_VBR_CONSTRAINT
      Src: /src/opus/tests/opus_encode_regressions.c:189,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:190,1
    - Dst: OPUS_SET_PREDICTION_DISABLED
      Src: /src/opus/tests/opus_encode_regressions.c:190,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:191,1
    - Dst: OPUS_SET_PHASE_INVERSION_DISABLED
      Src: /src/opus/tests/opus_encode_regressions.c:191,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:192,1
    - Dst: OPUS_SET_DTX
      Src: /src/opus/tests/opus_encode_regressions.c:192,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:193,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/tests/opus_encode_regressions.c:193,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:194,1
    - Dst: OPUS_SET_MAX_BANDWIDTH
      Src: /src/opus/tests/opus_encode_regressions.c:194,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:195,1
    - Dst: OPUS_SET_BANDWIDTH
      Src: /src/opus/tests/opus_encode_regressions.c:195,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:196,1
    - Dst: OPUS_SET_LSB_DEPTH
      Src: /src/opus/tests/opus_encode_regressions.c:196,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:197,1
    - Dst: OPUS_SET_INBAND_FEC
      Src: /src/opus/tests/opus_encode_regressions.c:197,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:198,1
    - Dst: OPUS_SET_PACKET_LOSS_PERC
      Src: /src/opus/tests/opus_encode_regressions.c:198,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:199,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/tests/opus_encode_regressions.c:199,1
    - Dst: opus_multistream_encode
      Src: /src/opus/tests/opus_encode_regressions.c:222,1
    - Dst: opus_test_assert
      Src: /src/opus/tests/opus_encode_regressions.c:223,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:225,1
    - Dst: OPUS_SET_SIGNAL
      Src: /src/opus/tests/opus_encode_regressions.c:225,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:226,1
    - Dst: OPUS_SET_VBR
      Src: /src/opus/tests/opus_encode_regressions.c:226,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:227,1
    - Dst: OPUS_SET_VBR_CONSTRAINT
      Src: /src/opus/tests/opus_encode_regressions.c:227,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:228,1
    - Dst: OPUS_SET_PREDICTION_DISABLED
      Src: /src/opus/tests/opus_encode_regressions.c:228,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:229,1
    - Dst: OPUS_SET_PHASE_INVERSION_DISABLED
      Src: /src/opus/tests/opus_encode_regressions.c:229,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:230,1
    - Dst: OPUS_SET_DTX
      Src: /src/opus/tests/opus_encode_regressions.c:230,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:231,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/tests/opus_encode_regressions.c:231,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:232,1
    - Dst: OPUS_SET_MAX_BANDWIDTH
      Src: /src/opus/tests/opus_encode_regressions.c:232,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:233,1
    - Dst: OPUS_SET_BANDWIDTH
      Src: /src/opus/tests/opus_encode_regressions.c:233,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:234,1
    - Dst: OPUS_SET_LSB_DEPTH
      Src: /src/opus/tests/opus_encode_regressions.c:234,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:235,1
    - Dst: OPUS_SET_INBAND_FEC
      Src: /src/opus/tests/opus_encode_regressions.c:235,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:236,1
    - Dst: OPUS_SET_PACKET_LOSS_PERC
      Src: /src/opus/tests/opus_encode_regressions.c:236,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:237,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/tests/opus_encode_regressions.c:237,1
    - Dst: opus_multistream_encode
      Src: /src/opus/tests/opus_encode_regressions.c:258,1
    - Dst: opus_test_assert
      Src: /src/opus/tests/opus_encode_regressions.c:259,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:261,1
    - Dst: OPUS_SET_SIGNAL
      Src: /src/opus/tests/opus_encode_regressions.c:261,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:262,1
    - Dst: OPUS_SET_VBR
      Src: /src/opus/tests/opus_encode_regressions.c:262,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:263,1
    - Dst: OPUS_SET_VBR_CONSTRAINT
      Src: /src/opus/tests/opus_encode_regressions.c:263,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:264,1
    - Dst: OPUS_SET_PREDICTION_DISABLED
      Src: /src/opus/tests/opus_encode_regressions.c:264,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:265,1
    - Dst: OPUS_SET_PHASE_INVERSION_DISABLED
      Src: /src/opus/tests/opus_encode_regressions.c:265,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:266,1
    - Dst: OPUS_SET_DTX
      Src: /src/opus/tests/opus_encode_regressions.c:266,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:267,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/tests/opus_encode_regressions.c:267,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:268,1
    - Dst: OPUS_SET_MAX_BANDWIDTH
      Src: /src/opus/tests/opus_encode_regressions.c:268,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:269,1
    - Dst: OPUS_SET_BANDWIDTH
      Src: /src/opus/tests/opus_encode_regressions.c:269,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:270,1
    - Dst: OPUS_SET_LSB_DEPTH
      Src: /src/opus/tests/opus_encode_regressions.c:270,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:271,1
    - Dst: OPUS_SET_INBAND_FEC
      Src: /src/opus/tests/opus_encode_regressions.c:271,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:272,1
    - Dst: OPUS_SET_PACKET_LOSS_PERC
      Src: /src/opus/tests/opus_encode_regressions.c:272,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:273,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/tests/opus_encode_regressions.c:273,1
    - Dst: opus_multistream_encode
      Src: /src/opus/tests/opus_encode_regressions.c:283,1
    - Dst: opus_test_assert
      Src: /src/opus/tests/opus_encode_regressions.c:284,1
    - Dst: opus_multistream_encoder_destroy
      Src: /src/opus/tests/opus_encode_regressions.c:287,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 100
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 289
    functionName: celt_ec_internal_error
    functionSourceFile: /src/opus/tests/opus_encode_regressions.c
    functionUses: 0
    functionsReached:
    - OPUS_SET_PACKET_LOSS_PERC
    - OPUS_SET_PHASE_INVERSION_DISABLED
    - OPUS_SET_BITRATE
    - opus_test_assert
    - OPUS_SET_DTX
    - OPUS_SET_VBR_CONSTRAINT
    - opus_multistream_encoder_destroy
    - opus_multistream_encode
    - opus_multistream_encoder_ctl
    - OPUS_SET_COMPLEXITY
    - opus_multistream_surround_encoder_create
    - OPUS_SET_BANDWIDTH
    - OPUS_SET_INBAND_FEC
    - OPUS_SET_LSB_DEPTH
    - OPUS_SET_SIGNAL
    - OPUS_SET_VBR
    - OPUS_SET_PREDICTION_DISABLED
    - OPUS_SET_MAX_BANDWIDTH
    linkageType: ''
    returnType: int
    signature: int celt_ec_internal_error(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_multistream_encoder_create
      Src: /src/opus/tests/opus_encode_regressions.c:315,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:317,1
    - Dst: OPUS_SET_SIGNAL
      Src: /src/opus/tests/opus_encode_regressions.c:317,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:318,1
    - Dst: OPUS_SET_VBR
      Src: /src/opus/tests/opus_encode_regressions.c:318,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:319,1
    - Dst: OPUS_SET_VBR_CONSTRAINT
      Src: /src/opus/tests/opus_encode_regressions.c:319,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:320,1
    - Dst: OPUS_SET_PREDICTION_DISABLED
      Src: /src/opus/tests/opus_encode_regressions.c:320,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:321,1
    - Dst: OPUS_SET_FORCE_CHANNELS
      Src: /src/opus/tests/opus_encode_regressions.c:321,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:322,1
    - Dst: OPUS_SET_PHASE_INVERSION_DISABLED
      Src: /src/opus/tests/opus_encode_regressions.c:322,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:323,1
    - Dst: OPUS_SET_DTX
      Src: /src/opus/tests/opus_encode_regressions.c:323,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:324,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/tests/opus_encode_regressions.c:324,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:325,1
    - Dst: OPUS_SET_MAX_BANDWIDTH
      Src: /src/opus/tests/opus_encode_regressions.c:325,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:326,1
    - Dst: OPUS_SET_BANDWIDTH
      Src: /src/opus/tests/opus_encode_regressions.c:326,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:327,1
    - Dst: OPUS_SET_LSB_DEPTH
      Src: /src/opus/tests/opus_encode_regressions.c:327,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:328,1
    - Dst: OPUS_SET_INBAND_FEC
      Src: /src/opus/tests/opus_encode_regressions.c:328,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:329,1
    - Dst: OPUS_SET_PACKET_LOSS_PERC
      Src: /src/opus/tests/opus_encode_regressions.c:329,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:330,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/tests/opus_encode_regressions.c:330,1
    - Dst: opus_multistream_encode
      Src: /src/opus/tests/opus_encode_regressions.c:336,1
    - Dst: opus_test_assert
      Src: /src/opus/tests/opus_encode_regressions.c:337,1
    - Dst: opus_multistream_encoder_destroy
      Src: /src/opus/tests/opus_encode_regressions.c:340,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 291
    functionDepth: 1
    functionLinenumber: 291
    functionLinenumberEnd: 342
    functionName: mscbr_encode_fail10
    functionSourceFile: /src/opus/tests/opus_encode_regressions.c
    functionUses: 0
    functionsReached:
    - OPUS_SET_VBR_CONSTRAINT
    - OPUS_SET_BANDWIDTH
    - OPUS_SET_VBR
    - opus_test_assert
    - opus_multistream_encoder_destroy
    - OPUS_SET_BITRATE
    - OPUS_SET_LSB_DEPTH
    - OPUS_SET_DTX
    - OPUS_SET_PREDICTION_DISABLED
    - OPUS_SET_MAX_BANDWIDTH
    - OPUS_SET_PACKET_LOSS_PERC
    - OPUS_SET_INBAND_FEC
    - OPUS_SET_SIGNAL
    - opus_multistream_encoder_create
    - OPUS_SET_PHASE_INVERSION_DISABLED
    - opus_multistream_encoder_ctl
    - OPUS_SET_COMPLEXITY
    - OPUS_SET_FORCE_CHANNELS
    - opus_multistream_encode
    linkageType: ''
    returnType: int
    signature: int mscbr_encode_fail10(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_multistream_encoder_create
      Src: /src/opus/tests/opus_encode_regressions.c:365,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:367,1
    - Dst: OPUS_SET_SIGNAL
      Src: /src/opus/tests/opus_encode_regressions.c:367,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:368,1
    - Dst: OPUS_SET_VBR
      Src: /src/opus/tests/opus_encode_regressions.c:368,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:369,1
    - Dst: OPUS_SET_VBR_CONSTRAINT
      Src: /src/opus/tests/opus_encode_regressions.c:369,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:370,1
    - Dst: OPUS_SET_PREDICTION_DISABLED
      Src: /src/opus/tests/opus_encode_regressions.c:370,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:371,1
    - Dst: OPUS_SET_FORCE_CHANNELS
      Src: /src/opus/tests/opus_encode_regressions.c:371,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:372,1
    - Dst: OPUS_SET_PHASE_INVERSION_DISABLED
      Src: /src/opus/tests/opus_encode_regressions.c:372,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:373,1
    - Dst: OPUS_SET_DTX
      Src: /src/opus/tests/opus_encode_regressions.c:373,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:374,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/tests/opus_encode_regressions.c:374,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:375,1
    - Dst: OPUS_SET_MAX_BANDWIDTH
      Src: /src/opus/tests/opus_encode_regressions.c:375,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:376,1
    - Dst: OPUS_SET_BANDWIDTH
      Src: /src/opus/tests/opus_encode_regressions.c:376,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:377,1
    - Dst: OPUS_SET_LSB_DEPTH
      Src: /src/opus/tests/opus_encode_regressions.c:377,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:378,1
    - Dst: OPUS_SET_INBAND_FEC
      Src: /src/opus/tests/opus_encode_regressions.c:378,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:379,1
    - Dst: OPUS_SET_PACKET_LOSS_PERC
      Src: /src/opus/tests/opus_encode_regressions.c:379,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:380,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/tests/opus_encode_regressions.c:380,1
    - Dst: opus_multistream_encode
      Src: /src/opus/tests/opus_encode_regressions.c:386,1
    - Dst: opus_test_assert
      Src: /src/opus/tests/opus_encode_regressions.c:387,1
    - Dst: opus_multistream_encoder_destroy
      Src: /src/opus/tests/opus_encode_regressions.c:390,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 392
      start: 344
    functionDepth: 1
    functionLinenumber: 344
    functionLinenumberEnd: 392
    functionName: mscbr_encode_fail
    functionSourceFile: /src/opus/tests/opus_encode_regressions.c
    functionUses: 0
    functionsReached:
    - OPUS_SET_VBR_CONSTRAINT
    - OPUS_SET_BANDWIDTH
    - OPUS_SET_VBR
    - opus_test_assert
    - opus_multistream_encoder_destroy
    - OPUS_SET_BITRATE
    - OPUS_SET_LSB_DEPTH
    - OPUS_SET_DTX
    - OPUS_SET_PREDICTION_DISABLED
    - OPUS_SET_MAX_BANDWIDTH
    - OPUS_SET_PACKET_LOSS_PERC
    - OPUS_SET_INBAND_FEC
    - OPUS_SET_SIGNAL
    - opus_multistream_encoder_create
    - OPUS_SET_PHASE_INVERSION_DISABLED
    - opus_multistream_encoder_ctl
    - OPUS_SET_COMPLEXITY
    - OPUS_SET_FORCE_CHANNELS
    - opus_multistream_encode
    linkageType: ''
    returnType: int
    signature: int mscbr_encode_fail(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_multistream_surround_encoder_create
      Src: /src/opus/tests/opus_encode_regressions.c:403,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:405,1
    - Dst: OPUS_SET_SIGNAL
      Src: /src/opus/tests/opus_encode_regressions.c:405,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:406,1
    - Dst: OPUS_SET_VBR
      Src: /src/opus/tests/opus_encode_regressions.c:406,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:407,1
    - Dst: OPUS_SET_VBR_CONSTRAINT
      Src: /src/opus/tests/opus_encode_regressions.c:407,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:408,1
    - Dst: OPUS_SET_PREDICTION_DISABLED
      Src: /src/opus/tests/opus_encode_regressions.c:408,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:409,1
    - Dst: OPUS_SET_FORCE_CHANNELS
      Src: /src/opus/tests/opus_encode_regressions.c:409,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:410,1
    - Dst: OPUS_SET_PHASE_INVERSION_DISABLED
      Src: /src/opus/tests/opus_encode_regressions.c:410,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:411,1
    - Dst: OPUS_SET_DTX
      Src: /src/opus/tests/opus_encode_regressions.c:411,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:412,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/tests/opus_encode_regressions.c:412,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:413,1
    - Dst: OPUS_SET_MAX_BANDWIDTH
      Src: /src/opus/tests/opus_encode_regressions.c:413,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:414,1
    - Dst: OPUS_SET_BANDWIDTH
      Src: /src/opus/tests/opus_encode_regressions.c:414,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:415,1
    - Dst: OPUS_SET_LSB_DEPTH
      Src: /src/opus/tests/opus_encode_regressions.c:415,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:416,1
    - Dst: OPUS_SET_INBAND_FEC
      Src: /src/opus/tests/opus_encode_regressions.c:416,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:417,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/tests/opus_encode_regressions.c:417,1
    - Dst: opus_multistream_encode
      Src: /src/opus/tests/opus_encode_regressions.c:742,1
    - Dst: opus_test_assert
      Src: /src/opus/tests/opus_encode_regressions.c:743,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:745,1
    - Dst: OPUS_SET_SIGNAL
      Src: /src/opus/tests/opus_encode_regressions.c:745,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:746,1
    - Dst: OPUS_SET_VBR
      Src: /src/opus/tests/opus_encode_regressions.c:746,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:747,1
    - Dst: OPUS_SET_VBR_CONSTRAINT
      Src: /src/opus/tests/opus_encode_regressions.c:747,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:748,1
    - Dst: OPUS_SET_PREDICTION_DISABLED
      Src: /src/opus/tests/opus_encode_regressions.c:748,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:749,1
    - Dst: OPUS_SET_FORCE_CHANNELS
      Src: /src/opus/tests/opus_encode_regressions.c:749,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:750,1
    - Dst: OPUS_SET_PHASE_INVERSION_DISABLED
      Src: /src/opus/tests/opus_encode_regressions.c:750,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:751,1
    - Dst: OPUS_SET_DTX
      Src: /src/opus/tests/opus_encode_regressions.c:751,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:752,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/tests/opus_encode_regressions.c:752,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:753,1
    - Dst: OPUS_SET_MAX_BANDWIDTH
      Src: /src/opus/tests/opus_encode_regressions.c:753,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:754,1
    - Dst: OPUS_SET_BANDWIDTH
      Src: /src/opus/tests/opus_encode_regressions.c:754,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:755,1
    - Dst: OPUS_SET_LSB_DEPTH
      Src: /src/opus/tests/opus_encode_regressions.c:755,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:756,1
    - Dst: OPUS_SET_INBAND_FEC
      Src: /src/opus/tests/opus_encode_regressions.c:756,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:757,1
    - Dst: OPUS_SET_PACKET_LOSS_PERC
      Src: /src/opus/tests/opus_encode_regressions.c:757,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:758,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/tests/opus_encode_regressions.c:758,1
    - Dst: opus_multistream_encode
      Src: /src/opus/tests/opus_encode_regressions.c:886,1
    - Dst: opus_test_assert
      Src: /src/opus/tests/opus_encode_regressions.c:888,1
    - Dst: opus_multistream_encoder_destroy
      Src: /src/opus/tests/opus_encode_regressions.c:890,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 37
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 892
      start: 394
    functionDepth: 1
    functionLinenumber: 394
    functionLinenumberEnd: 892
    functionName: surround_analysis_uninit
    functionSourceFile: /src/opus/tests/opus_encode_regressions.c
    functionUses: 0
    functionsReached:
    - OPUS_SET_VBR_CONSTRAINT
    - OPUS_SET_BANDWIDTH
    - OPUS_SET_VBR
    - opus_test_assert
    - opus_multistream_encoder_destroy
    - OPUS_SET_BITRATE
    - OPUS_SET_LSB_DEPTH
    - OPUS_SET_DTX
    - OPUS_SET_PREDICTION_DISABLED
    - OPUS_SET_MAX_BANDWIDTH
    - OPUS_SET_PACKET_LOSS_PERC
    - OPUS_SET_INBAND_FEC
    - OPUS_SET_SIGNAL
    - OPUS_SET_PHASE_INVERSION_DISABLED
    - opus_multistream_encoder_ctl
    - OPUS_SET_COMPLEXITY
    - opus_multistream_surround_encoder_create
    - OPUS_SET_FORCE_CHANNELS
    - opus_multistream_encode
    linkageType: ''
    returnType: int
    signature: int surround_analysis_uninit(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_encoder_create
      Src: /src/opus/tests/opus_encode_regressions.c:933,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:934,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/tests/opus_encode_regressions.c:934,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:935,1
    - Dst: OPUS_SET_PACKET_LOSS_PERC
      Src: /src/opus/tests/opus_encode_regressions.c:935,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:936,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/tests/opus_encode_regressions.c:936,1
    - Dst: opus_encode
      Src: /src/opus/tests/opus_encode_regressions.c:937,1
    - Dst: opus_test_assert
      Src: /src/opus/tests/opus_encode_regressions.c:938,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:940,1
    - Dst: OPUS_SET_SIGNAL
      Src: /src/opus/tests/opus_encode_regressions.c:940,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:941,1
    - Dst: OPUS_SET_PREDICTION_DISABLED
      Src: /src/opus/tests/opus_encode_regressions.c:941,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:942,1
    - Dst: OPUS_SET_BANDWIDTH
      Src: /src/opus/tests/opus_encode_regressions.c:942,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:943,1
    - Dst: OPUS_SET_INBAND_FEC
      Src: /src/opus/tests/opus_encode_regressions.c:943,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:944,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/tests/opus_encode_regressions.c:944,1
    - Dst: opus_encode
      Src: /src/opus/tests/opus_encode_regressions.c:945,1
    - Dst: opus_test_assert
      Src: /src/opus/tests/opus_encode_regressions.c:946,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:948,1
    - Dst: OPUS_SET_SIGNAL
      Src: /src/opus/tests/opus_encode_regressions.c:948,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:949,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/tests/opus_encode_regressions.c:949,1
    - Dst: opus_encode
      Src: /src/opus/tests/opus_encode_regressions.c:950,1
    - Dst: opus_test_assert
      Src: /src/opus/tests/opus_encode_regressions.c:951,1
    - Dst: opus_encoder_destroy
      Src: /src/opus/tests/opus_encode_regressions.c:953,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 955
      start: 894
    functionDepth: 1
    functionLinenumber: 894
    functionLinenumberEnd: 955
    functionName: ec_enc_shrink_assert
    functionSourceFile: /src/opus/tests/opus_encode_regressions.c
    functionUses: 0
    functionsReached:
    - OPUS_SET_PACKET_LOSS_PERC
    - opus_test_assert
    - OPUS_SET_BITRATE
    - opus_encoder_destroy
    - opus_encode
    - OPUS_SET_COMPLEXITY
    - OPUS_SET_BANDWIDTH
    - opus_encoder_ctl
    - OPUS_SET_INBAND_FEC
    - opus_encoder_create
    - OPUS_SET_SIGNAL
    - OPUS_SET_PREDICTION_DISABLED
    linkageType: ''
    returnType: int
    signature: int ec_enc_shrink_assert(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_encoder_create
      Src: /src/opus/tests/opus_encode_regressions.c:964,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:965,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/tests/opus_encode_regressions.c:965,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:966,1
    - Dst: OPUS_SET_SIGNAL
      Src: /src/opus/tests/opus_encode_regressions.c:966,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:967,1
    - Dst: OPUS_SET_BANDWIDTH
      Src: /src/opus/tests/opus_encode_regressions.c:967,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:968,1
    - Dst: OPUS_SET_PACKET_LOSS_PERC
      Src: /src/opus/tests/opus_encode_regressions.c:968,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:969,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/tests/opus_encode_regressions.c:969,1
    - Dst: opus_encode
      Src: /src/opus/tests/opus_encode_regressions.c:972,1
    - Dst: opus_test_assert
      Src: /src/opus/tests/opus_encode_regressions.c:973,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:975,1
    - Dst: OPUS_SET_SIGNAL
      Src: /src/opus/tests/opus_encode_regressions.c:975,1
    - Dst: opus_encode
      Src: /src/opus/tests/opus_encode_regressions.c:982,1
    - Dst: opus_test_assert
      Src: /src/opus/tests/opus_encode_regressions.c:983,1
    - Dst: opus_encoder_destroy
      Src: /src/opus/tests/opus_encode_regressions.c:985,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 987
      start: 957
    functionDepth: 1
    functionLinenumber: 957
    functionLinenumberEnd: 987
    functionName: ec_enc_shrink_assert2
    functionSourceFile: /src/opus/tests/opus_encode_regressions.c
    functionUses: 0
    functionsReached:
    - OPUS_SET_PACKET_LOSS_PERC
    - opus_test_assert
    - OPUS_SET_BITRATE
    - opus_encoder_destroy
    - opus_encode
    - OPUS_SET_COMPLEXITY
    - OPUS_SET_BANDWIDTH
    - opus_encoder_ctl
    - opus_encoder_create
    - OPUS_SET_SIGNAL
    linkageType: ''
    returnType: int
    signature: int ec_enc_shrink_assert2(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_encoder_create
      Src: /src/opus/tests/opus_encode_regressions.c:1007,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:1008,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/tests/opus_encode_regressions.c:1008,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:1009,1
    - Dst: OPUS_SET_MAX_BANDWIDTH
      Src: /src/opus/tests/opus_encode_regressions.c:1009,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:1010,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/tests/opus_encode_regressions.c:1010,1
    - Dst: opus_encode
      Src: /src/opus/tests/opus_encode_regressions.c:1011,1
    - Dst: opus_test_assert
      Src: /src/opus/tests/opus_encode_regressions.c:1012,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:1014,1
    - Dst: OPUS_SET_VBR
      Src: /src/opus/tests/opus_encode_regressions.c:1014,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:1015,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/tests/opus_encode_regressions.c:1015,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:1016,1
    - Dst: OPUS_SET_MAX_BANDWIDTH
      Src: /src/opus/tests/opus_encode_regressions.c:1016,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:1017,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/tests/opus_encode_regressions.c:1017,1
    - Dst: opus_encode
      Src: /src/opus/tests/opus_encode_regressions.c:1018,1
    - Dst: opus_test_assert
      Src: /src/opus/tests/opus_encode_regressions.c:1019,1
    - Dst: opus_encoder_destroy
      Src: /src/opus/tests/opus_encode_regressions.c:1021,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1023
      start: 989
    functionDepth: 1
    functionLinenumber: 989
    functionLinenumberEnd: 1023
    functionName: silk_gain_assert
    functionSourceFile: /src/opus/tests/opus_encode_regressions.c
    functionUses: 0
    functionsReached:
    - opus_test_assert
    - OPUS_SET_BITRATE
    - opus_encoder_destroy
    - opus_encode
    - OPUS_SET_COMPLEXITY
    - opus_encoder_ctl
    - opus_encoder_create
    - OPUS_SET_VBR
    - OPUS_SET_MAX_BANDWIDTH
    linkageType: ''
    returnType: int
    signature: int silk_gain_assert(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_encoder_create
      Src: /src/opus/tests/opus_encode_regressions.c:1034,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:1035,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/tests/opus_encode_regressions.c:1035,1
    - Dst: opus_encode_float
      Src: /src/opus/tests/opus_encode_regressions.c:1036,1
    - Dst: opus_test_assert
      Src: /src/opus/tests/opus_encode_regressions.c:1037,1
    - Dst: opus_encoder_destroy
      Src: /src/opus/tests/opus_encode_regressions.c:1038,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1040
      start: 1026
    functionDepth: 1
    functionLinenumber: 1026
    functionLinenumberEnd: 1040
    functionName: analysis_overflow
    functionSourceFile: /src/opus/tests/opus_encode_regressions.c
    functionUses: 0
    functionsReached:
    - opus_test_assert
    - opus_encoder_destroy
    - opus_encode_float
    - OPUS_SET_COMPLEXITY
    - opus_encoder_ctl
    - opus_encoder_create
    linkageType: ''
    returnType: int
    signature: int analysis_overflow(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_projection_ambisonics_encoder_create
      Src: /src/opus/tests/opus_encode_regressions.c:1081,1
    - Dst: opus_projection_encode_float
      Src: /src/opus/tests/opus_encode_regressions.c:1083,1
    - Dst: opus_test_assert
      Src: /src/opus/tests/opus_encode_regressions.c:1084,1
    - Dst: opus_projection_encoder_destroy
      Src: /src/opus/tests/opus_encode_regressions.c:1085,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1087
      start: 1042
    functionDepth: 1
    functionLinenumber: 1042
    functionLinenumberEnd: 1087
    functionName: projection_overflow2
    functionSourceFile: /src/opus/tests/opus_encode_regressions.c
    functionUses: 0
    functionsReached:
    - opus_projection_encode_float
    - opus_test_assert
    - opus_projection_encoder_destroy
    - opus_projection_ambisonics_encoder_create
    linkageType: ''
    returnType: int
    signature: int projection_overflow2(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_projection_ambisonics_encoder_create
      Src: /src/opus/tests/opus_encode_regressions.c:1100,1
    - Dst: opus_projection_encode_float
      Src: /src/opus/tests/opus_encode_regressions.c:1105,1
    - Dst: opus_test_assert
      Src: /src/opus/tests/opus_encode_regressions.c:1106,1
    - Dst: opus_projection_encode_float
      Src: /src/opus/tests/opus_encode_regressions.c:1110,1
    - Dst: opus_test_assert
      Src: /src/opus/tests/opus_encode_regressions.c:1111,1
    - Dst: opus_projection_encoder_destroy
      Src: /src/opus/tests/opus_encode_regressions.c:1113,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1115
      start: 1089
    functionDepth: 1
    functionLinenumber: 1089
    functionLinenumberEnd: 1115
    functionName: projection_overflow3
    functionSourceFile: /src/opus/tests/opus_encode_regressions.c
    functionUses: 0
    functionsReached:
    - opus_projection_encode_float
    - opus_test_assert
    - opus_projection_encoder_destroy
    - opus_projection_ambisonics_encoder_create
    linkageType: ''
    returnType: int
    signature: int projection_overflow3(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_projection_ambisonics_encoder_create
      Src: /src/opus/tests/opus_encode_regressions.c:1150,1
    - Dst: opus_test_assert
      Src: /src/opus/tests/opus_encode_regressions.c:1153,1
    - Dst: opus_projection_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:1156,1
    - Dst: OPUS_SET_QEXT
      Src: /src/opus/tests/opus_encode_regressions.c:1156,1
    - Dst: opus_projection_encode
      Src: /src/opus/tests/opus_encode_regressions.c:1157,1
    - Dst: opus_test_assert
      Src: /src/opus/tests/opus_encode_regressions.c:1158,1
    - Dst: opus_projection_encoder_destroy
      Src: /src/opus/tests/opus_encode_regressions.c:1159,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1161
      start: 1118
    functionDepth: 1
    functionLinenumber: 1118
    functionLinenumberEnd: 1161
    functionName: projection_overflow
    functionSourceFile: /src/opus/tests/opus_encode_regressions.c
    functionUses: 0
    functionsReached:
    - opus_test_assert
    - opus_projection_encoder_destroy
    - opus_projection_ambisonics_encoder_create
    - opus_projection_encode
    - OPUS_SET_QEXT
    - opus_projection_encoder_ctl
    linkageType: ''
    returnType: int
    signature: int projection_overflow(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_projection_ambisonics_encoder_create
      Src: /src/opus/tests/opus_encode_regressions.c:1193,1
    - Dst: opus_projection_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:1195,1
    - Dst: OPUS_SET_QEXT
      Src: /src/opus/tests/opus_encode_regressions.c:1195,1
    - Dst: opus_projection_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:1196,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/tests/opus_encode_regressions.c:1196,1
    - Dst: opus_projection_encode
      Src: /src/opus/tests/opus_encode_regressions.c:1197,1
    - Dst: opus_test_assert
      Src: /src/opus/tests/opus_encode_regressions.c:1198,1
    - Dst: opus_projection_encoder_destroy
      Src: /src/opus/tests/opus_encode_regressions.c:1200,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1202
      start: 1165
    functionDepth: 1
    functionLinenumber: 1165
    functionLinenumberEnd: 1202
    functionName: projection_overflow4
    functionSourceFile: /src/opus/tests/opus_encode_regressions.c
    functionUses: 0
    functionsReached:
    - opus_test_assert
    - OPUS_SET_BITRATE
    - opus_projection_encoder_destroy
    - opus_projection_ambisonics_encoder_create
    - opus_projection_encode
    - OPUS_SET_QEXT
    - opus_projection_encoder_ctl
    linkageType: ''
    returnType: int
    signature: int projection_overflow4(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_encoder_create
      Src: /src/opus/tests/opus_encode_regressions.c:1213,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:1214,1
    - Dst: OPUS_SET_VBR
      Src: /src/opus/tests/opus_encode_regressions.c:1214,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:1215,1
    - Dst: OPUS_SET_QEXT
      Src: /src/opus/tests/opus_encode_regressions.c:1215,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:1216,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/tests/opus_encode_regressions.c:1216,1
    - Dst: opus_encode
      Src: /src/opus/tests/opus_encode_regressions.c:1217,1
    - Dst: opus_test_assert
      Src: /src/opus/tests/opus_encode_regressions.c:1219,1
    - Dst: opus_encoder_destroy
      Src: /src/opus/tests/opus_encode_regressions.c:1220,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1222
      start: 1204
    functionDepth: 1
    functionLinenumber: 1204
    functionLinenumberEnd: 1222
    functionName: qext_repacketize_fail
    functionSourceFile: /src/opus/tests/opus_encode_regressions.c
    functionUses: 0
    functionsReached:
    - opus_test_assert
    - OPUS_SET_BITRATE
    - opus_encoder_destroy
    - opus_encode
    - opus_encoder_ctl
    - OPUS_SET_QEXT
    - opus_encoder_create
    - OPUS_SET_VBR
    linkageType: ''
    returnType: int
    signature: int qext_repacketize_fail(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_encoder_create
      Src: /src/opus/tests/opus_encode_regressions.c:1235,1
    - Dst: opus_encode
      Src: /src/opus/tests/opus_encode_regressions.c:1236,1
    - Dst: opus_test_assert
      Src: /src/opus/tests/opus_encode_regressions.c:1237,1
    - Dst: opus_encoder_destroy
      Src: /src/opus/tests/opus_encode_regressions.c:1238,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1240
      start: 1224
    functionDepth: 1
    functionLinenumber: 1224
    functionLinenumberEnd: 1240
    functionName: qext_stereo_overflow
    functionSourceFile: /src/opus/tests/opus_encode_regressions.c
    functionUses: 0
    functionsReached:
    - opus_test_assert
    - opus_encode
    - opus_encoder_create
    - opus_encoder_destroy
    linkageType: ''
    returnType: int
    signature: int qext_stereo_overflow(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_multistream_surround_encoder_create
      Src: /src/opus/tests/opus_encode_regressions.c:1261,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:1263,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/tests/opus_encode_regressions.c:1263,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:1264,1
    - Dst: OPUS_SET_PACKET_LOSS_PERC
      Src: /src/opus/tests/opus_encode_regressions.c:1264,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:1265,1
    - Dst: OPUS_SET_QEXT
      Src: /src/opus/tests/opus_encode_regressions.c:1265,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:1266,1
    - Dst: OPUS_MULTISTREAM_GET_ENCODER_STATE
      Src: /src/opus/tests/opus_encode_regressions.c:1266,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:1267,1
    - Dst: OPUS_SET_DRED_DURATION
      Src: /src/opus/tests/opus_encode_regressions.c:1267,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_encode_regressions.c:1268,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/tests/opus_encode_regressions.c:1268,1
    - Dst: opus_multistream_encode
      Src: /src/opus/tests/opus_encode_regressions.c:1269,1
    - Dst: opus_test_assert
      Src: /src/opus/tests/opus_encode_regressions.c:1271,1
    - Dst: opus_multistream_encoder_destroy
      Src: /src/opus/tests/opus_encode_regressions.c:1272,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1274
      start: 1244
    functionDepth: 1
    functionLinenumber: 1244
    functionLinenumberEnd: 1274
    functionName: qext_dred_combination
    functionSourceFile: /src/opus/tests/opus_encode_regressions.c
    functionUses: 0
    functionsReached:
    - OPUS_MULTISTREAM_GET_ENCODER_STATE
    - OPUS_SET_PACKET_LOSS_PERC
    - opus_test_assert
    - OPUS_SET_BITRATE
    - opus_multistream_encoder_destroy
    - opus_multistream_encoder_ctl
    - OPUS_SET_COMPLEXITY
    - opus_multistream_surround_encoder_create
    - OPUS_SET_QEXT
    - opus_encoder_ctl
    - OPUS_SET_DRED_DURATION
    - opus_multistream_encode
    linkageType: ''
    returnType: int
    signature: int qext_dred_combination(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/tests/opus_encode_regressions.c:1281,1
    - Dst: celt_ec_internal_error
      Src: /src/opus/tests/opus_encode_regressions.c:1282,1
    - Dst: mscbr_encode_fail10
      Src: /src/opus/tests/opus_encode_regressions.c:1283,1
    - Dst: mscbr_encode_fail
      Src: /src/opus/tests/opus_encode_regressions.c:1284,1
    - Dst: surround_analysis_uninit
      Src: /src/opus/tests/opus_encode_regressions.c:1285,1
    - Dst: ec_enc_shrink_assert
      Src: /src/opus/tests/opus_encode_regressions.c:1286,1
    - Dst: ec_enc_shrink_assert2
      Src: /src/opus/tests/opus_encode_regressions.c:1287,1
    - Dst: silk_gain_assert
      Src: /src/opus/tests/opus_encode_regressions.c:1288,1
    - Dst: analysis_overflow
      Src: /src/opus/tests/opus_encode_regressions.c:1290,1
    - Dst: projection_overflow2
      Src: /src/opus/tests/opus_encode_regressions.c:1291,1
    - Dst: projection_overflow3
      Src: /src/opus/tests/opus_encode_regressions.c:1292,1
    - Dst: projection_overflow
      Src: /src/opus/tests/opus_encode_regressions.c:1294,1
    - Dst: projection_overflow4
      Src: /src/opus/tests/opus_encode_regressions.c:1296,1
    - Dst: qext_repacketize_fail
      Src: /src/opus/tests/opus_encode_regressions.c:1297,1
    - Dst: qext_stereo_overflow
      Src: /src/opus/tests/opus_encode_regressions.c:1298,1
    - Dst: qext_dred_combination
      Src: /src/opus/tests/opus_encode_regressions.c:1300,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1303
      start: 1279
    functionDepth: 2
    functionLinenumber: 1279
    functionLinenumberEnd: 1303
    functionName: regression_test
    functionSourceFile: /src/opus/tests/opus_encode_regressions.c
    functionUses: 0
    functionsReached:
    - celt_ec_internal_error
    - ec_enc_shrink_assert
    - projection_overflow
    - qext_repacketize_fail
    - mscbr_encode_fail10
    - projection_overflow2
    - surround_analysis_uninit
    - projection_overflow4
    - silk_gain_assert
    - qext_stereo_overflow
    - analysis_overflow
    - fprintf
    - qext_dred_combination
    - ec_enc_shrink_assert2
    - mscbr_encode_fail
    - projection_overflow3
    linkageType: ''
    returnType: void
    signature: void regression_test(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 30
    functionName: RAND_SAMPLE
    functionSourceFile: /src/opus/tests/test_opus_custom.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RAND_SAMPLE(a)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: floor
      Src: /src/opus/tests/test_opus_custom.c:63,1
    - Dst: malloc
      Src: /src/opus/tests/test_opus_custom.c:68,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_custom.c:70,1
    - Dst: log
      Src: /src/opus/tests/test_opus_custom.c:81,1
    - Dst: sin
      Src: /src/opus/tests/test_opus_custom.c:84,1
    - Dst: exp
      Src: /src/opus/tests/test_opus_custom.c:84,1
    - Dst: floor
      Src: /src/opus/tests/test_opus_custom.c:97,1
    - Dst: floor
      Src: /src/opus/tests/test_opus_custom.c:105,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 34
    argCount: 7
    argNames:
    - amplitude
    - bit_depth
    - sample_rate
    - channels
    - use_float
    - duration_seconds
    - num_samples_out
    argTypes:
    - double
    - int
    - int
    - int
    - int
    - double
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 115
    functionName: generate_sine_sweep
    functionSourceFile: /src/opus/tests/test_opus_custom.c
    functionUses: 0
    functionsReached:
    - floor
    - malloc
    - exp
    - sin
    - fprintf
    - log
    linkageType: ''
    returnType: void
    signature: void * generate_sine_sweep(double amplitude, int bit_depth, int sample_rate,
      int channels, int use_float, double duration_seconds, int* num_samples_out)
  - BBCount: 37
    BranchProfiles: []
    Callsites:
    - Dst: generate_sine_sweep
      Src: /src/opus/tests/test_opus_custom.c:142,1
    - Dst: malloc
      Src: /src/opus/tests/test_opus_custom.c:152,1
    - Dst: malloc
      Src: /src/opus/tests/test_opus_custom.c:155,1
    - Dst: opus_custom_decoder_get_size
      Src: /src/opus/tests/test_opus_custom.c:166,1
    - Dst: malloc
      Src: /src/opus/tests/test_opus_custom.c:168,1
    - Dst: memcpy
      Src: /src/opus/tests/test_opus_custom.c:169,1
    - Dst: opus_decoder_get_size
      Src: /src/opus/tests/test_opus_custom.c:172,1
    - Dst: malloc
      Src: /src/opus/tests/test_opus_custom.c:174,1
    - Dst: memcpy
      Src: /src/opus/tests/test_opus_custom.c:175,1
    - Dst: opus_custom_encode_float
      Src: /src/opus/tests/test_opus_custom.c:184,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_custom.c:190,1
    - Dst: opus_strerror
      Src: /src/opus/tests/test_opus_custom.c:190,1
    - Dst: opus_encode_float
      Src: /src/opus/tests/test_opus_custom.c:196,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_custom.c:202,1
    - Dst: opus_strerror
      Src: /src/opus/tests/test_opus_custom.c:202,1
    - Dst: opus_custom_encode24
      Src: /src/opus/tests/test_opus_custom.c:213,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_custom.c:219,1
    - Dst: opus_strerror
      Src: /src/opus/tests/test_opus_custom.c:219,1
    - Dst: opus_custom_encode
      Src: /src/opus/tests/test_opus_custom.c:226,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_custom.c:232,1
    - Dst: opus_strerror
      Src: /src/opus/tests/test_opus_custom.c:232,1
    - Dst: opus_encode24
      Src: /src/opus/tests/test_opus_custom.c:241,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_custom.c:247,1
    - Dst: opus_strerror
      Src: /src/opus/tests/test_opus_custom.c:247,1
    - Dst: opus_encode
      Src: /src/opus/tests/test_opus_custom.c:254,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_custom.c:260,1
    - Dst: opus_strerror
      Src: /src/opus/tests/test_opus_custom.c:260,1
    - Dst: log
      Src: /src/opus/tests/test_opus_custom.c:273,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_custom.c:273,1
    - Dst: memcpy
      Src: /src/opus/tests/test_opus_custom.c:275,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_custom.c:279,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_custom.c:279,1
    - Dst: log
      Src: /src/opus/tests/test_opus_custom.c:282,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_custom.c:282,1
    - Dst: IMIN
      Src: /src/opus/tests/test_opus_custom.c:283,1
    - Dst: log
      Src: /src/opus/tests/test_opus_custom.c:287,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_custom.c:287,1
    - Dst: opus_custom_decode
      Src: /src/opus/tests/test_opus_custom.c:292,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_custom.c:298,1
    - Dst: opus_strerror
      Src: /src/opus/tests/test_opus_custom.c:298,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_custom.c:299,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_custom.c:302,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_custom.c:309,1
    - Dst: opus_strerror
      Src: /src/opus/tests/test_opus_custom.c:309,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_custom.c:310,1
    - Dst: opus_custom_decode_float
      Src: /src/opus/tests/test_opus_custom.c:318,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_custom.c:324,1
    - Dst: opus_decode_float
      Src: /src/opus/tests/test_opus_custom.c:331,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_custom.c:338,1
    - Dst: opus_custom_decode24
      Src: /src/opus/tests/test_opus_custom.c:349,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_custom.c:356,1
    - Dst: opus_custom_decode
      Src: /src/opus/tests/test_opus_custom.c:363,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_custom.c:370,1
    - Dst: opus_decode24
      Src: /src/opus/tests/test_opus_custom.c:379,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_custom.c:387,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_custom.c:394,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_custom.c:401,1
    - Dst: defined
      Src: /src/opus/tests/test_opus_custom.c:416,1
    - Dst: defined
      Src: /src/opus/tests/test_opus_custom.c:416,1
    - Dst: sqrt
      Src: /src/opus/tests/test_opus_custom.c:426,1
    - Dst: sqrt
      Src: /src/opus/tests/test_opus_custom.c:434,1
    - Dst: sqrt
      Src: /src/opus/tests/test_opus_custom.c:443,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_custom.c:448,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_custom.c:449,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_custom.c:453,1
    - Dst: free
      Src: /src/opus/tests/test_opus_custom.c:458,1
    - Dst: free
      Src: /src/opus/tests/test_opus_custom.c:459,1
    - Dst: free
      Src: /src/opus/tests/test_opus_custom.c:461,1
    - Dst: free
      Src: /src/opus/tests/test_opus_custom.c:462,1
    CyclomaticComplexity: 66
    EdgeCount: 66
    ICount: 187
    argCount: 1
    argNames:
    - params
    argTypes:
    - TestCustomParams
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 464
      start: 117
    functionDepth: 1
    functionLinenumber: 117
    functionLinenumberEnd: 464
    functionName: test_encode
    functionSourceFile: /src/opus/tests/test_opus_custom.c
    functionUses: 0
    functionsReached:
    - opus_custom_encode
    - defined
    - opus_custom_encode_float
    - malloc
    - fprintf
    - fast_rand
    - log
    - opus_decode24
    - opus_encode24
    - opus_strerror
    - opus_custom_decode24
    - opus_decode
    - opus_decode_float
    - opus_custom_decode
    - opus_custom_decoder_get_size
    - opus_decoder_get_size
    - opus_custom_encode24
    - memcpy
    - opus_encode
    - opus_encode_float
    - sqrt
    - IMIN
    - test_failed
    - opus_custom_decode_float
    - generate_sine_sweep
    - free
    linkageType: ''
    returnType: int
    signature: int test_encode(TestCustomParams params)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - num_encoders
    - num_setting_changes
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 484
      start: 466
    functionDepth: 0
    functionLinenumber: 466
    functionLinenumberEnd: 484
    functionName: test_opus_custom
    functionSourceFile: /src/opus/tests/test_opus_custom.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void test_opus_custom(const int num_encoders, const int num_setting_changes)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: getenv
      Src: /src/opus/tests/test_opus_custom.c:685,1
    - Dst: strtol
      Src: /src/opus/tests/test_opus_custom.c:687,1
    - Dst: atoi
      Src: /src/opus/tests/test_opus_custom.c:692,1
    - Dst: time
      Src: /src/opus/tests/test_opus_custom.c:695,1
    - Dst: getpid
      Src: /src/opus/tests/test_opus_custom.c:695,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_custom.c:698,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_custom.c:698,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_custom.c:699,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_custom.c:701,1
    - Dst: test_opus_custom
      Src: /src/opus/tests/test_opus_custom.c:706,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_custom.c:708,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 2
    argNames:
    - _argc
    - _argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 711
      start: 676
    functionDepth: 1
    functionLinenumber: 676
    functionLinenumberEnd: 711
    functionName: main
    functionSourceFile: /src/opus/tests/test_opus_custom.c
    functionUses: 0
    functionsReached:
    - fprintf
    - fast_rand
    - getenv
    - atoi
    - test_opus_custom
    - getpid
    - strtol
    - time
    linkageType: ''
    returnType: int
    signature: int main(int _argc, char **_argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: deb2_impl
      Src: /src/opus/tests/test_opus_common.h:35,1
    - Dst: deb2_impl
      Src: /src/opus/tests/test_opus_common.h:38,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 5
    argNames:
    - _t
    - _p
    - _k
    - _x
    - _y
    argTypes:
    - unsigned char*
    - unsigned char**
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 41
    functionName: deb2_impl
    functionSourceFile: /src/opus/tests/test_opus_common.h
    functionUses: 1
    functionsReached:
    - deb2_impl
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE deb2_impl(unsigned char *_t,unsigned char **_p,int _k,int
      _x,int _y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/opus/tests/test_opus_common.h:48,1
    - Dst: memset
      Src: /src/opus/tests/test_opus_common.h:49,1
    - Dst: deb2_impl
      Src: /src/opus/tests/test_opus_common.h:51,1
    - Dst: free
      Src: /src/opus/tests/test_opus_common.h:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - _k
    - _res
    argTypes:
    - int
    - unsigned char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 44
    functionDepth: 2
    functionLinenumber: 44
    functionLinenumberEnd: 53
    functionName: debruijn2
    functionSourceFile: /src/opus/tests/test_opus_common.h
    functionUses: 0
    functionsReached:
    - malloc
    - deb2_impl
    - free
    - memset
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE debruijn2(int _k, unsigned char *_res)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 62
    functionName: opus_uint32::fast_rand
    functionSourceFile: /src/opus/tests/test_opus_common.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE opus_uint32 fast_rand(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_common.h:72,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_common.h:73,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_common.h:74,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_common.h:75,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_common.h:76,1
    - Dst: opus_get_version_string
      Src: /src/opus/tests/test_opus_common.h:76,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_common.h:77,1
    - Dst: _set_abort_behavior
      Src: /src/opus/tests/test_opus_common.h:79,1
    - Dst: abort
      Src: /src/opus/tests/test_opus_common.h:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 2
    argNames:
    - file
    - line
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 82
    functionName: _test_failed
    functionSourceFile: /src/opus/tests/test_opus_common.h
    functionUses: 0
    functionsReached:
    - _set_abort_behavior
    - opus_get_version_string
    - abort
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE _test_failed(const char *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 84
    functionName: test_failed
    functionSourceFile: /src/opus/tests/test_opus_common.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: test_failed()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - cond
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 85
    functionName: opus_test_assert
    functionSourceFile: /src/opus/tests/test_opus_common.h
    functionUses: 15
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: opus_test_assert(cond)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - cond
    - ','
    - msg
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 86
    functionName: expect_true
    functionSourceFile: /src/opus/tests/test_opus_common.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: expect_true(cond, msg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - y
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 60
    functionName: VG_UNDEF
    functionSourceFile: /src/opus/tests/test_opus_api.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VG_UNDEF(x,y)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - y
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 61
    functionName: VG_CHECK
    functionSourceFile: /src/opus/tests/test_opus_api.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VG_CHECK(x,y)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - size
    - caller
    argTypes:
    - size_t
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 78
    functionName: malloc_hook
    functionSourceFile: /src/opus/tests/test_opus_api.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void *malloc_hook(__attribute__((unused)) size_t size,\n                  __attribute__((unused))
      const void *caller)"
  - BBCount: 63
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:101,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:102,1
    - Dst: opus_decoder_get_size
      Src: /src/opus/tests/test_opus_api.c:105,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:106,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:107,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:130,1
    - Dst: opus_decoder_create
      Src: /src/opus/tests/test_opus_api.c:131,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:132,1
    - Dst: opus_decoder_create
      Src: /src/opus/tests/test_opus_api.c:134,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:135,1
    - Dst: malloc
      Src: /src/opus/tests/test_opus_api.c:137,1
    - Dst: opus_decoder_get_size
      Src: /src/opus/tests/test_opus_api.c:137,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:138,1
    - Dst: opus_decoder_init
      Src: /src/opus/tests/test_opus_api.c:139,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:140,1
    - Dst: free
      Src: /src/opus/tests/test_opus_api.c:142,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:146,1
    - Dst: opus_decoder_create
      Src: /src/opus/tests/test_opus_api.c:147,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:148,1
    - Dst: VG_CHECK
      Src: /src/opus/tests/test_opus_api.c:149,1
    - Dst: opus_decoder_get_size
      Src: /src/opus/tests/test_opus_api.c:149,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:152,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:153,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:155,1
    - Dst: OPUS_GET_FINAL_RANGE
      Src: /src/opus/tests/test_opus_api.c:155,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:156,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:157,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:158,1
    - Dst: OPUS_GET_FINAL_RANGE
      Src: /src/opus/tests/test_opus_api.c:158,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:159,1
    - Dst: VG_CHECK
      Src: /src/opus/tests/test_opus_api.c:160,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:161,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:164,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:165,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:166,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:169,1
    - Dst: OPUS_GET_BANDWIDTH
      Src: /src/opus/tests/test_opus_api.c:169,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:170,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:171,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:172,1
    - Dst: OPUS_GET_BANDWIDTH
      Src: /src/opus/tests/test_opus_api.c:172,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:173,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:174,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:177,1
    - Dst: OPUS_GET_SAMPLE_RATE
      Src: /src/opus/tests/test_opus_api.c:177,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:178,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:179,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:180,1
    - Dst: OPUS_GET_SAMPLE_RATE
      Src: /src/opus/tests/test_opus_api.c:180,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:181,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:182,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:186,1
    - Dst: OPUS_GET_PITCH
      Src: /src/opus/tests/test_opus_api.c:186,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:187,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:189,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:190,1
    - Dst: OPUS_GET_PITCH
      Src: /src/opus/tests/test_opus_api.c:190,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:191,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:193,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_api.c:195,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:195,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:197,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:198,1
    - Dst: OPUS_GET_PITCH
      Src: /src/opus/tests/test_opus_api.c:198,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:199,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_api.c:202,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:202,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:204,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:205,1
    - Dst: OPUS_GET_PITCH
      Src: /src/opus/tests/test_opus_api.c:205,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:206,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:208,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:210,1
    - Dst: OPUS_GET_LAST_PACKET_DURATION
      Src: /src/opus/tests/test_opus_api.c:210,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:211,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:212,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:213,1
    - Dst: OPUS_GET_LAST_PACKET_DURATION
      Src: /src/opus/tests/test_opus_api.c:213,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:214,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:216,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:218,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:219,1
    - Dst: OPUS_GET_GAIN
      Src: /src/opus/tests/test_opus_api.c:219,1
    - Dst: VG_CHECK
      Src: /src/opus/tests/test_opus_api.c:220,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:221,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:223,1
    - Dst: OPUS_GET_GAIN
      Src: /src/opus/tests/test_opus_api.c:223,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:224,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:226,1
    - Dst: OPUS_SET_GAIN
      Src: /src/opus/tests/test_opus_api.c:226,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:227,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:229,1
    - Dst: OPUS_SET_GAIN
      Src: /src/opus/tests/test_opus_api.c:229,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:230,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:232,1
    - Dst: OPUS_SET_GAIN
      Src: /src/opus/tests/test_opus_api.c:232,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:233,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:235,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:236,1
    - Dst: OPUS_GET_GAIN
      Src: /src/opus/tests/test_opus_api.c:236,1
    - Dst: VG_CHECK
      Src: /src/opus/tests/test_opus_api.c:237,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:238,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:240,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:241,1
    - Dst: malloc
      Src: /src/opus/tests/test_opus_api.c:244,1
    - Dst: opus_decoder_get_size
      Src: /src/opus/tests/test_opus_api.c:244,1
    - Dst: memcpy
      Src: /src/opus/tests/test_opus_api.c:245,1
    - Dst: opus_decoder_get_size
      Src: /src/opus/tests/test_opus_api.c:245,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:246,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:246,1
    - Dst: memcmp
      Src: /src/opus/tests/test_opus_api.c:247,1
    - Dst: opus_decoder_get_size
      Src: /src/opus/tests/test_opus_api.c:247,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:247,1
    - Dst: free
      Src: /src/opus/tests/test_opus_api.c:248,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:249,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:252,1
    - Dst: opus_decoder_get_nb_samples
      Src: /src/opus/tests/test_opus_api.c:254,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:254,1
    - Dst: opus_packet_get_nb_samples
      Src: /src/opus/tests/test_opus_api.c:255,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:255,1
    - Dst: opus_packet_get_nb_samples
      Src: /src/opus/tests/test_opus_api.c:256,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:256,1
    - Dst: opus_packet_get_nb_samples
      Src: /src/opus/tests/test_opus_api.c:257,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:257,1
    - Dst: opus_packet_get_nb_samples
      Src: /src/opus/tests/test_opus_api.c:258,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:258,1
    - Dst: opus_packet_get_nb_samples
      Src: /src/opus/tests/test_opus_api.c:260,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:260,1
    - Dst: opus_packet_get_nb_samples
      Src: /src/opus/tests/test_opus_api.c:263,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:263,1
    - Dst: opus_packet_get_nb_samples
      Src: /src/opus/tests/test_opus_api.c:264,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:264,1
    - Dst: opus_decoder_get_nb_samples
      Src: /src/opus/tests/test_opus_api.c:265,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:265,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:266,1
    - Dst: opus_packet_get_nb_frames
      Src: /src/opus/tests/test_opus_api.c:269,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:269,1
    - Dst: opus_packet_get_nb_frames
      Src: /src/opus/tests/test_opus_api.c:273,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:273,1
    - Dst: opus_packet_get_nb_frames
      Src: /src/opus/tests/test_opus_api.c:277,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:277,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:281,1
    - Dst: opus_packet_get_bandwidth
      Src: /src/opus/tests/test_opus_api.c:288,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:288,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:291,1
    - Dst: opus_packet_get_samples_per_frame
      Src: /src/opus/tests/test_opus_api.c:299,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:299,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:303,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:308,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_api.c:309,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:309,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_api.c:313,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:313,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_api.c:315,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:315,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_api.c:317,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:317,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_api.c:319,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:319,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:321,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:323,1
    - Dst: opus_decode_float
      Src: /src/opus/tests/test_opus_api.c:324,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:324,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:326,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:331,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:331,1
    - Dst: opus_decoder_init
      Src: /src/opus/tests/test_opus_api.c:332,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:332,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_api.c:333,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:333,1
    - Dst: opus_decode_float
      Src: /src/opus/tests/test_opus_api.c:334,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:334,1
    - Dst: opus_decoder_get_nb_samples
      Src: /src/opus/tests/test_opus_api.c:335,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:335,1
    - Dst: opus_packet_get_nb_frames
      Src: /src/opus/tests/test_opus_api.c:336,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:336,1
    - Dst: opus_packet_get_bandwidth
      Src: /src/opus/tests/test_opus_api.c:337,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:337,1
    - Dst: opus_packet_get_samples_per_frame
      Src: /src/opus/tests/test_opus_api.c:338,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:338,1
    - Dst: opus_decoder_destroy
      Src: /src/opus/tests/test_opus_api.c:340,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:342,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:343,1
    CyclomaticComplexity: 98
    EdgeCount: 98
    ICount: 276
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 345
    functionName: test_dec_api
    functionSourceFile: /src/opus/tests/test_opus_api.c
    functionUses: 0
    functionsReached:
    - opus_decoder_ctl
    - malloc
    - OPUS_GET_FINAL_RANGE
    - OPUS_GET_GAIN
    - opus_decoder_init
    - fprintf
    - opus_decoder_get_nb_samples
    - opus_packet_get_nb_frames
    - opus_decode
    - opus_decode_float
    - opus_decoder_destroy
    - opus_decoder_create
    - opus_decoder_get_size
    - memcpy
    - opus_packet_get_nb_samples
    - OPUS_GET_LAST_PACKET_DURATION
    - opus_packet_get_samples_per_frame
    - VG_CHECK
    - opus_packet_get_bandwidth
    - OPUS_SET_GAIN
    - OPUS_GET_PITCH
    - test_failed
    - memcmp
    - OPUS_GET_SAMPLE_RATE
    - VG_UNDEF
    - OPUS_GET_BANDWIDTH
    - free
    linkageType: ''
    returnType: opus_int32
    signature: opus_int32 test_dec_api(void)
  - BBCount: 74
    BranchProfiles: []
    Callsites:
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:363,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:367,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:368,1
    - Dst: opus_multistream_decoder_get_size
      Src: /src/opus/tests/test_opus_api.c:373,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:374,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:375,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:399,1
    - Dst: opus_multistream_decoder_create
      Src: /src/opus/tests/test_opus_api.c:400,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:401,1
    - Dst: opus_multistream_decoder_create
      Src: /src/opus/tests/test_opus_api.c:403,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:404,1
    - Dst: malloc
      Src: /src/opus/tests/test_opus_api.c:406,1
    - Dst: opus_multistream_decoder_get_size
      Src: /src/opus/tests/test_opus_api.c:406,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:407,1
    - Dst: opus_multistream_decoder_init
      Src: /src/opus/tests/test_opus_api.c:408,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:409,1
    - Dst: free
      Src: /src/opus/tests/test_opus_api.c:411,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:422,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:424,1
    - Dst: opus_multistream_decoder_create
      Src: /src/opus/tests/test_opus_api.c:425,1
    - Dst: VG_CHECK
      Src: /src/opus/tests/test_opus_api.c:426,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:427,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:430,1
    - Dst: opus_multistream_decoder_create
      Src: /src/opus/tests/test_opus_api.c:432,1
    - Dst: VG_CHECK
      Src: /src/opus/tests/test_opus_api.c:433,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:434,1
    - Dst: opus_multistream_decoder_destroy
      Src: /src/opus/tests/test_opus_api.c:436,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:439,1
    - Dst: opus_multistream_decoder_create
      Src: /src/opus/tests/test_opus_api.c:440,1
    - Dst: VG_CHECK
      Src: /src/opus/tests/test_opus_api.c:441,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:442,1
    - Dst: opus_multistream_decoder_init
      Src: /src/opus/tests/test_opus_api.c:445,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:446,1
    - Dst: opus_multistream_decoder_init
      Src: /src/opus/tests/test_opus_api.c:449,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:450,1
    - Dst: opus_multistream_decoder_destroy
      Src: /src/opus/tests/test_opus_api.c:453,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:456,1
    - Dst: opus_multistream_decoder_create
      Src: /src/opus/tests/test_opus_api.c:457,1
    - Dst: VG_CHECK
      Src: /src/opus/tests/test_opus_api.c:458,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:459,1
    - Dst: opus_multistream_decoder_destroy
      Src: /src/opus/tests/test_opus_api.c:461,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:464,1
    - Dst: opus_multistream_decoder_create
      Src: /src/opus/tests/test_opus_api.c:465,1
    - Dst: VG_CHECK
      Src: /src/opus/tests/test_opus_api.c:466,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:467,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:470,1
    - Dst: opus_multistream_decoder_create
      Src: /src/opus/tests/test_opus_api.c:471,1
    - Dst: VG_CHECK
      Src: /src/opus/tests/test_opus_api.c:472,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:473,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:476,1
    - Dst: opus_multistream_decoder_create
      Src: /src/opus/tests/test_opus_api.c:477,1
    - Dst: VG_CHECK
      Src: /src/opus/tests/test_opus_api.c:478,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:479,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:482,1
    - Dst: opus_multistream_decoder_create
      Src: /src/opus/tests/test_opus_api.c:483,1
    - Dst: VG_CHECK
      Src: /src/opus/tests/test_opus_api.c:484,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:485,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:488,1
    - Dst: opus_multistream_decoder_create
      Src: /src/opus/tests/test_opus_api.c:489,1
    - Dst: VG_CHECK
      Src: /src/opus/tests/test_opus_api.c:490,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:491,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:494,1
    - Dst: opus_multistream_decoder_create
      Src: /src/opus/tests/test_opus_api.c:495,1
    - Dst: VG_CHECK
      Src: /src/opus/tests/test_opus_api.c:496,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:497,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:500,1
    - Dst: opus_multistream_decoder_create
      Src: /src/opus/tests/test_opus_api.c:501,1
    - Dst: VG_CHECK
      Src: /src/opus/tests/test_opus_api.c:502,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:503,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:506,1
    - Dst: opus_multistream_decoder_create
      Src: /src/opus/tests/test_opus_api.c:510,1
    - Dst: VG_CHECK
      Src: /src/opus/tests/test_opus_api.c:511,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:512,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:515,1
    - Dst: opus_multistream_decoder_create
      Src: /src/opus/tests/test_opus_api.c:519,1
    - Dst: VG_CHECK
      Src: /src/opus/tests/test_opus_api.c:520,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:521,1
    - Dst: opus_multistream_decoder_destroy
      Src: /src/opus/tests/test_opus_api.c:523,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:526,1
    - Dst: opus_multistream_decoder_create
      Src: /src/opus/tests/test_opus_api.c:532,1
    - Dst: VG_CHECK
      Src: /src/opus/tests/test_opus_api.c:533,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:534,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:538,1
    - Dst: opus_multistream_decoder_create
      Src: /src/opus/tests/test_opus_api.c:543,1
    - Dst: VG_CHECK
      Src: /src/opus/tests/test_opus_api.c:544,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:545,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:548,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:549,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:551,1
    - Dst: opus_multistream_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:552,1
    - Dst: OPUS_GET_FINAL_RANGE
      Src: /src/opus/tests/test_opus_api.c:552,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:553,1
    - Dst: VG_CHECK
      Src: /src/opus/tests/test_opus_api.c:554,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:555,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:559,1
    - Dst: opus_multistream_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:560,1
    - Dst: OPUS_MULTISTREAM_GET_DECODER_STATE
      Src: /src/opus/tests/test_opus_api.c:560,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:561,1
    - Dst: opus_multistream_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:563,1
    - Dst: OPUS_MULTISTREAM_GET_DECODER_STATE
      Src: /src/opus/tests/test_opus_api.c:563,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:564,1
    - Dst: VG_CHECK
      Src: /src/opus/tests/test_opus_api.c:565,1
    - Dst: opus_decoder_get_size
      Src: /src/opus/tests/test_opus_api.c:565,1
    - Dst: opus_multistream_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:567,1
    - Dst: OPUS_MULTISTREAM_GET_DECODER_STATE
      Src: /src/opus/tests/test_opus_api.c:567,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:568,1
    - Dst: opus_multistream_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:570,1
    - Dst: OPUS_MULTISTREAM_GET_DECODER_STATE
      Src: /src/opus/tests/test_opus_api.c:570,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:571,1
    - Dst: VG_CHECK
      Src: /src/opus/tests/test_opus_api.c:572,1
    - Dst: opus_decoder_get_size
      Src: /src/opus/tests/test_opus_api.c:572,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:573,1
    - Dst: opus_multistream_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:579,1
    - Dst: OPUS_MULTISTREAM_GET_DECODER_STATE
      Src: /src/opus/tests/test_opus_api.c:579,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:580,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:581,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:582,1
    - Dst: OPUS_GET_GAIN
      Src: /src/opus/tests/test_opus_api.c:582,1
    - Dst: VG_CHECK
      Src: /src/opus/tests/test_opus_api.c:583,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:584,1
    - Dst: opus_multistream_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:587,1
    - Dst: OPUS_SET_GAIN
      Src: /src/opus/tests/test_opus_api.c:587,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:588,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:589,1
    - Dst: opus_multistream_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:593,1
    - Dst: OPUS_MULTISTREAM_GET_DECODER_STATE
      Src: /src/opus/tests/test_opus_api.c:593,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:594,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:595,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:596,1
    - Dst: OPUS_GET_GAIN
      Src: /src/opus/tests/test_opus_api.c:596,1
    - Dst: VG_CHECK
      Src: /src/opus/tests/test_opus_api.c:597,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:598,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:601,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:603,1
    - Dst: opus_multistream_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:604,1
    - Dst: OPUS_GET_BANDWIDTH
      Src: /src/opus/tests/test_opus_api.c:604,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:605,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:606,1
    - Dst: opus_multistream_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:609,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:610,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:611,1
    - Dst: opus_multistream_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:617,1
    - Dst: OPUS_GET_PITCH
      Src: /src/opus/tests/test_opus_api.c:617,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:618,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:620,1
    - Dst: opus_multistream_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:621,1
    - Dst: OPUS_GET_PITCH
      Src: /src/opus/tests/test_opus_api.c:621,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:622,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:624,1
    - Dst: opus_multistream_decode
      Src: /src/opus/tests/test_opus_api.c:626,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:626,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:628,1
    - Dst: opus_multistream_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:629,1
    - Dst: OPUS_GET_PITCH
      Src: /src/opus/tests/test_opus_api.c:629,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:630,1
    - Dst: opus_multistream_decode
      Src: /src/opus/tests/test_opus_api.c:633,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:633,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:635,1
    - Dst: opus_multistream_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:636,1
    - Dst: OPUS_GET_PITCH
      Src: /src/opus/tests/test_opus_api.c:636,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:637,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:639,1
    - Dst: opus_multistream_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:643,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:643,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:644,1
    - Dst: opus_multistream_decoder_destroy
      Src: /src/opus/tests/test_opus_api.c:647,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:649,1
    - Dst: opus_multistream_decoder_create
      Src: /src/opus/tests/test_opus_api.c:650,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:651,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:657,1
    - Dst: opus_multistream_decode
      Src: /src/opus/tests/test_opus_api.c:658,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:658,1
    - Dst: opus_multistream_decode
      Src: /src/opus/tests/test_opus_api.c:662,1
    - Dst: printf
      Src: /src/opus/tests/test_opus_api.c:662,1
    - Dst: opus_multistream_decode
      Src: /src/opus/tests/test_opus_api.c:662,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:662,1
    - Dst: opus_multistream_decode
      Src: /src/opus/tests/test_opus_api.c:664,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:664,1
    - Dst: opus_multistream_decode
      Src: /src/opus/tests/test_opus_api.c:666,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:666,1
    - Dst: opus_multistream_decode
      Src: /src/opus/tests/test_opus_api.c:668,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:668,1
    - Dst: opus_multistream_decode
      Src: /src/opus/tests/test_opus_api.c:670,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:670,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:672,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:674,1
    - Dst: opus_multistream_decode_float
      Src: /src/opus/tests/test_opus_api.c:675,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:675,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:677,1
    - Dst: opus_multistream_decoder_ctl
      Src: /src/opus/tests/test_opus_api.c:682,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:682,1
    - Dst: opus_multistream_decoder_init
      Src: /src/opus/tests/test_opus_api.c:683,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:683,1
    - Dst: opus_multistream_decode
      Src: /src/opus/tests/test_opus_api.c:684,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:684,1
    - Dst: opus_multistream_decode_float
      Src: /src/opus/tests/test_opus_api.c:685,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:685,1
    - Dst: opus_multistream_decoder_get_nb_samples
      Src: /src/opus/tests/test_opus_api.c:686,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:686,1
    - Dst: opus_multistream_decoder_destroy
      Src: /src/opus/tests/test_opus_api.c:688,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:690,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:691,1
    CyclomaticComplexity: 141
    EdgeCount: 141
    ICount: 368
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 693
      start: 347
    functionDepth: 1
    functionLinenumber: 347
    functionLinenumberEnd: 693
    functionName: test_msdec_api
    functionSourceFile: /src/opus/tests/test_opus_api.c
    functionUses: 0
    functionsReached:
    - opus_multistream_decoder_create
    - opus_decoder_ctl
    - malloc
    - OPUS_GET_FINAL_RANGE
    - OPUS_GET_GAIN
    - fprintf
    - opus_multistream_decoder_get_nb_samples
    - opus_multistream_decoder_init
    - opus_decoder_get_size
    - printf
    - opus_multistream_decode
    - OPUS_MULTISTREAM_GET_DECODER_STATE
    - VG_CHECK
    - opus_multistream_decoder_get_size
    - opus_multistream_decoder_ctl
    - OPUS_SET_GAIN
    - OPUS_GET_PITCH
    - test_failed
    - VG_UNDEF
    - opus_multistream_decoder_destroy
    - OPUS_GET_BANDWIDTH
    - opus_multistream_decode_float
    - free
    linkageType: ''
    returnType: opus_int32
    signature: opus_int32 test_msdec_api(void)
  - BBCount: 69
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:724,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:725,1
    - Dst: memset
      Src: /src/opus/tests/test_opus_api.c:726,1
    - Dst: opus_packet_parse
      Src: /src/opus/tests/test_opus_api.c:728,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:728,1
    - Dst: opus_packet_parse
      Src: /src/opus/tests/test_opus_api.c:735,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:737,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:738,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:739,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:741,1
    - Dst: opus_packet_parse
      Src: /src/opus/tests/test_opus_api.c:751,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:757,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:758,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:759,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:760,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:761,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:762,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:765,1
    - Dst: opus_packet_parse
      Src: /src/opus/tests/test_opus_api.c:773,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:775,1
    - Dst: opus_packet_parse
      Src: /src/opus/tests/test_opus_api.c:778,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:780,1
    - Dst: opus_packet_parse
      Src: /src/opus/tests/test_opus_api.c:787,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:789,1
    - Dst: opus_packet_parse
      Src: /src/opus/tests/test_opus_api.c:792,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:794,1
    - Dst: opus_packet_parse
      Src: /src/opus/tests/test_opus_api.c:797,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:799,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:800,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:801,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:802,1
    - Dst: opus_packet_parse
      Src: /src/opus/tests/test_opus_api.c:805,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:807,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:808,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:809,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:810,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:813,1
    - Dst: opus_packet_parse
      Src: /src/opus/tests/test_opus_api.c:821,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:823,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:825,1
    - Dst: opus_packet_parse
      Src: /src/opus/tests/test_opus_api.c:836,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:838,1
    - Dst: opus_packet_parse
      Src: /src/opus/tests/test_opus_api.c:841,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:843,1
    - Dst: opus_packet_parse
      Src: /src/opus/tests/test_opus_api.c:846,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:848,1
    - Dst: opus_packet_parse
      Src: /src/opus/tests/test_opus_api.c:851,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:853,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:856,1
    - Dst: opus_packet_parse
      Src: /src/opus/tests/test_opus_api.c:867,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:869,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:870,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:871,1
    - Dst: opus_packet_parse
      Src: /src/opus/tests/test_opus_api.c:874,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:876,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:878,1
    - Dst: opus_packet_get_samples_per_frame
      Src: /src/opus/tests/test_opus_api.c:886,1
    - Dst: opus_packet_parse
      Src: /src/opus/tests/test_opus_api.c:893,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:898,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:899,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:900,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:901,1
    - Dst: opus_packet_parse
      Src: /src/opus/tests/test_opus_api.c:907,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:909,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:910,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:912,1
    - Dst: opus_packet_get_samples_per_frame
      Src: /src/opus/tests/test_opus_api.c:921,1
    - Dst: opus_packet_parse
      Src: /src/opus/tests/test_opus_api.c:925,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:927,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:928,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:929,1
    - Dst: opus_packet_parse
      Src: /src/opus/tests/test_opus_api.c:932,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:934,1
    - Dst: opus_packet_parse
      Src: /src/opus/tests/test_opus_api.c:940,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:942,1
    - Dst: opus_packet_parse
      Src: /src/opus/tests/test_opus_api.c:947,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:949,1
    - Dst: opus_packet_parse
      Src: /src/opus/tests/test_opus_api.c:953,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:955,1
    - Dst: opus_packet_parse
      Src: /src/opus/tests/test_opus_api.c:961,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:963,1
    - Dst: opus_packet_parse
      Src: /src/opus/tests/test_opus_api.c:967,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:970,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:971,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:972,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:973,1
    - Dst: opus_packet_parse
      Src: /src/opus/tests/test_opus_api.c:986,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:989,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:990,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:991,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:992,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:993,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:997,1
    - Dst: opus_packet_parse
      Src: /src/opus/tests/test_opus_api.c:1008,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1010,1
    - Dst: opus_packet_parse
      Src: /src/opus/tests/test_opus_api.c:1025,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1027,1
    - Dst: opus_packet_parse
      Src: /src/opus/tests/test_opus_api.c:1030,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1034,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1035,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1036,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1037,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1041,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1043,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1044,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1045,1
    CyclomaticComplexity: 108
    EdgeCount: 108
    ICount: 295
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1047
      start: 715
    functionDepth: 1
    functionLinenumber: 715
    functionLinenumberEnd: 1047
    functionName: test_parse
    functionSourceFile: /src/opus/tests/test_opus_api.c
    functionUses: 0
    functionsReached:
    - test_failed
    - opus_packet_get_samples_per_frame
    - memset
    - fprintf
    - opus_packet_parse
    linkageType: ''
    returnType: opus_int32
    signature: opus_int32 test_parse(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 17
    argNames:
    - (
    - setcall
    - ','
    - getcall
    - ','
    - badv
    - ','
    - badv2
    - ','
    - goodv
    - ','
    - goodv2
    - ','
    - sok
    - ','
    - gok
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1072
      start: 1052
    functionDepth: 0
    functionLinenumber: 1052
    functionLinenumberEnd: 1072
    functionName: CHECK_SETGET
    functionSourceFile: /src/opus/tests/test_opus_api.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CHECK_SETGET(setcall,getcall,badv,badv2,goodv,goodv2,sok,gok)
  - BBCount: 76
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1087,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1088,1
    - Dst: opus_encoder_get_size
      Src: /src/opus/tests/test_opus_api.c:1091,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1092,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1093,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:1116,1
    - Dst: opus_encoder_create
      Src: /src/opus/tests/test_opus_api.c:1117,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1118,1
    - Dst: opus_encoder_create
      Src: /src/opus/tests/test_opus_api.c:1120,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1121,1
    - Dst: opus_encoder_destroy
      Src: /src/opus/tests/test_opus_api.c:1123,1
    - Dst: malloc
      Src: /src/opus/tests/test_opus_api.c:1124,1
    - Dst: opus_encoder_get_size
      Src: /src/opus/tests/test_opus_api.c:1124,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1125,1
    - Dst: opus_encoder_init
      Src: /src/opus/tests/test_opus_api.c:1126,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1127,1
    - Dst: free
      Src: /src/opus/tests/test_opus_api.c:1129,1
    - Dst: opus_encoder_create
      Src: /src/opus/tests/test_opus_api.c:1133,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1134,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:1137,1
    - Dst: opus_encoder_create
      Src: /src/opus/tests/test_opus_api.c:1138,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1139,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:1142,1
    - Dst: opus_encoder_create
      Src: /src/opus/tests/test_opus_api.c:1143,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1144,1
    - Dst: opus_encoder_destroy
      Src: /src/opus/tests/test_opus_api.c:1145,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:1148,1
    - Dst: opus_encoder_create
      Src: /src/opus/tests/test_opus_api.c:1149,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1150,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1152,1
    - Dst: OPUS_GET_LOOKAHEAD
      Src: /src/opus/tests/test_opus_api.c:1152,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1153,1
    - Dst: opus_encoder_destroy
      Src: /src/opus/tests/test_opus_api.c:1155,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:1157,1
    - Dst: opus_encoder_create
      Src: /src/opus/tests/test_opus_api.c:1158,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1159,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1161,1
    - Dst: OPUS_GET_LOOKAHEAD
      Src: /src/opus/tests/test_opus_api.c:1161,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1162,1
    - Dst: opus_encoder_destroy
      Src: /src/opus/tests/test_opus_api.c:1163,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:1166,1
    - Dst: opus_encoder_create
      Src: /src/opus/tests/test_opus_api.c:1167,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1168,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1171,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1172,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:1175,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1176,1
    - Dst: OPUS_GET_LOOKAHEAD
      Src: /src/opus/tests/test_opus_api.c:1176,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1177,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1179,1
    - Dst: OPUS_GET_LOOKAHEAD
      Src: /src/opus/tests/test_opus_api.c:1179,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1180,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1182,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1184,1
    - Dst: OPUS_GET_SAMPLE_RATE
      Src: /src/opus/tests/test_opus_api.c:1184,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1185,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1187,1
    - Dst: OPUS_GET_SAMPLE_RATE
      Src: /src/opus/tests/test_opus_api.c:1187,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1188,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1190,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1192,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1192,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1193,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1196,1
    - Dst: OPUS_GET_APPLICATION
      Src: /src/opus/tests/test_opus_api.c:1196,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1197,1
    - Dst: CHECK_SETGET
      Src: /src/opus/tests/test_opus_api.c:1199,1
    - Dst: OPUS_SET_APPLICATION
      Src: /src/opus/tests/test_opus_api.c:1199,1
    - Dst: OPUS_GET_APPLICATION
      Src: /src/opus/tests/test_opus_api.c:1199,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1204,1
    - Dst: OPUS_GET_BITRATE
      Src: /src/opus/tests/test_opus_api.c:1204,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1205,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1207,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/tests/test_opus_api.c:1207,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1207,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:1209,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1210,1
    - Dst: OPUS_GET_BITRATE
      Src: /src/opus/tests/test_opus_api.c:1210,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1210,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1211,1
    - Dst: CHECK_SETGET
      Src: /src/opus/tests/test_opus_api.c:1213,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/tests/test_opus_api.c:1213,1
    - Dst: OPUS_GET_BITRATE
      Src: /src/opus/tests/test_opus_api.c:1213,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1218,1
    - Dst: OPUS_GET_FORCE_CHANNELS
      Src: /src/opus/tests/test_opus_api.c:1218,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1219,1
    - Dst: CHECK_SETGET
      Src: /src/opus/tests/test_opus_api.c:1221,1
    - Dst: OPUS_SET_FORCE_CHANNELS
      Src: /src/opus/tests/test_opus_api.c:1221,1
    - Dst: OPUS_GET_FORCE_CHANNELS
      Src: /src/opus/tests/test_opus_api.c:1221,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1227,1
    - Dst: OPUS_SET_BANDWIDTH
      Src: /src/opus/tests/test_opus_api.c:1227,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1227,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1230,1
    - Dst: OPUS_SET_BANDWIDTH
      Src: /src/opus/tests/test_opus_api.c:1230,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1230,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1233,1
    - Dst: OPUS_SET_BANDWIDTH
      Src: /src/opus/tests/test_opus_api.c:1233,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1233,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1236,1
    - Dst: OPUS_SET_BANDWIDTH
      Src: /src/opus/tests/test_opus_api.c:1236,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1236,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1239,1
    - Dst: OPUS_SET_BANDWIDTH
      Src: /src/opus/tests/test_opus_api.c:1239,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1239,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1242,1
    - Dst: OPUS_SET_BANDWIDTH
      Src: /src/opus/tests/test_opus_api.c:1242,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1242,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1244,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:1248,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1249,1
    - Dst: OPUS_GET_BANDWIDTH
      Src: /src/opus/tests/test_opus_api.c:1249,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1252,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1254,1
    - Dst: OPUS_SET_BANDWIDTH
      Src: /src/opus/tests/test_opus_api.c:1254,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1254,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1256,1
    - Dst: OPUS_GET_BANDWIDTH
      Src: /src/opus/tests/test_opus_api.c:1256,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1257,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1259,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1262,1
    - Dst: OPUS_SET_MAX_BANDWIDTH
      Src: /src/opus/tests/test_opus_api.c:1262,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1262,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1265,1
    - Dst: OPUS_SET_MAX_BANDWIDTH
      Src: /src/opus/tests/test_opus_api.c:1265,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1265,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1268,1
    - Dst: OPUS_SET_MAX_BANDWIDTH
      Src: /src/opus/tests/test_opus_api.c:1268,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1268,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1271,1
    - Dst: OPUS_SET_MAX_BANDWIDTH
      Src: /src/opus/tests/test_opus_api.c:1271,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1271,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1274,1
    - Dst: OPUS_SET_MAX_BANDWIDTH
      Src: /src/opus/tests/test_opus_api.c:1274,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1274,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1277,1
    - Dst: OPUS_SET_MAX_BANDWIDTH
      Src: /src/opus/tests/test_opus_api.c:1277,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1277,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1279,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:1283,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1284,1
    - Dst: OPUS_GET_MAX_BANDWIDTH
      Src: /src/opus/tests/test_opus_api.c:1284,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1287,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1289,1
    - Dst: OPUS_GET_MAX_BANDWIDTH
      Src: /src/opus/tests/test_opus_api.c:1289,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1290,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1292,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1294,1
    - Dst: OPUS_GET_DTX
      Src: /src/opus/tests/test_opus_api.c:1294,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1295,1
    - Dst: CHECK_SETGET
      Src: /src/opus/tests/test_opus_api.c:1297,1
    - Dst: OPUS_SET_DTX
      Src: /src/opus/tests/test_opus_api.c:1297,1
    - Dst: OPUS_GET_DTX
      Src: /src/opus/tests/test_opus_api.c:1297,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1302,1
    - Dst: OPUS_GET_COMPLEXITY
      Src: /src/opus/tests/test_opus_api.c:1302,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1303,1
    - Dst: CHECK_SETGET
      Src: /src/opus/tests/test_opus_api.c:1305,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/tests/test_opus_api.c:1305,1
    - Dst: OPUS_GET_COMPLEXITY
      Src: /src/opus/tests/test_opus_api.c:1305,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1310,1
    - Dst: OPUS_GET_INBAND_FEC
      Src: /src/opus/tests/test_opus_api.c:1310,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1311,1
    - Dst: CHECK_SETGET
      Src: /src/opus/tests/test_opus_api.c:1313,1
    - Dst: OPUS_SET_INBAND_FEC
      Src: /src/opus/tests/test_opus_api.c:1313,1
    - Dst: OPUS_GET_INBAND_FEC
      Src: /src/opus/tests/test_opus_api.c:1313,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1318,1
    - Dst: OPUS_GET_PACKET_LOSS_PERC
      Src: /src/opus/tests/test_opus_api.c:1318,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1319,1
    - Dst: CHECK_SETGET
      Src: /src/opus/tests/test_opus_api.c:1321,1
    - Dst: OPUS_SET_PACKET_LOSS_PERC
      Src: /src/opus/tests/test_opus_api.c:1321,1
    - Dst: OPUS_GET_PACKET_LOSS_PERC
      Src: /src/opus/tests/test_opus_api.c:1321,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1326,1
    - Dst: OPUS_GET_VBR
      Src: /src/opus/tests/test_opus_api.c:1326,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1327,1
    - Dst: CHECK_SETGET
      Src: /src/opus/tests/test_opus_api.c:1329,1
    - Dst: OPUS_SET_VBR
      Src: /src/opus/tests/test_opus_api.c:1329,1
    - Dst: OPUS_GET_VBR
      Src: /src/opus/tests/test_opus_api.c:1329,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1342,1
    - Dst: OPUS_GET_VBR_CONSTRAINT
      Src: /src/opus/tests/test_opus_api.c:1342,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1343,1
    - Dst: CHECK_SETGET
      Src: /src/opus/tests/test_opus_api.c:1345,1
    - Dst: OPUS_SET_VBR_CONSTRAINT
      Src: /src/opus/tests/test_opus_api.c:1345,1
    - Dst: OPUS_GET_VBR_CONSTRAINT
      Src: /src/opus/tests/test_opus_api.c:1345,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1350,1
    - Dst: OPUS_GET_SIGNAL
      Src: /src/opus/tests/test_opus_api.c:1350,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1351,1
    - Dst: CHECK_SETGET
      Src: /src/opus/tests/test_opus_api.c:1353,1
    - Dst: OPUS_SET_SIGNAL
      Src: /src/opus/tests/test_opus_api.c:1353,1
    - Dst: OPUS_GET_SIGNAL
      Src: /src/opus/tests/test_opus_api.c:1353,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1358,1
    - Dst: OPUS_GET_LSB_DEPTH
      Src: /src/opus/tests/test_opus_api.c:1358,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1359,1
    - Dst: CHECK_SETGET
      Src: /src/opus/tests/test_opus_api.c:1361,1
    - Dst: OPUS_SET_LSB_DEPTH
      Src: /src/opus/tests/test_opus_api.c:1361,1
    - Dst: OPUS_GET_LSB_DEPTH
      Src: /src/opus/tests/test_opus_api.c:1361,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1365,1
    - Dst: OPUS_GET_PREDICTION_DISABLED
      Src: /src/opus/tests/test_opus_api.c:1365,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1366,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1368,1
    - Dst: OPUS_GET_PREDICTION_DISABLED
      Src: /src/opus/tests/test_opus_api.c:1368,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1369,1
    - Dst: CHECK_SETGET
      Src: /src/opus/tests/test_opus_api.c:1371,1
    - Dst: OPUS_SET_PREDICTION_DISABLED
      Src: /src/opus/tests/test_opus_api.c:1371,1
    - Dst: OPUS_GET_PREDICTION_DISABLED
      Src: /src/opus/tests/test_opus_api.c:1371,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1375,1
    - Dst: OPUS_GET_EXPERT_FRAME_DURATION
      Src: /src/opus/tests/test_opus_api.c:1375,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1376,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1378,1
    - Dst: OPUS_SET_EXPERT_FRAME_DURATION
      Src: /src/opus/tests/test_opus_api.c:1378,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1379,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1381,1
    - Dst: OPUS_SET_EXPERT_FRAME_DURATION
      Src: /src/opus/tests/test_opus_api.c:1381,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1382,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1384,1
    - Dst: OPUS_SET_EXPERT_FRAME_DURATION
      Src: /src/opus/tests/test_opus_api.c:1384,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1385,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1387,1
    - Dst: OPUS_SET_EXPERT_FRAME_DURATION
      Src: /src/opus/tests/test_opus_api.c:1387,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1388,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1390,1
    - Dst: OPUS_SET_EXPERT_FRAME_DURATION
      Src: /src/opus/tests/test_opus_api.c:1390,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1391,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1393,1
    - Dst: OPUS_SET_EXPERT_FRAME_DURATION
      Src: /src/opus/tests/test_opus_api.c:1393,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1394,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1396,1
    - Dst: OPUS_SET_EXPERT_FRAME_DURATION
      Src: /src/opus/tests/test_opus_api.c:1396,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1397,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1399,1
    - Dst: OPUS_SET_EXPERT_FRAME_DURATION
      Src: /src/opus/tests/test_opus_api.c:1399,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1400,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1402,1
    - Dst: OPUS_SET_EXPERT_FRAME_DURATION
      Src: /src/opus/tests/test_opus_api.c:1402,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1403,1
    - Dst: CHECK_SETGET
      Src: /src/opus/tests/test_opus_api.c:1405,1
    - Dst: OPUS_SET_EXPERT_FRAME_DURATION
      Src: /src/opus/tests/test_opus_api.c:1405,1
    - Dst: OPUS_GET_EXPERT_FRAME_DURATION
      Src: /src/opus/tests/test_opus_api.c:1405,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1412,1
    - Dst: OPUS_GET_FINAL_RANGE
      Src: /src/opus/tests/test_opus_api.c:1412,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1413,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1415,1
    - Dst: OPUS_GET_FINAL_RANGE
      Src: /src/opus/tests/test_opus_api.c:1415,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1415,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1417,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1420,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1420,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1422,1
    - Dst: memset
      Src: /src/opus/tests/test_opus_api.c:1424,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:1425,1
    - Dst: opus_encode
      Src: /src/opus/tests/test_opus_api.c:1426,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1427,1
    - Dst: VG_CHECK
      Src: /src/opus/tests/test_opus_api.c:1428,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1430,1
    - Dst: memset
      Src: /src/opus/tests/test_opus_api.c:1432,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:1433,1
    - Dst: opus_encode_float
      Src: /src/opus/tests/test_opus_api.c:1434,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1435,1
    - Dst: VG_CHECK
      Src: /src/opus/tests/test_opus_api.c:1436,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1438,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_api.c:1443,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1443,1
    - Dst: opus_encoder_init
      Src: /src/opus/tests/test_opus_api.c:1444,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1444,1
    - Dst: opus_encode
      Src: /src/opus/tests/test_opus_api.c:1445,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1445,1
    - Dst: opus_encode_float
      Src: /src/opus/tests/test_opus_api.c:1446,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1446,1
    - Dst: opus_encoder_destroy
      Src: /src/opus/tests/test_opus_api.c:1448,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1450,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1451,1
    CyclomaticComplexity: 116
    EdgeCount: 116
    ICount: 332
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1453
      start: 1073
    functionDepth: 1
    functionLinenumber: 1073
    functionLinenumberEnd: 1453
    functionName: test_enc_api
    functionSourceFile: /src/opus/tests/test_opus_api.c
    functionUses: 0
    functionsReached:
    - OPUS_SET_VBR_CONSTRAINT
    - OPUS_GET_LSB_DEPTH
    - OPUS_GET_SIGNAL
    - malloc
    - OPUS_SET_BANDWIDTH
    - CHECK_SETGET
    - OPUS_GET_PACKET_LOSS_PERC
    - OPUS_GET_FINAL_RANGE
    - fprintf
    - OPUS_SET_VBR
    - OPUS_GET_DTX
    - OPUS_SET_APPLICATION
    - OPUS_SET_BITRATE
    - OPUS_GET_APPLICATION
    - OPUS_GET_COMPLEXITY
    - memset
    - opus_encoder_get_size
    - opus_encoder_ctl
    - OPUS_SET_LSB_DEPTH
    - OPUS_GET_LOOKAHEAD
    - OPUS_GET_PREDICTION_DISABLED
    - OPUS_GET_EXPERT_FRAME_DURATION
    - OPUS_GET_INBAND_FEC
    - OPUS_GET_VBR_CONSTRAINT
    - OPUS_SET_DTX
    - OPUS_SET_PREDICTION_DISABLED
    - OPUS_SET_MAX_BANDWIDTH
    - OPUS_SET_PACKET_LOSS_PERC
    - opus_encoder_destroy
    - opus_encode
    - opus_encode_float
    - OPUS_GET_MAX_BANDWIDTH
    - OPUS_SET_INBAND_FEC
    - VG_CHECK
    - OPUS_SET_SIGNAL
    - OPUS_GET_BITRATE
    - OPUS_SET_EXPERT_FRAME_DURATION
    - test_failed
    - OPUS_GET_SAMPLE_RATE
    - opus_encoder_init
    - OPUS_SET_COMPLEXITY
    - OPUS_GET_VBR
    - VG_UNDEF
    - opus_encoder_create
    - OPUS_GET_BANDWIDTH
    - OPUS_SET_FORCE_CHANNELS
    - OPUS_GET_FORCE_CHANNELS
    - free
    linkageType: ''
    returnType: opus_int32
    signature: opus_int32 test_enc_api(void)
  - BBCount: 87
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1463,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1464,1
    - Dst: malloc
      Src: /src/opus/tests/test_opus_api.c:1466,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1467,1
    - Dst: memset
      Src: /src/opus/tests/test_opus_api.c:1468,1
    - Dst: malloc
      Src: /src/opus/tests/test_opus_api.c:1469,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1470,1
    - Dst: opus_repacketizer_get_size
      Src: /src/opus/tests/test_opus_api.c:1472,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1473,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1475,1
    - Dst: malloc
      Src: /src/opus/tests/test_opus_api.c:1477,1
    - Dst: opus_repacketizer_init
      Src: /src/opus/tests/test_opus_api.c:1478,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1479,1
    - Dst: free
      Src: /src/opus/tests/test_opus_api.c:1481,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1482,1
    - Dst: opus_repacketizer_create
      Src: /src/opus/tests/test_opus_api.c:1484,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1485,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1487,1
    - Dst: opus_repacketizer_get_nb_frames
      Src: /src/opus/tests/test_opus_api.c:1489,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1489,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1491,1
    - Dst: VG_UNDEF
      Src: /src/opus/tests/test_opus_api.c:1494,1
    - Dst: opus_repacketizer_cat
      Src: /src/opus/tests/test_opus_api.c:1495,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1495,1
    - Dst: opus_repacketizer_cat
      Src: /src/opus/tests/test_opus_api.c:1498,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1498,1
    - Dst: opus_repacketizer_cat
      Src: /src/opus/tests/test_opus_api.c:1501,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1501,1
    - Dst: opus_repacketizer_cat
      Src: /src/opus/tests/test_opus_api.c:1504,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1504,1
    - Dst: opus_repacketizer_cat
      Src: /src/opus/tests/test_opus_api.c:1508,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1508,1
    - Dst: opus_repacketizer_cat
      Src: /src/opus/tests/test_opus_api.c:1512,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1512,1
    - Dst: opus_repacketizer_cat
      Src: /src/opus/tests/test_opus_api.c:1516,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1516,1
    - Dst: opus_repacketizer_cat
      Src: /src/opus/tests/test_opus_api.c:1519,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1519,1
    - Dst: opus_repacketizer_cat
      Src: /src/opus/tests/test_opus_api.c:1522,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1522,1
    - Dst: opus_repacketizer_cat
      Src: /src/opus/tests/test_opus_api.c:1525,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1525,1
    - Dst: opus_repacketizer_init
      Src: /src/opus/tests/test_opus_api.c:1529,1
    - Dst: opus_packet_get_samples_per_frame
      Src: /src/opus/tests/test_opus_api.c:1535,1
    - Dst: opus_packet_get_samples_per_frame
      Src: /src/opus/tests/test_opus_api.c:1543,1
    - Dst: opus_repacketizer_cat
      Src: /src/opus/tests/test_opus_api.c:1553,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1554,1
    - Dst: opus_repacketizer_get_nb_frames
      Src: /src/opus/tests/test_opus_api.c:1558,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1558,1
    - Dst: opus_repacketizer_out_range
      Src: /src/opus/tests/test_opus_api.c:1560,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1565,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1566,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1567,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1568,1
    - Dst: opus_repacketizer_out
      Src: /src/opus/tests/test_opus_api.c:1570,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1570,1
    - Dst: opus_packet_unpad
      Src: /src/opus/tests/test_opus_api.c:1572,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1572,1
    - Dst: opus_packet_pad
      Src: /src/opus/tests/test_opus_api.c:1574,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1574,1
    - Dst: opus_packet_pad
      Src: /src/opus/tests/test_opus_api.c:1576,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1576,1
    - Dst: opus_packet_unpad
      Src: /src/opus/tests/test_opus_api.c:1578,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1578,1
    - Dst: opus_multistream_packet_unpad
      Src: /src/opus/tests/test_opus_api.c:1580,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1580,1
    - Dst: opus_multistream_packet_pad
      Src: /src/opus/tests/test_opus_api.c:1582,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1582,1
    - Dst: opus_multistream_packet_pad
      Src: /src/opus/tests/test_opus_api.c:1584,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1584,1
    - Dst: opus_multistream_packet_unpad
      Src: /src/opus/tests/test_opus_api.c:1586,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1586,1
    - Dst: opus_repacketizer_out
      Src: /src/opus/tests/test_opus_api.c:1588,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1588,1
    - Dst: opus_repacketizer_out
      Src: /src/opus/tests/test_opus_api.c:1592,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1592,1
    - Dst: opus_repacketizer_out
      Src: /src/opus/tests/test_opus_api.c:1595,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1595,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1597,1
    - Dst: opus_repacketizer_init
      Src: /src/opus/tests/test_opus_api.c:1599,1
    - Dst: opus_repacketizer_init
      Src: /src/opus/tests/test_opus_api.c:1605,1
    - Dst: opus_repacketizer_cat
      Src: /src/opus/tests/test_opus_api.c:1607,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1607,1
    - Dst: opus_repacketizer_cat
      Src: /src/opus/tests/test_opus_api.c:1610,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1610,1
    - Dst: opus_repacketizer_out
      Src: /src/opus/tests/test_opus_api.c:1612,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1613,1
    - Dst: opus_repacketizer_out_range
      Src: /src/opus/tests/test_opus_api.c:1615,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1616,1
    - Dst: opus_repacketizer_out_range
      Src: /src/opus/tests/test_opus_api.c:1618,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1619,1
    - Dst: opus_repacketizer_init
      Src: /src/opus/tests/test_opus_api.c:1623,1
    - Dst: opus_repacketizer_cat
      Src: /src/opus/tests/test_opus_api.c:1625,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1625,1
    - Dst: opus_repacketizer_cat
      Src: /src/opus/tests/test_opus_api.c:1628,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1628,1
    - Dst: opus_repacketizer_out
      Src: /src/opus/tests/test_opus_api.c:1630,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1631,1
    - Dst: opus_repacketizer_init
      Src: /src/opus/tests/test_opus_api.c:1635,1
    - Dst: opus_repacketizer_cat
      Src: /src/opus/tests/test_opus_api.c:1638,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1638,1
    - Dst: opus_repacketizer_cat
      Src: /src/opus/tests/test_opus_api.c:1640,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1640,1
    - Dst: opus_repacketizer_out
      Src: /src/opus/tests/test_opus_api.c:1642,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1643,1
    - Dst: opus_repacketizer_init
      Src: /src/opus/tests/test_opus_api.c:1647,1
    - Dst: opus_repacketizer_cat
      Src: /src/opus/tests/test_opus_api.c:1650,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1650,1
    - Dst: opus_repacketizer_cat
      Src: /src/opus/tests/test_opus_api.c:1652,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1652,1
    - Dst: opus_repacketizer_out
      Src: /src/opus/tests/test_opus_api.c:1654,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1655,1
    - Dst: opus_packet_get_samples_per_frame
      Src: /src/opus/tests/test_opus_api.c:1664,1
    - Dst: opus_repacketizer_init
      Src: /src/opus/tests/test_opus_api.c:1667,1
    - Dst: opus_repacketizer_cat
      Src: /src/opus/tests/test_opus_api.c:1671,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1674,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1677,1
    - Dst: opus_repacketizer_out
      Src: /src/opus/tests/test_opus_api.c:1680,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1680,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1681,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1682,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1683,1
    - Dst: opus_repacketizer_out
      Src: /src/opus/tests/test_opus_api.c:1685,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1685,1
    - Dst: opus_packet_unpad
      Src: /src/opus/tests/test_opus_api.c:1687,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1687,1
    - Dst: opus_packet_pad
      Src: /src/opus/tests/test_opus_api.c:1689,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1689,1
    - Dst: opus_packet_pad
      Src: /src/opus/tests/test_opus_api.c:1691,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1691,1
    - Dst: opus_packet_unpad
      Src: /src/opus/tests/test_opus_api.c:1693,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1693,1
    - Dst: opus_multistream_packet_unpad
      Src: /src/opus/tests/test_opus_api.c:1695,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1695,1
    - Dst: opus_multistream_packet_pad
      Src: /src/opus/tests/test_opus_api.c:1697,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1697,1
    - Dst: opus_multistream_packet_pad
      Src: /src/opus/tests/test_opus_api.c:1699,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1699,1
    - Dst: opus_multistream_packet_unpad
      Src: /src/opus/tests/test_opus_api.c:1701,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1701,1
    - Dst: opus_repacketizer_out
      Src: /src/opus/tests/test_opus_api.c:1703,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1703,1
    - Dst: opus_repacketizer_out
      Src: /src/opus/tests/test_opus_api.c:1707,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1707,1
    - Dst: opus_repacketizer_out
      Src: /src/opus/tests/test_opus_api.c:1710,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1710,1
    - Dst: opus_packet_pad
      Src: /src/opus/tests/test_opus_api.c:1717,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1717,1
    - Dst: opus_multistream_packet_pad
      Src: /src/opus/tests/test_opus_api.c:1719,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1719,1
    - Dst: opus_packet_pad
      Src: /src/opus/tests/test_opus_api.c:1721,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1721,1
    - Dst: opus_multistream_packet_pad
      Src: /src/opus/tests/test_opus_api.c:1723,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1723,1
    - Dst: opus_packet_pad
      Src: /src/opus/tests/test_opus_api.c:1725,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1725,1
    - Dst: opus_multistream_packet_pad
      Src: /src/opus/tests/test_opus_api.c:1727,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1727,1
    - Dst: opus_packet_unpad
      Src: /src/opus/tests/test_opus_api.c:1729,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1729,1
    - Dst: opus_multistream_packet_unpad
      Src: /src/opus/tests/test_opus_api.c:1731,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1731,1
    - Dst: opus_packet_unpad
      Src: /src/opus/tests/test_opus_api.c:1733,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1733,1
    - Dst: opus_multistream_packet_unpad
      Src: /src/opus/tests/test_opus_api.c:1735,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1735,1
    - Dst: opus_packet_pad
      Src: /src/opus/tests/test_opus_api.c:1740,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1740,1
    - Dst: opus_multistream_packet_pad
      Src: /src/opus/tests/test_opus_api.c:1742,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1742,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1745,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1746,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1747,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1748,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1749,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1750,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1751,1
    - Dst: opus_repacketizer_destroy
      Src: /src/opus/tests/test_opus_api.c:1753,1
    - Dst: free
      Src: /src/opus/tests/test_opus_api.c:1755,1
    - Dst: free
      Src: /src/opus/tests/test_opus_api.c:1756,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1757,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1758,1
    CyclomaticComplexity: 115
    EdgeCount: 115
    ICount: 339
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1761
      start: 1456
    functionDepth: 1
    functionLinenumber: 1456
    functionLinenumberEnd: 1761
    functionName: test_repacketizer_api
    functionSourceFile: /src/opus/tests/test_opus_api.c
    functionUses: 0
    functionsReached:
    - opus_multistream_packet_pad
    - opus_packet_unpad
    - opus_multistream_packet_unpad
    - opus_repacketizer_get_nb_frames
    - malloc
    - fprintf
    - opus_packet_pad
    - memset
    - opus_repacketizer_out_range
    - opus_packet_get_samples_per_frame
    - opus_repacketizer_create
    - opus_repacketizer_init
    - opus_repacketizer_out
    - opus_repacketizer_destroy
    - test_failed
    - VG_UNDEF
    - opus_repacketizer_cat
    - free
    - opus_repacketizer_get_size
    linkageType: ''
    returnType: int
    signature: int test_repacketizer_api(void)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1893,1
    - Dst: opus_get_version_string
      Src: /src/opus/tests/test_opus_api.c:1898,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1899,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1900,1
    - Dst: opus_strerror
      Src: /src/opus/tests/test_opus_api.c:1901,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1901,1
    - Dst: opus_strerror
      Src: /src/opus/tests/test_opus_api.c:1902,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1902,1
    - Dst: strlen
      Src: /src/opus/tests/test_opus_api.c:1903,1
    - Dst: opus_strerror
      Src: /src/opus/tests/test_opus_api.c:1903,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_api.c:1903,1
    - Dst: test_dec_api
      Src: /src/opus/tests/test_opus_api.c:1906,1
    - Dst: test_msdec_api
      Src: /src/opus/tests/test_opus_api.c:1907,1
    - Dst: test_parse
      Src: /src/opus/tests/test_opus_api.c:1908,1
    - Dst: test_enc_api
      Src: /src/opus/tests/test_opus_api.c:1909,1
    - Dst: test_repacketizer_api
      Src: /src/opus/tests/test_opus_api.c:1910,1
    - Dst: test_malloc_fail
      Src: /src/opus/tests/test_opus_api.c:1911,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_api.c:1913,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 2
    argNames:
    - _argc
    - _argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1916
      start: 1887
    functionDepth: 2
    functionLinenumber: 1887
    functionLinenumberEnd: 1916
    functionName: main
    functionSourceFile: /src/opus/tests/test_opus_api.c
    functionUses: 0
    functionsReached:
    - opus_strerror
    - test_enc_api
    - test_failed
    - test_dec_api
    - opus_get_version_string
    - test_repacketizer_api
    - fprintf
    - strlen
    - test_malloc_fail
    - test_parse
    - test_msdec_api
    linkageType: ''
    returnType: int
    signature: int main(int _argc, char **_argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_packet_get_bandwidth
      Src: /src/opus/tests/opus_decode_fuzzer.c:52,1
    - Dst: opus_packet_get_nb_channels
      Src: /src/opus/tests/opus_decode_fuzzer.c:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - toc
    - info
    argTypes:
    - uint8_t*
    - TocInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 56
    functionName: ParseToc
    functionSourceFile: /src/opus/tests/opus_decode_fuzzer.c
    functionUses: 0
    functionsReached:
    - opus_packet_get_nb_channels
    - opus_packet_get_bandwidth
    linkageType: ''
    returnType: void
    signature: void ParseToc(const uint8_t *toc, TocInfo *const info)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ParseToc
      Src: /src/opus/tests/opus_decode_fuzzer.c:79,1
    - Dst: opus_decoder_create
      Src: /src/opus/tests/opus_decode_fuzzer.c:81,1
    - Dst: malloc
      Src: /src/opus/tests/opus_decode_fuzzer.c:86,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/opus_decode_fuzzer.c:106,1
    - Dst: OPUS_GET_LAST_PACKET_DURATION
      Src: /src/opus/tests/opus_decode_fuzzer.c:106,1
    - Dst: opus_decode
      Src: /src/opus/tests/opus_decode_fuzzer.c:107,1
    - Dst: malloc
      Src: /src/opus/tests/opus_decode_fuzzer.c:109,1
    - Dst: memcpy
      Src: /src/opus/tests/opus_decode_fuzzer.c:110,1
    - Dst: opus_decode
      Src: /src/opus/tests/opus_decode_fuzzer.c:112,1
    - Dst: free
      Src: /src/opus/tests/opus_decode_fuzzer.c:114,1
    - Dst: opus_decoder_destroy
      Src: /src/opus/tests/opus_decode_fuzzer.c:120,1
    - Dst: free
      Src: /src/opus/tests/opus_decode_fuzzer.c:121,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - uint8_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 64
    functionDepth: 2
    functionLinenumber: 64
    functionLinenumberEnd: 124
    functionName: LLVMFuzzerTestOneInput
    functionSourceFile: /src/opus/tests/opus_decode_fuzzer.c
    functionUses: 0
    functionsReached:
    - opus_decoder_destroy
    - opus_decoder_ctl
    - memcpy
    - OPUS_GET_LAST_PACKET_DURATION
    - malloc
    - opus_decode
    - ParseToc
    - opus_decoder_create
    - free
    linkageType: ''
    returnType: int
    signature: int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/opus/tests/test_opus_padding.c:52,1
    - Dst: malloc
      Src: /src/opus/tests/test_opus_padding.c:53,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_padding.c:55,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_padding.c:57,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_padding.c:58,1
    - Dst: memset
      Src: /src/opus/tests/test_opus_padding.c:62,1
    - Dst: opus_decoder_create
      Src: /src/opus/tests/test_opus_padding.c:65,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_padding.c:66,1
    - Dst: opus_decoder_destroy
      Src: /src/opus/tests/test_opus_padding.c:67,1
    - Dst: free
      Src: /src/opus/tests/test_opus_padding.c:69,1
    - Dst: free
      Src: /src/opus/tests/test_opus_padding.c:70,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_padding.c:73,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_padding.c:74,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_padding.c:77,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 78
    functionName: test_overflow
    functionSourceFile: /src/opus/tests/test_opus_padding.c
    functionUses: 0
    functionsReached:
    - test_failed
    - opus_decoder_destroy
    - memset
    - malloc
    - opus_decode
    - fprintf
    - opus_decoder_create
    - free
    linkageType: ''
    returnType: void
    signature: void test_overflow(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: opus_get_version_string
      Src: /src/opus/tests/test_opus_padding.c:85,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_padding.c:86,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_padding.c:87,1
    - Dst: test_overflow
      Src: /src/opus/tests/test_opus_padding.c:89,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_padding.c:91,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 80
    functionDepth: 2
    functionLinenumber: 80
    functionLinenumberEnd: 94
    functionName: main
    functionSourceFile: /src/opus/tests/test_opus_padding.c
    functionUses: 0
    functionsReached:
    - opus_get_version_string
    - test_overflow
    - test_failed
    - fprintf
    linkageType: ''
    returnType: int
    signature: int main(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: opus_dred_decoder_create
      Src: /src/opus/tests/test_opus_dred.c:60,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_dred.c:61,1
    - Dst: opus_dred_alloc
      Src: /src/opus/tests/test_opus_dred.c:62,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_dred.c:63,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_dred.c:71,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_dred.c:73,1
    - Dst: opus_dred_parse
      Src: /src/opus/tests/test_opus_dred.c:74,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_dred.c:74,1
    - Dst: opus_dred_process
      Src: /src/opus/tests/test_opus_dred.c:77,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_dred.c:78,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_dred.c:79,1
    - Dst: opus_dred_free
      Src: /src/opus/tests/test_opus_dred.c:82,1
    - Dst: opus_dred_decoder_destroy
      Src: /src/opus/tests/test_opus_dred.c:83,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 84
    functionName: test_random_dred
    functionSourceFile: /src/opus/tests/test_opus_dred.c
    functionUses: 0
    functionsReached:
    - opus_dred_decoder_create
    - expect_true
    - opus_dred_free
    - opus_dred_decoder_destroy
    - opus_dred_parse
    - fast_rand
    - opus_dred_alloc
    - opus_dred_process
    linkageType: ''
    returnType: void
    signature: void test_random_dred(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: getenv
      Src: /src/opus/tests/test_opus_dred.c:91,1
    - Dst: atoi
      Src: /src/opus/tests/test_opus_dred.c:92,1
    - Dst: atoi
      Src: /src/opus/tests/test_opus_dred.c:95,1
    - Dst: time
      Src: /src/opus/tests/test_opus_dred.c:98,1
    - Dst: getpid
      Src: /src/opus/tests/test_opus_dred.c:98,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_dred.c:101,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_dred.c:101,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_dred.c:102,1
    - Dst: test_random_dred
      Src: /src/opus/tests/test_opus_dred.c:104,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_dred.c:105,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 86
    functionDepth: 2
    functionLinenumber: 86
    functionLinenumberEnd: 107
    functionName: main
    functionSourceFile: /src/opus/tests/test_opus_dred.c
    functionUses: 0
    functionsReached:
    - fast_rand
    - getenv
    - test_random_dred
    - atoi
    - getpid
    - fprintf
    - time
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 56
    functionName: RAND_SAMPLE
    functionSourceFile: /src/opus/tests/test_opus_encode.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RAND_SAMPLE(a)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:72,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:73,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 29
    argCount: 2
    argNames:
    - buf
    - len
    argTypes:
    - short*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 84
    functionName: generate_music
    functionSourceFile: /src/opus/tests/test_opus_encode.c
    functionUses: 0
    functionsReached:
    - fast_rand
    linkageType: ''
    returnType: void
    signature: void generate_music(short *buf, opus_int32 len)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - i
    - ch
    argTypes:
    - opus_uint32
    - unsigned char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 94
    functionName: int_to_char
    functionSourceFile: /src/opus/tests/test_opus_encode.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void int_to_char(opus_uint32 i, unsigned char ch[4])
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: snprintf
      Src: /src/opus/tests/test_opus_encode.c:101,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_encode.c:102,1
    - Dst: fopen
      Src: /src/opus/tests/test_opus_encode.c:103,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:104,1
    - Dst: int_to_char
      Src: /src/opus/tests/test_opus_encode.c:105,1
    - Dst: fwrite
      Src: /src/opus/tests/test_opus_encode.c:106,1
    - Dst: int_to_char
      Src: /src/opus/tests/test_opus_encode.c:107,1
    - Dst: fwrite
      Src: /src/opus/tests/test_opus_encode.c:108,1
    - Dst: fwrite
      Src: /src/opus/tests/test_opus_encode.c:109,1
    - Dst: fclose
      Src: /src/opus/tests/test_opus_encode.c:110,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 3
    argNames:
    - p
    - len
    - rng
    argTypes:
    - unsigned char*
    - int
    - opus_uint32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 112
    functionName: save_packet
    functionSourceFile: /src/opus/tests/test_opus_encode.c
    functionUses: 0
    functionsReached:
    - test_failed
    - int_to_char
    - fclose
    - snprintf
    - fwrite
    - fprintf
    - fopen
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE save_packet(unsigned char* p, int len, opus_uint32 rng)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:138,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 21
    argCount: 2
    argNames:
    - frame_size
    - sampling_rate
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 115
    functionDepth: 1
    functionLinenumber: 115
    functionLinenumberEnd: 141
    functionName: get_frame_size_enum
    functionSourceFile: /src/opus/tests/test_opus_encode.c
    functionUses: 0
    functionsReached:
    - test_failed
    linkageType: ''
    returnType: int
    signature: int get_frame_size_enum(int frame_size, int sampling_rate)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: opus_dred_decoder_create
      Src: /src/opus/tests/test_opus_encode.c:158,1
    - Dst: opus_dred_alloc
      Src: /src/opus/tests/test_opus_encode.c:159,1
    - Dst: malloc
      Src: /src/opus/tests/test_opus_encode.c:162,1
    - Dst: generate_music
      Src: /src/opus/tests/test_opus_encode.c:163,1
    - Dst: malloc
      Src: /src/opus/tests/test_opus_encode.c:166,1
    - Dst: opus_encode
      Src: /src/opus/tests/test_opus_encode.c:170,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_encode.c:172,1
    - Dst: opus_dred_parse
      Src: /src/opus/tests/test_opus_encode.c:177,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_encode.c:179,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:183,1
    - Dst: opus_decoder_dred_decode
      Src: /src/opus/tests/test_opus_encode.c:184,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_encode.c:186,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_encode.c:192,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_encode.c:194,1
    - Dst: opus_dred_decoder_destroy
      Src: /src/opus/tests/test_opus_encode.c:202,1
    - Dst: opus_dred_free
      Src: /src/opus/tests/test_opus_encode.c:203,1
    - Dst: free
      Src: /src/opus/tests/test_opus_encode.c:206,1
    - Dst: free
      Src: /src/opus/tests/test_opus_encode.c:207,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 40
    argCount: 4
    argNames:
    - enc
    - channels
    - frame_size
    - dec
    argTypes:
    - OpusEncoder*
    - int
    - int
    - OpusDecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 209
    functionName: test_encode
    functionSourceFile: /src/opus/tests/test_opus_encode.c
    functionUses: 0
    functionsReached:
    - opus_decoder_dred_decode
    - fprintf
    - fast_rand
    - opus_dred_decoder_create
    - opus_encode
    - malloc
    - opus_decode
    - opus_dred_decoder_destroy
    - opus_dred_parse
    - opus_dred_free
    - generate_music
    - opus_dred_alloc
    - free
    linkageType: ''
    returnType: int
    signature: int test_encode(OpusEncoder *enc, int channels, int frame_size, OpusDecoder
      *dec)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: RAND_SAMPLE
      Src: /src/opus/tests/test_opus_encode.c:238,1
    - Dst: RAND_SAMPLE
      Src: /src/opus/tests/test_opus_encode.c:239,1
    - Dst: RAND_SAMPLE
      Src: /src/opus/tests/test_opus_encode.c:240,1
    - Dst: opus_decoder_create
      Src: /src/opus/tests/test_opus_encode.c:242,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:243,1
    - Dst: opus_encoder_create
      Src: /src/opus/tests/test_opus_encode.c:245,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:246,1
    - Dst: RAND_SAMPLE
      Src: /src/opus/tests/test_opus_encode.c:249,1
    - Dst: RAND_SAMPLE
      Src: /src/opus/tests/test_opus_encode.c:250,1
    - Dst: RAND_SAMPLE
      Src: /src/opus/tests/test_opus_encode.c:251,1
    - Dst: RAND_SAMPLE
      Src: /src/opus/tests/test_opus_encode.c:252,1
    - Dst: RAND_SAMPLE
      Src: /src/opus/tests/test_opus_encode.c:253,1
    - Dst: RAND_SAMPLE
      Src: /src/opus/tests/test_opus_encode.c:254,1
    - Dst: RAND_SAMPLE
      Src: /src/opus/tests/test_opus_encode.c:255,1
    - Dst: RAND_SAMPLE
      Src: /src/opus/tests/test_opus_encode.c:256,1
    - Dst: RAND_SAMPLE
      Src: /src/opus/tests/test_opus_encode.c:257,1
    - Dst: RAND_SAMPLE
      Src: /src/opus/tests/test_opus_encode.c:258,1
    - Dst: RAND_SAMPLE
      Src: /src/opus/tests/test_opus_encode.c:259,1
    - Dst: RAND_SAMPLE
      Src: /src/opus/tests/test_opus_encode.c:260,1
    - Dst: RAND_SAMPLE
      Src: /src/opus/tests/test_opus_encode.c:261,1
    - Dst: get_frame_size_enum
      Src: /src/opus/tests/test_opus_encode.c:263,1
    - Dst: IMIN
      Src: /src/opus/tests/test_opus_encode.c:264,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:266,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/tests/test_opus_encode.c:266,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:266,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:267,1
    - Dst: OPUS_SET_FORCE_CHANNELS
      Src: /src/opus/tests/test_opus_encode.c:267,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:267,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:268,1
    - Dst: OPUS_SET_VBR
      Src: /src/opus/tests/test_opus_encode.c:268,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:268,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:269,1
    - Dst: OPUS_SET_VBR_CONSTRAINT
      Src: /src/opus/tests/test_opus_encode.c:269,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:269,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:270,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/tests/test_opus_encode.c:270,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:270,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:271,1
    - Dst: OPUS_SET_MAX_BANDWIDTH
      Src: /src/opus/tests/test_opus_encode.c:271,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:271,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:272,1
    - Dst: OPUS_SET_SIGNAL
      Src: /src/opus/tests/test_opus_encode.c:272,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:272,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:273,1
    - Dst: OPUS_SET_INBAND_FEC
      Src: /src/opus/tests/test_opus_encode.c:273,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:273,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:274,1
    - Dst: OPUS_SET_PACKET_LOSS_PERC
      Src: /src/opus/tests/test_opus_encode.c:274,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:274,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:275,1
    - Dst: OPUS_SET_LSB_DEPTH
      Src: /src/opus/tests/test_opus_encode.c:275,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:275,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:276,1
    - Dst: OPUS_SET_PREDICTION_DISABLED
      Src: /src/opus/tests/test_opus_encode.c:276,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:276,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:277,1
    - Dst: OPUS_SET_DTX
      Src: /src/opus/tests/test_opus_encode.c:277,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:277,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:278,1
    - Dst: OPUS_SET_EXPERT_FRAME_DURATION
      Src: /src/opus/tests/test_opus_encode.c:278,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:278,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:280,1
    - Dst: OPUS_SET_DRED_DURATION
      Src: /src/opus/tests/test_opus_encode.c:280,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:280,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:280,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:283,1
    - Dst: OPUS_SET_QEXT
      Src: /src/opus/tests/test_opus_encode.c:283,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:283,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:283,1
    - Dst: test_encode
      Src: /src/opus/tests/test_opus_encode.c:285,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_encode.c:286,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:294,1
    - Dst: opus_encoder_destroy
      Src: /src/opus/tests/test_opus_encode.c:298,1
    - Dst: opus_decoder_destroy
      Src: /src/opus/tests/test_opus_encode.c:299,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 48
    argCount: 2
    argNames:
    - num_encoders
    - num_setting_changes
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 211
    functionDepth: 2
    functionLinenumber: 211
    functionLinenumberEnd: 301
    functionName: fuzz_encoder_settings
    functionSourceFile: /src/opus/tests/test_opus_encode.c
    functionUses: 0
    functionsReached:
    - OPUS_SET_VBR_CONSTRAINT
    - RAND_SAMPLE
    - OPUS_SET_QEXT
    - fast_rand
    - fprintf
    - OPUS_SET_DRED_DURATION
    - OPUS_SET_VBR
    - OPUS_SET_BITRATE
    - opus_encoder_ctl
    - OPUS_SET_LSB_DEPTH
    - opus_decoder_destroy
    - opus_decoder_create
    - OPUS_SET_DTX
    - OPUS_SET_PREDICTION_DISABLED
    - OPUS_SET_MAX_BANDWIDTH
    - OPUS_SET_PACKET_LOSS_PERC
    - opus_encoder_destroy
    - OPUS_SET_INBAND_FEC
    - OPUS_SET_SIGNAL
    - OPUS_SET_EXPERT_FRAME_DURATION
    - IMIN
    - test_failed
    - test_encode
    - OPUS_SET_COMPLEXITY
    - get_frame_size_enum
    - opus_encoder_create
    - OPUS_SET_FORCE_CHANNELS
    linkageType: ''
    returnType: void
    signature: void fuzz_encoder_settings(const int num_encoders, const int num_setting_changes)
  - BBCount: 113
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_encode.c:330,1
    - Dst: fflush
      Src: /src/opus/tests/test_opus_encode.c:331,1
    - Dst: opus_encoder_create
      Src: /src/opus/tests/test_opus_encode.c:333,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:334,1
    - Dst: opus_multistream_encoder_create
      Src: /src/opus/tests/test_opus_encode.c:340,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:341,1
    - Dst: opus_multistream_encoder_create
      Src: /src/opus/tests/test_opus_encode.c:343,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:344,1
    - Dst: opus_multistream_encoder_create
      Src: /src/opus/tests/test_opus_encode.c:346,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:347,1
    - Dst: opus_multistream_encoder_create
      Src: /src/opus/tests/test_opus_encode.c:349,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:350,1
    - Dst: opus_multistream_encoder_create
      Src: /src/opus/tests/test_opus_encode.c:352,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:353,1
    - Dst: opus_multistream_encoder_create
      Src: /src/opus/tests/test_opus_encode.c:355,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:356,1
    - Dst: opus_multistream_encoder_create
      Src: /src/opus/tests/test_opus_encode.c:359,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:360,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:363,1
    - Dst: OPUS_GET_BITRATE
      Src: /src/opus/tests/test_opus_encode.c:363,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:363,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:364,1
    - Dst: OPUS_GET_LSB_DEPTH
      Src: /src/opus/tests/test_opus_encode.c:364,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:364,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:365,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:369,1
    - Dst: OPUS_MULTISTREAM_GET_ENCODER_STATE
      Src: /src/opus/tests/test_opus_encode.c:369,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:369,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:370,1
    - Dst: OPUS_GET_LSB_DEPTH
      Src: /src/opus/tests/test_opus_encode.c:370,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:370,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:371,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:372,1
    - Dst: OPUS_MULTISTREAM_GET_ENCODER_STATE
      Src: /src/opus/tests/test_opus_encode.c:372,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:372,1
    - Dst: opus_decoder_create
      Src: /src/opus/tests/test_opus_encode.c:375,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:376,1
    - Dst: opus_multistream_decoder_create
      Src: /src/opus/tests/test_opus_encode.c:378,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:379,1
    - Dst: opus_multistream_decoder_create
      Src: /src/opus/tests/test_opus_encode.c:381,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:382,1
    - Dst: malloc
      Src: /src/opus/tests/test_opus_encode.c:384,1
    - Dst: opus_decoder_get_size
      Src: /src/opus/tests/test_opus_encode.c:384,1
    - Dst: memcpy
      Src: /src/opus/tests/test_opus_encode.c:385,1
    - Dst: opus_decoder_get_size
      Src: /src/opus/tests/test_opus_encode.c:385,1
    - Dst: opus_decoder_create
      Src: /src/opus/tests/test_opus_encode.c:386,1
    - Dst: opus_decoder_create
      Src: /src/opus/tests/test_opus_encode.c:387,1
    - Dst: opus_decoder_create
      Src: /src/opus/tests/test_opus_encode.c:388,1
    - Dst: opus_decoder_create
      Src: /src/opus/tests/test_opus_encode.c:389,1
    - Dst: opus_decoder_create
      Src: /src/opus/tests/test_opus_encode.c:390,1
    - Dst: opus_decoder_create
      Src: /src/opus/tests/test_opus_encode.c:391,1
    - Dst: opus_decoder_create
      Src: /src/opus/tests/test_opus_encode.c:392,1
    - Dst: opus_decoder_create
      Src: /src/opus/tests/test_opus_encode.c:393,1
    - Dst: opus_decoder_create
      Src: /src/opus/tests/test_opus_encode.c:394,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:395,1
    - Dst: malloc
      Src: /src/opus/tests/test_opus_encode.c:400,1
    - Dst: opus_encoder_get_size
      Src: /src/opus/tests/test_opus_encode.c:400,1
    - Dst: memcpy
      Src: /src/opus/tests/test_opus_encode.c:401,1
    - Dst: opus_encoder_get_size
      Src: /src/opus/tests/test_opus_encode.c:401,1
    - Dst: memset
      Src: /src/opus/tests/test_opus_encode.c:402,1
    - Dst: opus_encoder_get_size
      Src: /src/opus/tests/test_opus_encode.c:402,1
    - Dst: opus_encoder_destroy
      Src: /src/opus/tests/test_opus_encode.c:403,1
    - Dst: malloc
      Src: /src/opus/tests/test_opus_encode.c:407,1
    - Dst: malloc
      Src: /src/opus/tests/test_opus_encode.c:408,1
    - Dst: malloc
      Src: /src/opus/tests/test_opus_encode.c:409,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:410,1
    - Dst: generate_music
      Src: /src/opus/tests/test_opus_encode.c:412,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:419,1
    - Dst: OPUS_SET_BANDWIDTH
      Src: /src/opus/tests/test_opus_encode.c:419,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:419,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:420,1
    - Dst: OPUS_SET_FORCE_MODE
      Src: /src/opus/tests/test_opus_encode.c:420,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:420,1
    - Dst: opus_encode
      Src: /src/opus/tests/test_opus_encode.c:421,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:421,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:425,1
    - Dst: OPUS_SET_VBR
      Src: /src/opus/tests/test_opus_encode.c:425,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:425,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:426,1
    - Dst: OPUS_SET_VBR_CONSTRAINT
      Src: /src/opus/tests/test_opus_encode.c:426,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:426,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:427,1
    - Dst: OPUS_SET_VBR_CONSTRAINT
      Src: /src/opus/tests/test_opus_encode.c:427,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:427,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:428,1
    - Dst: OPUS_SET_INBAND_FEC
      Src: /src/opus/tests/test_opus_encode.c:428,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:428,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:430,1
    - Dst: OPUS_SET_DRED_DURATION
      Src: /src/opus/tests/test_opus_encode.c:430,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:430,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:430,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:438,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:444,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:446,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:446,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:447,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:447,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:448,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:450,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:450,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:450,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:453,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:455,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:455,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:455,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:457,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:458,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:459,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/tests/test_opus_encode.c:459,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:459,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:461,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:461,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:462,1
    - Dst: OPUS_SET_INBAND_FEC
      Src: /src/opus/tests/test_opus_encode.c:462,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:462,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:463,1
    - Dst: OPUS_SET_FORCE_MODE
      Src: /src/opus/tests/test_opus_encode.c:463,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:463,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:464,1
    - Dst: OPUS_SET_DTX
      Src: /src/opus/tests/test_opus_encode.c:464,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:464,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:464,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:465,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/tests/test_opus_encode.c:465,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:465,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:466,1
    - Dst: OPUS_SET_FORCE_CHANNELS
      Src: /src/opus/tests/test_opus_encode.c:466,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:466,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:467,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/tests/test_opus_encode.c:467,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:467,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:468,1
    - Dst: OPUS_SET_PACKET_LOSS_PERC
      Src: /src/opus/tests/test_opus_encode.c:468,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:468,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:468,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:468,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:469,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:470,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:471,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:473,1
    - Dst: OPUS_SET_BANDWIDTH
      Src: /src/opus/tests/test_opus_encode.c:473,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:473,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:475,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:476,1
    - Dst: OPUS_SET_QEXT
      Src: /src/opus/tests/test_opus_encode.c:476,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:476,1
    - Dst: opus_encode
      Src: /src/opus/tests/test_opus_encode.c:478,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:479,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:480,1
    - Dst: OPUS_GET_FINAL_RANGE
      Src: /src/opus/tests/test_opus_encode.c:480,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:480,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:481,1
    - Dst: opus_packet_pad
      Src: /src/opus/tests/test_opus_encode.c:483,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:483,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:486,1
    - Dst: opus_packet_pad
      Src: /src/opus/tests/test_opus_encode.c:488,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:488,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:492,1
    - Dst: opus_packet_unpad
      Src: /src/opus/tests/test_opus_encode.c:495,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:496,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_encode.c:498,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:499,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:500,1
    - Dst: OPUS_GET_FINAL_RANGE
      Src: /src/opus/tests/test_opus_encode.c:500,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:500,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:501,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_encode.c:503,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:503,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:504,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_encode.c:505,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:505,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:505,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:506,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_encode.c:510,1
    - Dst: fflush
      Src: /src/opus/tests/test_opus_encode.c:511,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:515,1
    - Dst: OPUS_SET_FORCE_MODE
      Src: /src/opus/tests/test_opus_encode.c:515,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:515,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:516,1
    - Dst: OPUS_SET_FORCE_CHANNELS
      Src: /src/opus/tests/test_opus_encode.c:516,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:516,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:517,1
    - Dst: OPUS_SET_INBAND_FEC
      Src: /src/opus/tests/test_opus_encode.c:517,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:517,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:518,1
    - Dst: OPUS_SET_DTX
      Src: /src/opus/tests/test_opus_encode.c:518,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:518,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:522,1
    - Dst: OPUS_SET_VBR
      Src: /src/opus/tests/test_opus_encode.c:522,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:522,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:523,1
    - Dst: OPUS_SET_VBR_CONSTRAINT
      Src: /src/opus/tests/test_opus_encode.c:523,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:523,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:524,1
    - Dst: OPUS_SET_VBR_CONSTRAINT
      Src: /src/opus/tests/test_opus_encode.c:524,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:524,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:525,1
    - Dst: OPUS_SET_INBAND_FEC
      Src: /src/opus/tests/test_opus_encode.c:525,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:525,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:532,1
    - Dst: OPUS_SET_INBAND_FEC
      Src: /src/opus/tests/test_opus_encode.c:532,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:532,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:533,1
    - Dst: OPUS_SET_FORCE_MODE
      Src: /src/opus/tests/test_opus_encode.c:533,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:533,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:534,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:535,1
    - Dst: OPUS_SET_DTX
      Src: /src/opus/tests/test_opus_encode.c:535,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:535,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:535,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:536,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/tests/test_opus_encode.c:536,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:536,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:542,1
    - Dst: OPUS_GET_PREDICTION_DISABLED
      Src: /src/opus/tests/test_opus_encode.c:542,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:542,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:543,1
    - Dst: OPUS_SET_PREDICTION_DISABLED
      Src: /src/opus/tests/test_opus_encode.c:543,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:543,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:543,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:545,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/tests/test_opus_encode.c:545,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:545,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:546,1
    - Dst: OPUS_SET_PACKET_LOSS_PERC
      Src: /src/opus/tests/test_opus_encode.c:546,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:546,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:546,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:546,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:547,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:549,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:549,1
    - Dst: opus_multistream_decoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:550,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:550,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:551,1
    - Dst: opus_multistream_decoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:553,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:553,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:556,1
    - Dst: opus_multistream_decoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:558,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:558,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:561,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:562,1
    - Dst: OPUS_SET_QEXT
      Src: /src/opus/tests/test_opus_encode.c:562,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:562,1
    - Dst: opus_multistream_encode
      Src: /src/opus/tests/test_opus_encode.c:564,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:565,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:566,1
    - Dst: OPUS_GET_FINAL_RANGE
      Src: /src/opus/tests/test_opus_encode.c:566,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:566,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:567,1
    - Dst: opus_multistream_packet_pad
      Src: /src/opus/tests/test_opus_encode.c:569,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:569,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:572,1
    - Dst: opus_multistream_packet_pad
      Src: /src/opus/tests/test_opus_encode.c:574,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:574,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:578,1
    - Dst: opus_multistream_packet_unpad
      Src: /src/opus/tests/test_opus_encode.c:580,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:581,1
    - Dst: opus_multistream_decode
      Src: /src/opus/tests/test_opus_encode.c:584,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:585,1
    - Dst: opus_multistream_decoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:586,1
    - Dst: OPUS_GET_FINAL_RANGE
      Src: /src/opus/tests/test_opus_encode.c:586,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:586,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:587,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:589,1
    - Dst: opus_multistream_decode
      Src: /src/opus/tests/test_opus_encode.c:590,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:590,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:591,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_encode.c:595,1
    - Dst: fflush
      Src: /src/opus/tests/test_opus_encode.c:596,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:601,1
    - Dst: debruijn2
      Src: /src/opus/tests/test_opus_encode.c:604,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:617,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/tests/test_opus_encode.c:617,1
    - Dst: opus_encode
      Src: /src/opus/tests/test_opus_encode.c:619,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:620,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:623,1
    - Dst: OPUS_GET_FINAL_RANGE
      Src: /src/opus/tests/test_opus_encode.c:623,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_encode.c:625,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:626,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:628,1
    - Dst: OPUS_GET_FINAL_RANGE
      Src: /src/opus/tests/test_opus_encode.c:628,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:631,1
    - Dst: opus_packet_parse
      Src: /src/opus/tests/test_opus_encode.c:636,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:636,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:637,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:638,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_encode.c:639,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:640,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:641,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:643,1
    - Dst: OPUS_GET_FINAL_RANGE
      Src: /src/opus/tests/test_opus_encode.c:643,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:646,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_encode.c:647,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:648,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:650,1
    - Dst: OPUS_GET_FINAL_RANGE
      Src: /src/opus/tests/test_opus_encode.c:650,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:651,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:659,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:660,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:662,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_encode.c:665,1
    - Dst: fflush
      Src: /src/opus/tests/test_opus_encode.c:666,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:668,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:668,1
    - Dst: opus_encoder_destroy
      Src: /src/opus/tests/test_opus_encode.c:669,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:670,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:670,1
    - Dst: opus_multistream_encoder_destroy
      Src: /src/opus/tests/test_opus_encode.c:671,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:672,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:672,1
    - Dst: opus_decoder_destroy
      Src: /src/opus/tests/test_opus_encode.c:673,1
    - Dst: opus_multistream_decoder_ctl
      Src: /src/opus/tests/test_opus_encode.c:674,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:674,1
    - Dst: opus_multistream_decoder_destroy
      Src: /src/opus/tests/test_opus_encode.c:675,1
    - Dst: opus_multistream_decoder_destroy
      Src: /src/opus/tests/test_opus_encode.c:676,1
    - Dst: opus_decoder_destroy
      Src: /src/opus/tests/test_opus_encode.c:677,1
    - Dst: free
      Src: /src/opus/tests/test_opus_encode.c:678,1
    - Dst: free
      Src: /src/opus/tests/test_opus_encode.c:679,1
    - Dst: free
      Src: /src/opus/tests/test_opus_encode.c:680,1
    CyclomaticComplexity: 158
    EdgeCount: 158
    ICount: 351
    argCount: 1
    argNames:
    - no_fuzz
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 682
      start: 303
    functionDepth: 3
    functionLinenumber: 303
    functionLinenumberEnd: 682
    functionName: run_test1
    functionSourceFile: /src/opus/tests/test_opus_encode.c
    functionUses: 0
    functionsReached:
    - opus_multistream_packet_pad
    - opus_packet_unpad
    - opus_multistream_packet_unpad
    - opus_multistream_decoder_create
    - opus_decoder_ctl
    - OPUS_SET_VBR_CONSTRAINT
    - OPUS_GET_LSB_DEPTH
    - malloc
    - OPUS_SET_BANDWIDTH
    - OPUS_SET_QEXT
    - OPUS_GET_FINAL_RANGE
    - fprintf
    - fast_rand
    - OPUS_SET_DRED_DURATION
    - debruijn2
    - OPUS_SET_VBR
    - opus_multistream_encoder_destroy
    - OPUS_SET_BITRATE
    - opus_packet_pad
    - memset
    - opus_decode
    - opus_encoder_ctl
    - opus_encoder_get_size
    - OPUS_GET_PREDICTION_DISABLED
    - generate_music
    - opus_decoder_destroy
    - opus_packet_parse
    - opus_decoder_create
    - OPUS_SET_DTX
    - opus_decoder_get_size
    - OPUS_SET_PREDICTION_DISABLED
    - OPUS_MULTISTREAM_GET_ENCODER_STATE
    - OPUS_SET_PACKET_LOSS_PERC
    - opus_multistream_decode
    - opus_encoder_destroy
    - memcpy
    - opus_encode
    - OPUS_SET_INBAND_FEC
    - OPUS_GET_BITRATE
    - opus_multistream_encoder_create
    - opus_multistream_decoder_ctl
    - test_failed
    - opus_multistream_encoder_ctl
    - OPUS_SET_COMPLEXITY
    - fflush
    - OPUS_SET_FORCE_MODE
    - opus_encoder_create
    - opus_multistream_decoder_destroy
    - OPUS_SET_FORCE_CHANNELS
    - opus_multistream_encode
    - free
    linkageType: ''
    returnType: int
    signature: int run_test1(int no_fuzz)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_encode.c:686,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 687
      start: 684
    functionDepth: 0
    functionLinenumber: 684
    functionLinenumberEnd: 687
    functionName: print_usage
    functionSourceFile: /src/opus/tests/test_opus_encode.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void print_usage(char* _argv[])
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: getenv
      Src: /src/opus/tests/test_opus_encode.c:700,1
    - Dst: strtol
      Src: /src/opus/tests/test_opus_encode.c:702,1
    - Dst: atoi
      Src: /src/opus/tests/test_opus_encode.c:706,1
    - Dst: time
      Src: /src/opus/tests/test_opus_encode.c:709,1
    - Dst: getpid
      Src: /src/opus/tests/test_opus_encode.c:709,1
    - Dst: strcmp
      Src: /src/opus/tests/test_opus_encode.c:714,1
    - Dst: strtol
      Src: /src/opus/tests/test_opus_encode.c:715,1
    - Dst: print_usage
      Src: /src/opus/tests/test_opus_encode.c:717,1
    - Dst: strtol
      Src: /src/opus/tests/test_opus_encode.c:720,1
    - Dst: print_usage
      Src: /src/opus/tests/test_opus_encode.c:722,1
    - Dst: print_usage
      Src: /src/opus/tests/test_opus_encode.c:728,1
    - Dst: opus_get_version_string
      Src: /src/opus/tests/test_opus_encode.c:733,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_encode.c:734,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_encode.c:735,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_encode.c:735,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_encode.c:736,1
    - Dst: regression_test
      Src: /src/opus/tests/test_opus_encode.c:738,1
    - Dst: run_test1
      Src: /src/opus/tests/test_opus_encode.c:743,1
    - Dst: getenv
      Src: /src/opus/tests/test_opus_encode.c:743,1
    - Dst: getenv
      Src: /src/opus/tests/test_opus_encode.c:746,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_encode.c:747,1
    - Dst: fuzz_encoder_settings
      Src: /src/opus/tests/test_opus_encode.c:749,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_encode.c:752,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 45
    argCount: 2
    argNames:
    - _argc
    - _argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 755
      start: 689
    functionDepth: 4
    functionLinenumber: 689
    functionLinenumberEnd: 755
    functionName: main
    functionSourceFile: /src/opus/tests/test_opus_encode.c
    functionUses: 0
    functionsReached:
    - fprintf
    - test_failed
    - fast_rand
    - getenv
    - regression_test
    - atoi
    - strcmp
    - fuzz_encoder_settings
    - opus_get_version_string
    - getpid
    - run_test1
    - strtol
    - print_usage
    - time
    linkageType: ''
    returnType: int
    signature: int main(int _argc, char **_argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: abs
      Src: /src/opus/tests/test_opus_projection.c:60,1
    - Dst: RES2INT16
      Src: /src/opus/tests/test_opus_projection.c:60,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - a
    - b
    - size
    - tolerance
    argTypes:
    - opus_res*
    - opus_int16*
    - int
    - opus_int16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 64
    functionName: assert_is_equal
    functionSourceFile: /src/opus/tests/test_opus_projection.c
    functionUses: 0
    functionsReached:
    - RES2INT16
    - abs
    linkageType: ''
    returnType: int
    signature: "int assert_is_equal(\n  const opus_res *a, const opus_int16 *b, int
      size, opus_int16 tolerance)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: abs
      Src: /src/opus/tests/test_opus_projection.c:71,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 4
    argNames:
    - a
    - b
    - size
    - tolerance
    argTypes:
    - opus_int16*
    - opus_int16*
    - int
    - opus_int16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 74
    functionName: assert_is_equal_short
    functionSourceFile: /src/opus/tests/test_opus_projection.c
    functionUses: 0
    functionsReached:
    - abs
    linkageType: ''
    returnType: int
    signature: "int assert_is_equal_short(\n  const opus_int16 *a, const opus_int16
      *b, int size, opus_int16 tolerance)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: opus_alloc
      Src: /src/opus/tests/test_opus_projection.c:98,1
    - Dst: opus_alloc
      Src: /src/opus/tests/test_opus_projection.c:99,1
    - Dst: opus_alloc
      Src: /src/opus/tests/test_opus_projection.c:100,1
    - Dst: mapping_matrix_get_size
      Src: /src/opus/tests/test_opus_projection.c:103,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_projection.c:106,1
    - Dst: opus_alloc
      Src: /src/opus/tests/test_opus_projection.c:108,1
    - Dst: mapping_matrix_init
      Src: /src/opus/tests/test_opus_projection.c:109,1
    - Dst: INT16TORES
      Src: /src/opus/tests/test_opus_projection.c:116,1
    - Dst: mapping_matrix_multiply_channel_in_short
      Src: /src/opus/tests/test_opus_projection.c:124,1
    - Dst: assert_is_equal
      Src: /src/opus/tests/test_opus_projection.c:128,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_projection.c:130,1
    - Dst: mapping_matrix_multiply_channel_out_short
      Src: /src/opus/tests/test_opus_projection.c:137,1
    - Dst: assert_is_equal_short
      Src: /src/opus/tests/test_opus_projection.c:141,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_projection.c:143,1
    - Dst: mapping_matrix_multiply_channel_in_float
      Src: /src/opus/tests/test_opus_projection.c:151,1
    - Dst: assert_is_equal
      Src: /src/opus/tests/test_opus_projection.c:155,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_projection.c:157,1
    - Dst: mapping_matrix_multiply_channel_out_float
      Src: /src/opus/tests/test_opus_projection.c:164,1
    - Dst: assert_is_equal
      Src: /src/opus/tests/test_opus_projection.c:168,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_projection.c:170,1
    - Dst: opus_free
      Src: /src/opus/tests/test_opus_projection.c:173,1
    - Dst: opus_free
      Src: /src/opus/tests/test_opus_projection.c:174,1
    - Dst: opus_free
      Src: /src/opus/tests/test_opus_projection.c:175,1
    - Dst: opus_free
      Src: /src/opus/tests/test_opus_projection.c:176,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 48
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 76
    functionDepth: 2
    functionLinenumber: 76
    functionLinenumberEnd: 177
    functionName: test_simple_matrix
    functionSourceFile: /src/opus/tests/test_opus_projection.c
    functionUses: 0
    functionsReached:
    - assert_is_equal
    - mapping_matrix_multiply_channel_in_short
    - mapping_matrix_multiply_channel_in_float
    - test_failed
    - mapping_matrix_multiply_channel_out_short
    - INT16TORES
    - opus_free
    - mapping_matrix_multiply_channel_out_float
    - assert_is_equal_short
    - mapping_matrix_init
    - mapping_matrix_get_size
    - opus_alloc
    linkageType: ''
    returnType: void
    signature: void test_simple_matrix(void)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: floor
      Src: /src/opus/tests/test_opus_projection.c:192,1
    - Dst: sqrt
      Src: /src/opus/tests/test_opus_projection.c:192,1
    - Dst: opus_projection_ambisonics_encoder_create
      Src: /src/opus/tests/test_opus_projection.c:198,1
    - Dst: opus_projection_encoder_ctl
      Src: /src/opus/tests/test_opus_projection.c:205,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_projection.c:208,1
    - Dst: opus_alloc
      Src: /src/opus/tests/test_opus_projection.c:210,1
    - Dst: opus_projection_encoder_ctl
      Src: /src/opus/tests/test_opus_projection.c:211,1
    - Dst: opus_projection_encoder_destroy
      Src: /src/opus/tests/test_opus_projection.c:214,1
    - Dst: opus_projection_decoder_create
      Src: /src/opus/tests/test_opus_projection.c:216,1
    - Dst: opus_projection_decoder_destroy
      Src: /src/opus/tests/test_opus_projection.c:220,1
    - Dst: opus_free
      Src: /src/opus/tests/test_opus_projection.c:222,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_projection.c:230,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_projection.c:231,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_projection.c:233,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_projection.c:235,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 23
    argCount: 2
    argNames:
    - channels
    - mapping_family
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 237
    functionName: test_creation_arguments
    functionSourceFile: /src/opus/tests/test_opus_projection.c
    functionUses: 0
    functionsReached:
    - fprintf
    - test_failed
    - opus_projection_encoder_destroy
    - opus_projection_ambisonics_encoder_create
    - opus_projection_decoder_destroy
    - floor
    - opus_free
    - opus_projection_decoder_create
    - sqrt
    - opus_projection_encoder_ctl
    - opus_alloc
    linkageType: ''
    returnType: void
    signature: void test_creation_arguments(const int channels, const int mapping_family)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/opus/tests/test_opus_projection.c:243,1
    - Dst: malloc
      Src: /src/opus/tests/test_opus_projection.c:244,1
    - Dst: malloc
      Src: /src/opus/tests/test_opus_projection.c:245,1
    - Dst: malloc
      Src: /src/opus/tests/test_opus_projection.c:246,1
    - Dst: memset
      Src: /src/opus/tests/test_opus_projection.c:247,1
    - Dst: memset
      Src: /src/opus/tests/test_opus_projection.c:248,1
    - Dst: memset
      Src: /src/opus/tests/test_opus_projection.c:249,1
    - Dst: memset
      Src: /src/opus/tests/test_opus_projection.c:250,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_projection.c:260,1
    - Dst: free
      Src: /src/opus/tests/test_opus_projection.c:269,1
    - Dst: free
      Src: /src/opus/tests/test_opus_projection.c:270,1
    - Dst: free
      Src: /src/opus/tests/test_opus_projection.c:271,1
    - Dst: free
      Src: /src/opus/tests/test_opus_projection.c:272,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 30
    argCount: 3
    argNames:
    - buf
    - len
    - channels
    argTypes:
    - short*
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 239
    functionDepth: 0
    functionLinenumber: 239
    functionLinenumberEnd: 273
    functionName: generate_music
    functionSourceFile: /src/opus/tests/test_opus_projection.c
    functionUses: 2
    functionsReached:
    - malloc
    - fast_rand
    - free
    - memset
    linkageType: ''
    returnType: void
    signature: void generate_music(short *buf, opus_int32 len, opus_int32 channels)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/opus/tests/test_opus_projection.c:294,1
    - Dst: malloc
      Src: /src/opus/tests/test_opus_projection.c:295,1
    - Dst: opus_projection_ambisonics_encoder_create
      Src: /src/opus/tests/test_opus_projection.c:297,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_projection.c:300,1
    - Dst: free
      Src: /src/opus/tests/test_opus_projection.c:303,1
    - Dst: free
      Src: /src/opus/tests/test_opus_projection.c:304,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_projection.c:305,1
    - Dst: opus_projection_encoder_ctl
      Src: /src/opus/tests/test_opus_projection.c:308,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/tests/test_opus_projection.c:309,1
    - Dst: opus_projection_encoder_ctl
      Src: /src/opus/tests/test_opus_projection.c:315,1
    - Dst: opus_alloc
      Src: /src/opus/tests/test_opus_projection.c:322,1
    - Dst: opus_projection_encoder_ctl
      Src: /src/opus/tests/test_opus_projection.c:323,1
    - Dst: opus_projection_decoder_create
      Src: /src/opus/tests/test_opus_projection.c:326,1
    - Dst: opus_free
      Src: /src/opus/tests/test_opus_projection.c:328,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_projection.c:331,1
    - Dst: generate_music
      Src: /src/opus/tests/test_opus_projection.c:337,1
    - Dst: opus_projection_encode
      Src: /src/opus/tests/test_opus_projection.c:339,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_projection.c:342,1
    - Dst: opus_projection_decode
      Src: /src/opus/tests/test_opus_projection.c:346,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_projection.c:349,1
    - Dst: opus_projection_decoder_destroy
      Src: /src/opus/tests/test_opus_projection.c:353,1
    - Dst: opus_projection_encoder_destroy
      Src: /src/opus/tests/test_opus_projection.c:354,1
    - Dst: free
      Src: /src/opus/tests/test_opus_projection.c:355,1
    - Dst: free
      Src: /src/opus/tests/test_opus_projection.c:356,1
    - Dst: free
      Src: /src/opus/tests/test_opus_projection.c:359,1
    - Dst: free
      Src: /src/opus/tests/test_opus_projection.c:360,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_projection.c:361,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 52
    argCount: 3
    argNames:
    - bitrate
    - channels
    - mapping_family
    argTypes:
    - opus_int32
    - opus_int32
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 275
    functionDepth: 1
    functionLinenumber: 275
    functionLinenumberEnd: 362
    functionName: test_encode_decode
    functionSourceFile: /src/opus/tests/test_opus_projection.c
    functionUses: 0
    functionsReached:
    - generate_music
    - opus_projection_decode
    - test_failed
    - OPUS_SET_BITRATE
    - opus_projection_encoder_destroy
    - opus_projection_ambisonics_encoder_create
    - opus_free
    - opus_projection_decoder_destroy
    - malloc
    - opus_projection_encode
    - opus_projection_decoder_create
    - fprintf
    - opus_projection_encoder_ctl
    - opus_alloc
    - free
    linkageType: ''
    returnType: void
    signature: "void test_encode_decode(opus_int32 bitrate, opus_int32 channels,\n
      \                       const int mapping_family)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test_simple_matrix
      Src: /src/opus/tests/test_opus_projection.c:372,1
    - Dst: test_creation_arguments
      Src: /src/opus/tests/test_opus_projection.c:376,1
    - Dst: test_encode_decode
      Src: /src/opus/tests/test_opus_projection.c:379,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_projection.c:381,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - _argc
    - _argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 383
      start: 364
    functionDepth: 3
    functionLinenumber: 364
    functionLinenumberEnd: 383
    functionName: main
    functionSourceFile: /src/opus/tests/test_opus_projection.c
    functionUses: 0
    functionsReached:
    - test_simple_matrix
    - test_encode_decode
    - fprintf
    - test_creation_arguments
    linkageType: ''
    returnType: int
    signature: int main(int _argc, char **_argv)
  - BBCount: 59
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/opus/tests/test_opus_decode.c:69,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:70,1
    - Dst: malloc
      Src: /src/opus/tests/test_opus_decode.c:72,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_decode.c:76,1
    - Dst: opus_decoder_create
      Src: /src/opus/tests/test_opus_decode.c:82,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:83,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_decode.c:84,1
    - Dst: malloc
      Src: /src/opus/tests/test_opus_decode.c:88,1
    - Dst: opus_decoder_get_size
      Src: /src/opus/tests/test_opus_decode.c:88,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:89,1
    - Dst: memcpy
      Src: /src/opus/tests/test_opus_decode.c:90,1
    - Dst: opus_decoder_get_size
      Src: /src/opus/tests/test_opus_decode.c:90,1
    - Dst: memset
      Src: /src/opus/tests/test_opus_decode.c:91,1
    - Dst: opus_decoder_get_size
      Src: /src/opus/tests/test_opus_decode.c:91,1
    - Dst: opus_decoder_destroy
      Src: /src/opus/tests/test_opus_decode.c:92,1
    - Dst: printf
      Src: /src/opus/tests/test_opus_decode.c:93,1
    - Dst: opus_decoder_get_size
      Src: /src/opus/tests/test_opus_decode.c:98,1
    - Dst: malloc
      Src: /src/opus/tests/test_opus_decode.c:99,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:100,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_decode.c:109,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/tests/test_opus_decode.c:109,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_decode.c:109,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_decode.c:112,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:113,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_decode.c:114,1
    - Dst: OPUS_GET_LAST_PACKET_DURATION
      Src: /src/opus/tests/test_opus_decode.c:114,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:114,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:115,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_decode.c:118,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:119,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_decode.c:122,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:123,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_decode.c:124,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:125,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_decode.c:126,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:127,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_decode.c:128,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_decode.c:128,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:129,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_decode.c:130,1
    - Dst: OPUS_GET_LAST_PACKET_DURATION
      Src: /src/opus/tests/test_opus_decode.c:130,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:130,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:131,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_decode.c:134,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:135,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_decode.c:139,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:140,1
    - Dst: OPUS_GNUC_PREREQ
      Src: /src/opus/tests/test_opus_decode.c:141,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_decode.c:145,1
    - Dst: OPUS_GNUC_PREREQ
      Src: /src/opus/tests/test_opus_decode.c:146,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:149,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:150,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_decode.c:153,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:154,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_decode.c:155,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:156,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_decode.c:157,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:158,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_decode.c:161,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:162,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_decode.c:165,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:165,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_decode.c:168,1
    - Dst: opus_packet_get_nb_channels
      Src: /src/opus/tests/test_opus_decode.c:178,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:179,1
    - Dst: opus_decoder_get_nb_samples
      Src: /src/opus/tests/test_opus_decode.c:182,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:183,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_decode.c:192,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/tests/test_opus_decode.c:192,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_decode.c:192,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_decode.c:194,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:195,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_decode.c:196,1
    - Dst: OPUS_GET_LAST_PACKET_DURATION
      Src: /src/opus/tests/test_opus_decode.c:196,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:196,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:197,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_decode.c:198,1
    - Dst: OPUS_GET_FINAL_RANGE
      Src: /src/opus/tests/test_opus_decode.c:198,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:200,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_decode.c:210,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/tests/test_opus_decode.c:210,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_decode.c:210,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_decode.c:212,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:213,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_decode.c:214,1
    - Dst: OPUS_GET_LAST_PACKET_DURATION
      Src: /src/opus/tests/test_opus_decode.c:214,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:214,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:215,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_decode.c:221,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:222,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_decode.c:223,1
    - Dst: OPUS_GET_LAST_PACKET_DURATION
      Src: /src/opus/tests/test_opus_decode.c:223,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:223,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:224,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_decode.c:226,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:227,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_decode.c:230,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_decode.c:234,1
    - Dst: free
      Src: /src/opus/tests/test_opus_decode.c:235,1
    - Dst: opus_decoder_destroy
      Src: /src/opus/tests/test_opus_decode.c:236,1
    - Dst: printf
      Src: /src/opus/tests/test_opus_decode.c:237,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:242,1
    - Dst: free
      Src: /src/opus/tests/test_opus_decode.c:244,1
    - Dst: free
      Src: /src/opus/tests/test_opus_decode.c:245,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_decode.c:256,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_decode.c:260,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_decode.c:268,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:269,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_decode.c:270,1
    - Dst: OPUS_GET_FINAL_RANGE
      Src: /src/opus/tests/test_opus_decode.c:270,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:273,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_decode.c:274,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_decode.c:276,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_decode.c:279,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_decode.c:286,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:287,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_decode.c:288,1
    - Dst: OPUS_GET_FINAL_RANGE
      Src: /src/opus/tests/test_opus_decode.c:288,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:291,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_decode.c:292,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_decode.c:295,1
    - Dst: opus_decoder_get_nb_samples
      Src: /src/opus/tests/test_opus_decode.c:300,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_decode.c:304,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_decode.c:308,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/tests/test_opus_decode.c:308,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_decode.c:308,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_decode.c:310,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:311,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_decode.c:312,1
    - Dst: OPUS_GET_FINAL_RANGE
      Src: /src/opus/tests/test_opus_decode.c:312,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:314,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_decode.c:318,1
    - Dst: debruijn2
      Src: /src/opus/tests/test_opus_decode.c:320,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_decode.c:321,1
    - Dst: opus_decoder_get_nb_samples
      Src: /src/opus/tests/test_opus_decode.c:326,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_decode.c:327,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_decode.c:327,1
    - Dst: memcpy
      Src: /src/opus/tests/test_opus_decode.c:328,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_decode.c:329,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:329,1
    - Dst: memcpy
      Src: /src/opus/tests/test_opus_decode.c:330,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_decode.c:331,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:331,1
    - Dst: memcpy
      Src: /src/opus/tests/test_opus_decode.c:332,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_decode.c:333,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:333,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_decode.c:338,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/tests/test_opus_decode.c:338,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_decode.c:338,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_decode.c:340,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:341,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:343,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_decode.c:344,1
    - Dst: OPUS_GET_LAST_PACKET_DURATION
      Src: /src/opus/tests/test_opus_decode.c:344,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:344,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:345,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_decode.c:348,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_decode.c:350,1
    - Dst: rand
      Src: /src/opus/tests/test_opus_decode.c:351,1
    - Dst: opus_decoder_get_nb_samples
      Src: /src/opus/tests/test_opus_decode.c:356,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/tests/test_opus_decode.c:360,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/tests/test_opus_decode.c:360,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_decode.c:360,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_decode.c:362,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_decode.c:362,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_decode.c:363,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:364,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_decode.c:367,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_decode.c:374,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_decode.c:380,1
    - Dst: opus_decode
      Src: /src/opus/tests/test_opus_decode.c:381,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:382,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_decode.c:384,1
    - Dst: free
      Src: /src/opus/tests/test_opus_decode.c:387,1
    - Dst: opus_decoder_destroy
      Src: /src/opus/tests/test_opus_decode.c:388,1
    - Dst: printf
      Src: /src/opus/tests/test_opus_decode.c:389,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:394,1
    - Dst: free
      Src: /src/opus/tests/test_opus_decode.c:396,1
    - Dst: free
      Src: /src/opus/tests/test_opus_decode.c:397,1
    CyclomaticComplexity: 103
    EdgeCount: 103
    ICount: 291
    argCount: 1
    argNames:
    - no_fuzz
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 399
      start: 51
    functionDepth: 3
    functionLinenumber: 51
    functionLinenumberEnd: 399
    functionName: test_decoder_code0
    functionSourceFile: /src/opus/tests/test_opus_decode.c
    functionUses: 0
    functionsReached:
    - opus_decoder_ctl
    - malloc
    - OPUS_GET_FINAL_RANGE
    - fast_rand
    - fprintf
    - opus_decoder_get_nb_samples
    - OPUS_GNUC_PREREQ
    - opus_packet_get_nb_channels
    - memset
    - opus_decode
    - opus_decoder_destroy
    - opus_decoder_create
    - opus_decoder_get_size
    - printf
    - rand
    - memcpy
    - OPUS_GET_LAST_PACKET_DURATION
    - test_failed
    - OPUS_SET_COMPLEXITY
    - debruijn2
    - free
    linkageType: ''
    returnType: int
    signature: int test_decoder_code0(int no_fuzz)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_decode.c:407,1
    - Dst: opus_pcm_soft_clip
      Src: /src/opus/tests/test_opus_decode.c:414,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:417,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:418,1
    - Dst: opus_pcm_soft_clip
      Src: /src/opus/tests/test_opus_decode.c:427,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:430,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:431,1
    - Dst: opus_pcm_soft_clip
      Src: /src/opus/tests/test_opus_decode.c:434,1
    - Dst: opus_pcm_soft_clip
      Src: /src/opus/tests/test_opus_decode.c:435,1
    - Dst: opus_pcm_soft_clip
      Src: /src/opus/tests/test_opus_decode.c:436,1
    - Dst: opus_pcm_soft_clip
      Src: /src/opus/tests/test_opus_decode.c:437,1
    - Dst: opus_pcm_soft_clip
      Src: /src/opus/tests/test_opus_decode.c:438,1
    - Dst: opus_pcm_soft_clip
      Src: /src/opus/tests/test_opus_decode.c:439,1
    - Dst: printf
      Src: /src/opus/tests/test_opus_decode.c:440,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 33
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 441
      start: 402
    functionDepth: 1
    functionLinenumber: 402
    functionLinenumberEnd: 441
    functionName: test_soft_clip
    functionSourceFile: /src/opus/tests/test_opus_decode.c
    functionUses: 0
    functionsReached:
    - opus_pcm_soft_clip
    - printf
    - test_failed
    - fprintf
    linkageType: ''
    returnType: void
    signature: void test_soft_clip(void)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_decode.c:452,1
    - Dst: getenv
      Src: /src/opus/tests/test_opus_decode.c:457,1
    - Dst: atoi
      Src: /src/opus/tests/test_opus_decode.c:458,1
    - Dst: atoi
      Src: /src/opus/tests/test_opus_decode.c:461,1
    - Dst: time
      Src: /src/opus/tests/test_opus_decode.c:464,1
    - Dst: getpid
      Src: /src/opus/tests/test_opus_decode.c:464,1
    - Dst: opus_get_version_string
      Src: /src/opus/tests/test_opus_decode.c:467,1
    - Dst: test_failed
      Src: /src/opus/tests/test_opus_decode.c:468,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_decode.c:469,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_decode.c:469,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_decode.c:470,1
    - Dst: test_decoder_code0
      Src: /src/opus/tests/test_opus_decode.c:475,1
    - Dst: getenv
      Src: /src/opus/tests/test_opus_decode.c:475,1
    - Dst: test_soft_clip
      Src: /src/opus/tests/test_opus_decode.c:477,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 2
    argNames:
    - _argc
    - _argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 481
      start: 444
    functionDepth: 4
    functionLinenumber: 444
    functionLinenumberEnd: 481
    functionName: main
    functionSourceFile: /src/opus/tests/test_opus_decode.c
    functionUses: 0
    functionsReached:
    - test_decoder_code0
    - fast_rand
    - test_failed
    - test_soft_clip
    - getenv
    - atoi
    - opus_get_version_string
    - getpid
    - fprintf
    - time
    linkageType: ''
    returnType: int
    signature: int main(int _argc, char **_argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_packet_extensions_generate
      Src: /src/opus/tests/test_opus_extensions.c:58,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:59,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:62,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:66,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:69,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:71,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:75,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:78,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:81,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:83,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:85,1
    - Dst: memcmp
      Src: /src/opus/tests/test_opus_extensions.c:85,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:90,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:91,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:94,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:97,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:102,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:103,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:106,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:109,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:111,1
    - Dst: memcmp
      Src: /src/opus/tests/test_opus_extensions.c:111,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 112
    functionName: test_extensions_generate_success
    functionSourceFile: /src/opus/tests/test_opus_extensions.c
    functionUses: 0
    functionsReached:
    - expect_true
    - opus_packet_extensions_generate
    - memcmp
    linkageType: ''
    returnType: void
    signature: void test_extensions_generate_success(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_packet_extensions_generate
      Src: /src/opus/tests/test_opus_extensions.c:120,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 122
    functionName: test_extensions_generate_zero
    functionSourceFile: /src/opus/tests/test_opus_extensions.c
    functionUses: 0
    functionsReached:
    - expect_true
    - opus_packet_extensions_generate
    linkageType: ''
    returnType: void
    signature: void test_extensions_generate_zero(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_packet_extensions_generate
      Src: /src/opus/tests/test_opus_extensions.c:136,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 138
    functionName: test_extensions_generate_no_padding
    functionSourceFile: /src/opus/tests/test_opus_extensions.c
    functionUses: 0
    functionsReached:
    - expect_true
    - opus_packet_extensions_generate
    linkageType: ''
    returnType: void
    signature: void test_extensions_generate_no_padding(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_packet_extensions_generate
      Src: /src/opus/tests/test_opus_extensions.c:161,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:162,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:166,1
    - Dst: opus_packet_extensions_generate
      Src: /src/opus/tests/test_opus_extensions.c:177,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:179,1
    - Dst: opus_packet_extensions_generate
      Src: /src/opus/tests/test_opus_extensions.c:187,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:189,1
    - Dst: opus_packet_extensions_generate
      Src: /src/opus/tests/test_opus_extensions.c:197,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:199,1
    - Dst: opus_packet_extensions_generate
      Src: /src/opus/tests/test_opus_extensions.c:207,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:209,1
    - Dst: opus_packet_extensions_generate
      Src: /src/opus/tests/test_opus_extensions.c:217,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:219,1
    - Dst: opus_packet_extensions_generate
      Src: /src/opus/tests/test_opus_extensions.c:227,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:229,1
    - Dst: opus_packet_extensions_generate
      Src: /src/opus/tests/test_opus_extensions.c:237,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:239,1
    - Dst: opus_packet_extensions_generate
      Src: /src/opus/tests/test_opus_extensions.c:247,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:249,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 35
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 251
    functionName: test_extensions_generate_fail
    functionSourceFile: /src/opus/tests/test_opus_extensions.c
    functionUses: 0
    functionsReached:
    - expect_true
    - opus_packet_extensions_generate
    linkageType: ''
    returnType: void
    signature: void test_extensions_generate_fail(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_packet_extensions_generate
      Src: /src/opus/tests/test_opus_extensions.c:269,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:270,1
    - Dst: opus_packet_extensions_count
      Src: /src/opus/tests/test_opus_extensions.c:271,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:272,1
    - Dst: opus_packet_extensions_parse
      Src: /src/opus/tests/test_opus_extensions.c:273,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:275,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:277,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:278,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:279,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:280,1
    - Dst: memcmp
      Src: /src/opus/tests/test_opus_extensions.c:280,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:282,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:283,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:284,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:285,1
    - Dst: memcmp
      Src: /src/opus/tests/test_opus_extensions.c:285,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:287,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:288,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:289,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:291,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:292,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:293,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:294,1
    - Dst: memcmp
      Src: /src/opus/tests/test_opus_extensions.c:294,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 253
    functionDepth: 1
    functionLinenumber: 253
    functionLinenumberEnd: 295
    functionName: test_extensions_parse_success
    functionSourceFile: /src/opus/tests/test_opus_extensions.c
    functionUses: 0
    functionsReached:
    - opus_packet_extensions_parse
    - memcmp
    - expect_true
    - opus_packet_extensions_count
    - opus_packet_extensions_generate
    linkageType: ''
    returnType: void
    signature: void test_extensions_parse_success(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_packet_extensions_generate
      Src: /src/opus/tests/test_opus_extensions.c:307,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:308,1
    - Dst: opus_packet_extensions_parse
      Src: /src/opus/tests/test_opus_extensions.c:312,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:313,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 297
    functionDepth: 1
    functionLinenumber: 297
    functionLinenumberEnd: 314
    functionName: test_extensions_parse_zero
    functionSourceFile: /src/opus/tests/test_opus_extensions.c
    functionUses: 0
    functionsReached:
    - expect_true
    - opus_packet_extensions_generate
    - opus_packet_extensions_parse
    linkageType: ''
    returnType: void
    signature: void test_extensions_parse_zero(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_packet_extensions_generate
      Src: /src/opus/tests/test_opus_extensions.c:334,1
    - Dst: opus_packet_extensions_parse
      Src: /src/opus/tests/test_opus_extensions.c:338,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:340,1
    - Dst: opus_packet_extensions_count
      Src: /src/opus/tests/test_opus_extensions.c:343,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:344,1
    - Dst: opus_packet_extensions_generate
      Src: /src/opus/tests/test_opus_extensions.c:348,1
    - Dst: opus_packet_extensions_parse
      Src: /src/opus/tests/test_opus_extensions.c:350,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:351,1
    - Dst: opus_packet_extensions_count
      Src: /src/opus/tests/test_opus_extensions.c:355,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:356,1
    - Dst: opus_packet_extensions_parse
      Src: /src/opus/tests/test_opus_extensions.c:360,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:362,1
    - Dst: opus_packet_extensions_count
      Src: /src/opus/tests/test_opus_extensions.c:366,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:367,1
    - Dst: opus_packet_extensions_generate
      Src: /src/opus/tests/test_opus_extensions.c:371,1
    - Dst: opus_packet_extensions_parse
      Src: /src/opus/tests/test_opus_extensions.c:372,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:374,1
    - Dst: opus_packet_extensions_generate
      Src: /src/opus/tests/test_opus_extensions.c:378,1
    - Dst: opus_packet_extensions_parse
      Src: /src/opus/tests/test_opus_extensions.c:382,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:384,1
    - Dst: opus_packet_extensions_count
      Src: /src/opus/tests/test_opus_extensions.c:387,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:388,1
    - Dst: malloc
      Src: /src/opus/tests/test_opus_extensions.c:394,1
    - Dst: memset
      Src: /src/opus/tests/test_opus_extensions.c:397,1
    - Dst: opus_packet_extensions_parse
      Src: /src/opus/tests/test_opus_extensions.c:399,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:400,1
    - Dst: free
      Src: /src/opus/tests/test_opus_extensions.c:401,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 40
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 316
    functionDepth: 1
    functionLinenumber: 316
    functionLinenumberEnd: 403
    functionName: test_extensions_parse_fail
    functionSourceFile: /src/opus/tests/test_opus_extensions.c
    functionUses: 0
    functionsReached:
    - opus_packet_extensions_parse
    - expect_true
    - memset
    - malloc
    - opus_packet_extensions_count
    - opus_packet_extensions_generate
    - free
    linkageType: ''
    returnType: void
    signature: void test_extensions_parse_fail(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:418,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:424,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:426,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:428,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:432,1
    - Dst: memcmp
      Src: /src/opus/tests/test_opus_extensions.c:433,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 3
    argNames:
    - ext_in
    - ext_out
    - nb_ext
    argTypes:
    - opus_extension_data*
    - opus_extension_data*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 438
      start: 408
    functionDepth: 1
    functionLinenumber: 408
    functionLinenumberEnd: 438
    functionName: check_ext_data
    functionSourceFile: /src/opus/tests/test_opus_extensions.c
    functionUses: 0
    functionsReached:
    - expect_true
    - memcmp
    linkageType: ''
    returnType: void
    signature: "void check_ext_data(const opus_extension_data *ext_in,\n const opus_extension_data
      *ext_out, opus_int32 nb_ext)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: opus_packet_extensions_generate
      Src: /src/opus/tests/test_opus_extensions.c:500,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:502,1
    - Dst: opus_packet_extensions_count_ext
      Src: /src/opus/tests/test_opus_extensions.c:504,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:505,1
    - Dst: opus_packet_extensions_parse_ext
      Src: /src/opus/tests/test_opus_extensions.c:507,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:509,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:510,1
    - Dst: check_ext_data
      Src: /src/opus/tests/test_opus_extensions.c:511,1
    - Dst: memmove
      Src: /src/opus/tests/test_opus_extensions.c:522,1
    - Dst: memmove
      Src: /src/opus/tests/test_opus_extensions.c:531,1
    - Dst: opus_packet_extensions_count_ext
      Src: /src/opus/tests/test_opus_extensions.c:542,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:543,1
    - Dst: opus_packet_extensions_parse_ext
      Src: /src/opus/tests/test_opus_extensions.c:545,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:547,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:548,1
    - Dst: check_ext_data
      Src: /src/opus/tests/test_opus_extensions.c:549,1
    - Dst: memmove
      Src: /src/opus/tests/test_opus_extensions.c:552,1
    - Dst: memmove
      Src: /src/opus/tests/test_opus_extensions.c:556,1
    - Dst: opus_packet_extensions_count_ext
      Src: /src/opus/tests/test_opus_extensions.c:561,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:562,1
    - Dst: opus_packet_extensions_parse_ext
      Src: /src/opus/tests/test_opus_extensions.c:564,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:566,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:567,1
    - Dst: check_ext_data
      Src: /src/opus/tests/test_opus_extensions.c:568,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 54
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 570
      start: 442
    functionDepth: 2
    functionLinenumber: 442
    functionLinenumberEnd: 570
    functionName: test_extensions_repeating
    functionSourceFile: /src/opus/tests/test_opus_extensions.c
    functionUses: 0
    functionsReached:
    - opus_packet_extensions_parse_ext
    - opus_packet_extensions_count_ext
    - check_ext_data
    - expect_true
    - memmove
    - opus_packet_extensions_generate
    linkageType: ''
    returnType: void
    signature: void test_extensions_repeating(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_extensions.c:590,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_extensions.c:592,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_extensions.c:593,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_extensions.c:599,1
    - Dst: opus_packet_extensions_parse
      Src: /src/opus/tests/test_opus_extensions.c:601,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:602,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:606,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:608,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:609,1
    - Dst: opus_packet_extensions_generate
      Src: /src/opus/tests/test_opus_extensions.c:618,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:620,1
    - Dst: opus_packet_extensions_count_ext
      Src: /src/opus/tests/test_opus_extensions.c:621,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:623,1
    - Dst: opus_packet_extensions_parse_ext
      Src: /src/opus/tests/test_opus_extensions.c:625,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:627,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:629,1
    - Dst: check_ext_data
      Src: /src/opus/tests/test_opus_extensions.c:631,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 634
      start: 578
    functionDepth: 2
    functionLinenumber: 578
    functionLinenumberEnd: 634
    functionName: test_random_extensions_parse
    functionSourceFile: /src/opus/tests/test_opus_extensions.c
    functionUses: 0
    functionsReached:
    - opus_packet_extensions_parse_ext
    - opus_packet_extensions_parse
    - opus_packet_extensions_count_ext
    - check_ext_data
    - expect_true
    - opus_packet_extensions_generate
    - fast_rand
    linkageType: ''
    returnType: void
    signature: void test_random_extensions_parse(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: opus_repacketizer_init
      Src: /src/opus/tests/test_opus_extensions.c:654,1
    - Dst: memset
      Src: /src/opus/tests/test_opus_extensions.c:656,1
    - Dst: opus_packet_extensions_generate
      Src: /src/opus/tests/test_opus_extensions.c:665,1
    - Dst: opus_repacketizer_cat
      Src: /src/opus/tests/test_opus_extensions.c:671,1
    - Dst: opus_repacketizer_cat
      Src: /src/opus/tests/test_opus_extensions.c:674,1
    - Dst: opus_repacketizer_cat
      Src: /src/opus/tests/test_opus_extensions.c:677,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:679,1
    - Dst: opus_repacketizer_out_range_impl
      Src: /src/opus/tests/test_opus_extensions.c:680,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:688,1
    - Dst: opus_packet_parse_impl
      Src: /src/opus/tests/test_opus_extensions.c:691,1
    - Dst: opus_packet_extensions_parse
      Src: /src/opus/tests/test_opus_extensions.c:694,1
    - Dst: expect_true
      Src: /src/opus/tests/test_opus_extensions.c:696,1
    - Dst: opus_test_assert
      Src: /src/opus/tests/test_opus_extensions.c:701,1
    - Dst: opus_test_assert
      Src: /src/opus/tests/test_opus_extensions.c:702,1
    - Dst: memcmp
      Src: /src/opus/tests/test_opus_extensions.c:702,1
    - Dst: opus_test_assert
      Src: /src/opus/tests/test_opus_extensions.c:707,1
    - Dst: opus_test_assert
      Src: /src/opus/tests/test_opus_extensions.c:708,1
    - Dst: memcmp
      Src: /src/opus/tests/test_opus_extensions.c:708,1
    - Dst: opus_test_assert
      Src: /src/opus/tests/test_opus_extensions.c:713,1
    - Dst: opus_test_assert
      Src: /src/opus/tests/test_opus_extensions.c:715,1
    - Dst: opus_test_assert
      Src: /src/opus/tests/test_opus_extensions.c:718,1
    - Dst: opus_test_assert
      Src: /src/opus/tests/test_opus_extensions.c:719,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 40
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 720
      start: 636
    functionDepth: 1
    functionLinenumber: 636
    functionLinenumberEnd: 720
    functionName: test_opus_repacketizer_out_range_impl
    functionSourceFile: /src/opus/tests/test_opus_extensions.c
    functionUses: 0
    functionsReached:
    - opus_repacketizer_out_range_impl
    - opus_test_assert
    - opus_packet_extensions_parse
    - memcmp
    - expect_true
    - memset
    - opus_packet_extensions_generate
    - opus_repacketizer_cat
    - opus_packet_parse_impl
    - opus_repacketizer_init
    linkageType: ''
    returnType: void
    signature: void test_opus_repacketizer_out_range_impl(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: getenv
      Src: /src/opus/tests/test_opus_extensions.c:727,1
    - Dst: atoi
      Src: /src/opus/tests/test_opus_extensions.c:728,1
    - Dst: atoi
      Src: /src/opus/tests/test_opus_extensions.c:731,1
    - Dst: time
      Src: /src/opus/tests/test_opus_extensions.c:734,1
    - Dst: getpid
      Src: /src/opus/tests/test_opus_extensions.c:734,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_extensions.c:737,1
    - Dst: fast_rand
      Src: /src/opus/tests/test_opus_extensions.c:737,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_extensions.c:738,1
    - Dst: test_extensions_generate_success
      Src: /src/opus/tests/test_opus_extensions.c:740,1
    - Dst: test_extensions_generate_zero
      Src: /src/opus/tests/test_opus_extensions.c:741,1
    - Dst: test_extensions_generate_no_padding
      Src: /src/opus/tests/test_opus_extensions.c:742,1
    - Dst: test_extensions_generate_fail
      Src: /src/opus/tests/test_opus_extensions.c:743,1
    - Dst: test_extensions_parse_success
      Src: /src/opus/tests/test_opus_extensions.c:744,1
    - Dst: test_extensions_parse_zero
      Src: /src/opus/tests/test_opus_extensions.c:745,1
    - Dst: test_extensions_parse_fail
      Src: /src/opus/tests/test_opus_extensions.c:746,1
    - Dst: test_extensions_repeating
      Src: /src/opus/tests/test_opus_extensions.c:747,1
    - Dst: test_random_extensions_parse
      Src: /src/opus/tests/test_opus_extensions.c:748,1
    - Dst: test_opus_repacketizer_out_range_impl
      Src: /src/opus/tests/test_opus_extensions.c:749,1
    - Dst: fprintf
      Src: /src/opus/tests/test_opus_extensions.c:750,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 26
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 752
      start: 722
    functionDepth: 3
    functionLinenumber: 722
    functionLinenumberEnd: 752
    functionName: main
    functionSourceFile: /src/opus/tests/test_opus_extensions.c
    functionUses: 0
    functionsReached:
    - test_random_extensions_parse
    - fast_rand
    - test_extensions_generate_success
    - getenv
    - test_extensions_generate_no_padding
    - atoi
    - test_extensions_generate_zero
    - test_extensions_repeating
    - test_extensions_parse_fail
    - getpid
    - test_extensions_parse_success
    - fprintf
    - test_opus_repacketizer_out_range_impl
    - test_extensions_generate_fail
    - time
    - test_extensions_parse_zero
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - arg
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20
      start: 19
    functionDepth: 0
    functionLinenumber: 19
    functionLinenumberEnd: 20
    functionName: ARG_QEXT
    functionSourceFile: /src/opus/tests/opus_ossfuzz_utils.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ARG_QEXT(arg)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: FuzzedDataProvider::ConsumeIntegralInRange
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:35,1
    - Dst: FuzzedDataProvider::PickValueInArray
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:36,1
    - Dst: ARG_QEXT
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:37,1
    - Dst: FuzzedDataProvider::ConsumeIntegralInRange
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:38,1
    - Dst: FuzzedDataProvider::ConsumeIntegralInRange
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:39,1
    - Dst: FuzzedDataProvider::PickValueInArray
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:41,1
    - Dst: FuzzedDataProvider::PickValueInArray
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:44,1
    - Dst: FuzzedDataProvider::PickValueInArray
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:49,1
    - Dst: opus_projection_ambisonics_encoder_create
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:50,1
    - Dst: opus_projection_encoder_destroy
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:55,1
    - Dst: opus_projection_encoder_ctl
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:59,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:60,1
    - Dst: FuzzedDataProvider::ConsumeIntegralInRange
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:60,1
    - Dst: opus_projection_encoder_ctl
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:61,1
    - Dst: OPUS_SET_VBR
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:61,1
    - Dst: FuzzedDataProvider::ConsumeBool
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:61,1
    - Dst: opus_projection_encoder_ctl
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:62,1
    - Dst: OPUS_SET_VBR_CONSTRAINT
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:62,1
    - Dst: FuzzedDataProvider::ConsumeBool
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:62,1
    - Dst: opus_projection_encoder_ctl
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:63,1
    - Dst: OPUS_SET_FORCE_CHANNELS
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:64,1
    - Dst: FuzzedDataProvider::PickValueInArray
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:64,1
    - Dst: opus_projection_encoder_ctl
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:65,1
    - Dst: OPUS_SET_MAX_BANDWIDTH
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:66,1
    - Dst: FuzzedDataProvider::PickValueInArray
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:66,1
    - Dst: opus_projection_encoder_ctl
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:70,1
    - Dst: OPUS_SET_INBAND_FEC
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:70,1
    - Dst: FuzzedDataProvider::ConsumeBool
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:70,1
    - Dst: opus_projection_encoder_ctl
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:71,1
    - Dst: OPUS_SET_PACKET_LOSS_PERC
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:72,1
    - Dst: FuzzedDataProvider::ConsumeIntegralInRange
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:72,1
    - Dst: opus_projection_encoder_ctl
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:73,1
    - Dst: OPUS_SET_DTX
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:73,1
    - Dst: FuzzedDataProvider::ConsumeBool
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:73,1
    - Dst: opus_projection_encoder_ctl
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:74,1
    - Dst: OPUS_SET_LSB_DEPTH
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:75,1
    - Dst: FuzzedDataProvider::ConsumeIntegralInRange
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:75,1
    - Dst: opus_projection_encoder_ctl
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:76,1
    - Dst: OPUS_SET_PREDICTION_DISABLED
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:77,1
    - Dst: FuzzedDataProvider::ConsumeBool
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:77,1
    - Dst: opus_projection_encoder_ctl
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:78,1
    - Dst: OPUS_SET_SIGNAL
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:79,1
    - Dst: FuzzedDataProvider::PickValueInArray
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:79,1
    - Dst: opus_projection_encoder_ctl
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:81,1
    - Dst: OPUS_SET_PHASE_INVERSION_DISABLED
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:82,1
    - Dst: FuzzedDataProvider::ConsumeBool
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:82,1
    - Dst: opus_alloc
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:85,1
    - Dst: opus_projection_encoder_destroy
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:87,1
    - Dst: memset
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:90,1
    - Dst: FuzzedDataProvider::ConsumeData
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:92,1
    - Dst: opus_projection_encode
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:94,1
    - Dst: opus_free
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:98,1
    - Dst: opus_projection_encoder_destroy
      Src: /src/opus/tests/opus_projection_encoder_fuzzer.cc:99,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 30
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - uint8_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 102
    functionName: LLVMFuzzerTestOneInput
    functionSourceFile: /src/opus/tests/opus_projection_encoder_fuzzer.cc
    functionUses: 0
    functionsReached:
    - FuzzedDataProvider::ConsumeIntegralInRange
    - OPUS_SET_VBR_CONSTRAINT
    - opus_projection_encoder_destroy
    - opus_projection_encode
    - FuzzedDataProvider::PickValueInArray
    - FuzzedDataProvider::ConsumeBool
    - opus_projection_encoder_ctl
    - OPUS_SET_VBR
    - opus_free
    - memset
    - FuzzedDataProvider::ConsumeData
    - OPUS_SET_LSB_DEPTH
    - OPUS_SET_PREDICTION_DISABLED
    - OPUS_SET_DTX
    - OPUS_SET_MAX_BANDWIDTH
    - OPUS_SET_PACKET_LOSS_PERC
    - OPUS_SET_INBAND_FEC
    - OPUS_SET_SIGNAL
    - OPUS_SET_PHASE_INVERSION_DISABLED
    - ARG_QEXT
    - opus_projection_ambisonics_encoder_create
    - OPUS_SET_COMPLEXITY
    - OPUS_SET_FORCE_CHANNELS
    - opus_alloc
    linkageType: ''
    returnType: int
    signature: int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: FuzzedDataProvider::PickValueInArray
      Src: /src/opus/tests/opus_projection_decoder_fuzzer.cc:39,1
    - Dst: FuzzedDataProvider::PickValueInArray
      Src: /src/opus/tests/opus_projection_decoder_fuzzer.cc:40,1
    - Dst: ARG_QEXT
      Src: /src/opus/tests/opus_projection_decoder_fuzzer.cc:41,1
    - Dst: pow
      Src: /src/opus/tests/opus_projection_decoder_fuzzer.cc:45,1
    - Dst: FuzzedDataProvider::ConsumeIntegralInRange
      Src: /src/opus/tests/opus_projection_decoder_fuzzer.cc:45,1
    - Dst: FuzzedDataProvider::ConsumeBool
      Src: /src/opus/tests/opus_projection_decoder_fuzzer.cc:46,1
    - Dst: FuzzedDataProvider::ConsumeIntegralInRange
      Src: /src/opus/tests/opus_projection_decoder_fuzzer.cc:49,1
    - Dst: FuzzedDataProvider::ConsumeIntegralInRange
      Src: /src/opus/tests/opus_projection_decoder_fuzzer.cc:50,1
    - Dst: FuzzedDataProvider::ConsumeIntegralInRange
      Src: /src/opus/tests/opus_projection_decoder_fuzzer.cc:52,1
    - Dst: opus_alloc
      Src: /src/opus/tests/opus_projection_decoder_fuzzer.cc:53,1
    - Dst: FuzzedDataProvider::ConsumeData
      Src: /src/opus/tests/opus_projection_decoder_fuzzer.cc:58,1
    - Dst: opus_projection_decoder_create
      Src: /src/opus/tests/opus_projection_decoder_fuzzer.cc:61,1
    - Dst: opus_free
      Src: /src/opus/tests/opus_projection_decoder_fuzzer.cc:64,1
    - Dst: FuzzedDataProvider::ConsumeBool
      Src: /src/opus/tests/opus_projection_decoder_fuzzer.cc:68,1
    - Dst: FuzzedDataProvider::ConsumeBool
      Src: /src/opus/tests/opus_projection_decoder_fuzzer.cc:69,1
    - Dst: FuzzedDataProvider::ConsumeRemainingBytes
      Src: /src/opus/tests/opus_projection_decoder_fuzzer.cc:70,1
    - Dst: std::min
      Src: /src/opus/tests/opus_projection_decoder_fuzzer.cc:72,1
    - Dst: auto::size
      Src: /src/opus/tests/opus_projection_decoder_fuzzer.cc:72,1
    - Dst: opus_alloc
      Src: /src/opus/tests/opus_projection_decoder_fuzzer.cc:76,1
    - Dst: opus_projection_decode_float
      Src: /src/opus/tests/opus_projection_decoder_fuzzer.cc:81,1
    - Dst: auto::data
      Src: /src/opus/tests/opus_projection_decoder_fuzzer.cc:82,1
    - Dst: opus_free
      Src: /src/opus/tests/opus_projection_decoder_fuzzer.cc:84,1
    - Dst: opus_alloc
      Src: /src/opus/tests/opus_projection_decoder_fuzzer.cc:87,1
    - Dst: opus_projection_decode
      Src: /src/opus/tests/opus_projection_decoder_fuzzer.cc:92,1
    - Dst: auto::data
      Src: /src/opus/tests/opus_projection_decoder_fuzzer.cc:93,1
    - Dst: opus_free
      Src: /src/opus/tests/opus_projection_decoder_fuzzer.cc:95,1
    - Dst: opus_projection_decoder_destroy
      Src: /src/opus/tests/opus_projection_decoder_fuzzer.cc:98,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 33
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - uint8_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 101
    functionName: LLVMFuzzerTestOneInput
    functionSourceFile: /src/opus/tests/opus_projection_decoder_fuzzer.cc
    functionUses: 0
    functionsReached:
    - FuzzedDataProvider::ConsumeIntegralInRange
    - std::min
    - FuzzedDataProvider::ConsumeRemainingBytes
    - auto::size
    - auto::data
    - ARG_QEXT
    - opus_free
    - opus_projection_decode_float
    - FuzzedDataProvider::ConsumeData
    - opus_projection_decoder_destroy
    - FuzzedDataProvider::PickValueInArray
    - FuzzedDataProvider::ConsumeBool
    - opus_projection_decoder_create
    - pow
    - opus_projection_decode
    - opus_alloc
    linkageType: ''
    returnType: int
    signature: int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: FuzzedDataProvider::ConsumeIntegralInRange
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:35,1
    - Dst: FuzzedDataProvider::PickValueInArray
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:36,1
    - Dst: ARG_QEXT
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:37,1
    - Dst: FuzzedDataProvider::ConsumeIntegralInRange
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:38,1
    - Dst: FuzzedDataProvider::ConsumeIntegralInRange
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:39,1
    - Dst: FuzzedDataProvider::PickValueInArray
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:41,1
    - Dst: FuzzedDataProvider::PickValueInArray
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:44,1
    - Dst: malloc
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:47,1
    - Dst: FuzzedDataProvider::ConsumeIntegralInRange
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:52,1
    - Dst: FuzzedDataProvider::ConsumeBool
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:57,1
    - Dst: FuzzedDataProvider::PickValueInArray
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:58,1
    - Dst: opus_multistream_surround_encoder_create
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:59,1
    - Dst: opus_multistream_encoder_create
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:63,1
    - Dst: free
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:67,1
    - Dst: opus_multistream_encoder_destroy
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:69,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:73,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:74,1
    - Dst: FuzzedDataProvider::ConsumeIntegralInRange
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:74,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:75,1
    - Dst: OPUS_SET_VBR
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:75,1
    - Dst: FuzzedDataProvider::ConsumeBool
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:75,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:76,1
    - Dst: OPUS_SET_VBR_CONSTRAINT
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:76,1
    - Dst: FuzzedDataProvider::ConsumeBool
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:76,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:77,1
    - Dst: OPUS_SET_FORCE_CHANNELS
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:78,1
    - Dst: FuzzedDataProvider::PickValueInArray
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:78,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:79,1
    - Dst: OPUS_SET_MAX_BANDWIDTH
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:80,1
    - Dst: FuzzedDataProvider::PickValueInArray
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:80,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:84,1
    - Dst: OPUS_SET_INBAND_FEC
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:84,1
    - Dst: FuzzedDataProvider::ConsumeBool
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:84,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:85,1
    - Dst: OPUS_SET_PACKET_LOSS_PERC
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:86,1
    - Dst: FuzzedDataProvider::ConsumeIntegralInRange
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:86,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:87,1
    - Dst: OPUS_SET_DTX
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:87,1
    - Dst: FuzzedDataProvider::ConsumeBool
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:87,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:88,1
    - Dst: OPUS_SET_LSB_DEPTH
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:89,1
    - Dst: FuzzedDataProvider::ConsumeIntegralInRange
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:89,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:90,1
    - Dst: OPUS_SET_PREDICTION_DISABLED
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:91,1
    - Dst: FuzzedDataProvider::ConsumeBool
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:91,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:92,1
    - Dst: OPUS_SET_SIGNAL
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:93,1
    - Dst: FuzzedDataProvider::PickValueInArray
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:93,1
    - Dst: opus_multistream_encoder_ctl
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:95,1
    - Dst: OPUS_SET_PHASE_INVERSION_DISABLED
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:96,1
    - Dst: FuzzedDataProvider::ConsumeBool
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:96,1
    - Dst: opus_alloc
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:99,1
    - Dst: opus_multistream_encoder_destroy
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:101,1
    - Dst: memset
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:104,1
    - Dst: FuzzedDataProvider::ConsumeData
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:106,1
    - Dst: opus_multistream_encode
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:108,1
    - Dst: opus_free
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:112,1
    - Dst: opus_multistream_encoder_destroy
      Src: /src/opus/tests/opus_multistream_encode_fuzzer.cc:113,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 42
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - uint8_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 116
    functionName: LLVMFuzzerTestOneInput
    functionSourceFile: /src/opus/tests/opus_multistream_encode_fuzzer.cc
    functionUses: 0
    functionsReached:
    - FuzzedDataProvider::ConsumeIntegralInRange
    - OPUS_SET_VBR_CONSTRAINT
    - malloc
    - FuzzedDataProvider::PickValueInArray
    - FuzzedDataProvider::ConsumeBool
    - OPUS_SET_VBR
    - opus_multistream_encoder_destroy
    - opus_free
    - memset
    - FuzzedDataProvider::ConsumeData
    - OPUS_SET_LSB_DEPTH
    - OPUS_SET_DTX
    - OPUS_SET_PREDICTION_DISABLED
    - OPUS_SET_MAX_BANDWIDTH
    - OPUS_SET_PACKET_LOSS_PERC
    - OPUS_SET_INBAND_FEC
    - OPUS_SET_SIGNAL
    - opus_multistream_encoder_create
    - OPUS_SET_PHASE_INVERSION_DISABLED
    - ARG_QEXT
    - opus_multistream_encoder_ctl
    - OPUS_SET_COMPLEXITY
    - opus_multistream_surround_encoder_create
    - OPUS_SET_FORCE_CHANNELS
    - opus_multistream_encode
    - opus_alloc
    - free
    linkageType: ''
    returnType: int
    signature: int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FuzzedDataProvider::PickValueInArray
      Src: /src/opus/tests/opus_encode_fuzzer.cc:49,1
    - Dst: FuzzedDataProvider::PickValueInArray
      Src: /src/opus/tests/opus_encode_fuzzer.cc:50,1
    - Dst: FuzzedDataProvider::PickValueInArray
      Src: /src/opus/tests/opus_encode_fuzzer.cc:51,1
    - Dst: FuzzedDataProvider::PickValueInArray
      Src: /src/opus/tests/opus_encode_fuzzer.cc:52,1
    - Dst: opus_encoder_create
      Src: /src/opus/tests/opus_encode_fuzzer.cc:56,1
    - Dst: opus_encoder_destroy
      Src: /src/opus/tests/opus_encode_fuzzer.cc:58,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_fuzzer.cc:62,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/tests/opus_encode_fuzzer.cc:62,1
    - Dst: FuzzedDataProvider::ConsumeIntegralInRange
      Src: /src/opus/tests/opus_encode_fuzzer.cc:62,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_fuzzer.cc:63,1
    - Dst: OPUS_SET_VBR
      Src: /src/opus/tests/opus_encode_fuzzer.cc:63,1
    - Dst: FuzzedDataProvider::ConsumeBool
      Src: /src/opus/tests/opus_encode_fuzzer.cc:63,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_fuzzer.cc:64,1
    - Dst: OPUS_SET_VBR_CONSTRAINT
      Src: /src/opus/tests/opus_encode_fuzzer.cc:64,1
    - Dst: FuzzedDataProvider::ConsumeBool
      Src: /src/opus/tests/opus_encode_fuzzer.cc:64,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_fuzzer.cc:65,1
    - Dst: OPUS_SET_FORCE_CHANNELS
      Src: /src/opus/tests/opus_encode_fuzzer.cc:66,1
    - Dst: FuzzedDataProvider::PickValueInArray
      Src: /src/opus/tests/opus_encode_fuzzer.cc:66,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_fuzzer.cc:67,1
    - Dst: OPUS_SET_MAX_BANDWIDTH
      Src: /src/opus/tests/opus_encode_fuzzer.cc:68,1
    - Dst: FuzzedDataProvider::PickValueInArray
      Src: /src/opus/tests/opus_encode_fuzzer.cc:68,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_fuzzer.cc:72,1
    - Dst: OPUS_SET_INBAND_FEC
      Src: /src/opus/tests/opus_encode_fuzzer.cc:72,1
    - Dst: FuzzedDataProvider::ConsumeBool
      Src: /src/opus/tests/opus_encode_fuzzer.cc:72,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_fuzzer.cc:73,1
    - Dst: OPUS_SET_PACKET_LOSS_PERC
      Src: /src/opus/tests/opus_encode_fuzzer.cc:74,1
    - Dst: FuzzedDataProvider::ConsumeIntegralInRange
      Src: /src/opus/tests/opus_encode_fuzzer.cc:74,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_fuzzer.cc:75,1
    - Dst: OPUS_SET_DTX
      Src: /src/opus/tests/opus_encode_fuzzer.cc:75,1
    - Dst: FuzzedDataProvider::ConsumeBool
      Src: /src/opus/tests/opus_encode_fuzzer.cc:75,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_fuzzer.cc:76,1
    - Dst: OPUS_SET_LSB_DEPTH
      Src: /src/opus/tests/opus_encode_fuzzer.cc:76,1
    - Dst: FuzzedDataProvider::ConsumeIntegralInRange
      Src: /src/opus/tests/opus_encode_fuzzer.cc:76,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_fuzzer.cc:77,1
    - Dst: OPUS_SET_PREDICTION_DISABLED
      Src: /src/opus/tests/opus_encode_fuzzer.cc:77,1
    - Dst: FuzzedDataProvider::ConsumeBool
      Src: /src/opus/tests/opus_encode_fuzzer.cc:77,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_fuzzer.cc:78,1
    - Dst: OPUS_SET_SIGNAL
      Src: /src/opus/tests/opus_encode_fuzzer.cc:79,1
    - Dst: FuzzedDataProvider::PickValueInArray
      Src: /src/opus/tests/opus_encode_fuzzer.cc:79,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_fuzzer.cc:81,1
    - Dst: OPUS_SET_PHASE_INVERSION_DISABLED
      Src: /src/opus/tests/opus_encode_fuzzer.cc:82,1
    - Dst: FuzzedDataProvider::ConsumeBool
      Src: /src/opus/tests/opus_encode_fuzzer.cc:82,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/tests/opus_encode_fuzzer.cc:84,1
    - Dst: OPUS_SET_QEXT
      Src: /src/opus/tests/opus_encode_fuzzer.cc:84,1
    - Dst: FuzzedDataProvider::PickValueInArray
      Src: /src/opus/tests/opus_encode_fuzzer.cc:84,1
    - Dst: FuzzedDataProvider::ConsumeData
      Src: /src/opus/tests/opus_encode_fuzzer.cc:87,1
    - Dst: opus_encode
      Src: /src/opus/tests/opus_encode_fuzzer.cc:93,1
    - Dst: opus_encoder_destroy
      Src: /src/opus/tests/opus_encode_fuzzer.cc:101,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - uint8_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 104
    functionName: LLVMFuzzerTestOneInput
    functionSourceFile: /src/opus/tests/opus_encode_fuzzer.cc
    functionUses: 0
    functionsReached:
    - FuzzedDataProvider::ConsumeIntegralInRange
    - OPUS_SET_VBR_CONSTRAINT
    - FuzzedDataProvider::PickValueInArray
    - FuzzedDataProvider::ConsumeBool
    - OPUS_SET_QEXT
    - OPUS_SET_VBR
    - FuzzedDataProvider::ConsumeData
    - opus_encoder_ctl
    - OPUS_SET_LSB_DEPTH
    - OPUS_SET_PREDICTION_DISABLED
    - OPUS_SET_DTX
    - OPUS_SET_MAX_BANDWIDTH
    - OPUS_SET_PACKET_LOSS_PERC
    - opus_encoder_destroy
    - opus_encode
    - OPUS_SET_INBAND_FEC
    - OPUS_SET_SIGNAL
    - OPUS_SET_PHASE_INVERSION_DISABLED
    - OPUS_SET_COMPLEXITY
    - opus_encoder_create
    - OPUS_SET_FORCE_CHANNELS
    linkageType: ''
    returnType: int
    signature: int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ch
    argTypes:
    - unsigned char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 28
    functionName: char_to_int
    functionSourceFile: /src/opus/tests/opus_repacketizer_fuzzer.cc
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: opus_uint32
    signature: opus_uint32 char_to_int(const unsigned char ch[4])
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: opus_repacketizer_create
      Src: /src/opus/tests/opus_repacketizer_fuzzer.cc:34,1
    - Dst: opus_repacketizer_init
      Src: /src/opus/tests/opus_repacketizer_fuzzer.cc:35,1
    - Dst: FuzzedDataProvider::ConsumeIntegralInRange
      Src: /src/opus/tests/opus_repacketizer_fuzzer.cc:36,1
    - Dst: FuzzedDataProvider::ConsumeRemainingBytes
      Src: /src/opus/tests/opus_repacketizer_fuzzer.cc:37,1
    - Dst: auto::size
      Src: /src/opus/tests/opus_repacketizer_fuzzer.cc:41,1
    - Dst: char_to_int
      Src: /src/opus/tests/opus_repacketizer_fuzzer.cc:44,1
    - Dst: auto::data
      Src: /src/opus/tests/opus_repacketizer_fuzzer.cc:44,1
    - Dst: auto::size
      Src: /src/opus/tests/opus_repacketizer_fuzzer.cc:47,1
    - Dst: opus_repacketizer_cat
      Src: /src/opus/tests/opus_repacketizer_fuzzer.cc:51,1
    - Dst: auto::data
      Src: /src/opus/tests/opus_repacketizer_fuzzer.cc:51,1
    - Dst: opus_repacketizer_out
      Src: /src/opus/tests/opus_repacketizer_fuzzer.cc:54,1
    - Dst: opus_repacketizer_destroy
      Src: /src/opus/tests/opus_repacketizer_fuzzer.cc:57,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 16
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - uint8_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 60
    functionName: LLVMFuzzerTestOneInput
    functionSourceFile: /src/opus/tests/opus_repacketizer_fuzzer.cc
    functionUses: 0
    functionsReached:
    - FuzzedDataProvider::ConsumeIntegralInRange
    - auto::size
    - auto::data
    - char_to_int
    - opus_repacketizer_create
    - opus_repacketizer_cat
    - FuzzedDataProvider::ConsumeRemainingBytes
    - opus_repacketizer_init
    - opus_repacketizer_out
    - opus_repacketizer_destroy
    linkageType: ''
    returnType: int
    signature: int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: FuzzedDataProvider::PickValueInArray
      Src: /src/opus/tests/opus_multistream_decode_fuzzer.cc:36,1
    - Dst: FuzzedDataProvider::PickValueInArray
      Src: /src/opus/tests/opus_multistream_decode_fuzzer.cc:37,1
    - Dst: ARG_QEXT
      Src: /src/opus/tests/opus_multistream_decode_fuzzer.cc:38,1
    - Dst: FuzzedDataProvider::ConsumeIntegralInRange
      Src: /src/opus/tests/opus_multistream_decode_fuzzer.cc:40,1
    - Dst: FuzzedDataProvider::ConsumeIntegralInRange
      Src: /src/opus/tests/opus_multistream_decode_fuzzer.cc:41,1
    - Dst: FuzzedDataProvider::ConsumeIntegralInRange
      Src: /src/opus/tests/opus_multistream_decode_fuzzer.cc:42,1
    - Dst: FuzzedDataProvider::ConsumeBool
      Src: /src/opus/tests/opus_multistream_decode_fuzzer.cc:43,1
    - Dst: FuzzedDataProvider::ConsumeBool
      Src: /src/opus/tests/opus_multistream_decode_fuzzer.cc:44,1
    - Dst: malloc
      Src: /src/opus/tests/opus_multistream_decode_fuzzer.cc:46,1
    - Dst: FuzzedDataProvider::ConsumeIntegralInRange
      Src: /src/opus/tests/opus_multistream_decode_fuzzer.cc:51,1
    - Dst: opus_multistream_decoder_create
      Src: /src/opus/tests/opus_multistream_decode_fuzzer.cc:55,1
    - Dst: free
      Src: /src/opus/tests/opus_multistream_decode_fuzzer.cc:57,1
    - Dst: FuzzedDataProvider::ConsumeRemainingBytes
      Src: /src/opus/tests/opus_multistream_decode_fuzzer.cc:62,1
    - Dst: std::min
      Src: /src/opus/tests/opus_multistream_decode_fuzzer.cc:64,1
    - Dst: auto::size
      Src: /src/opus/tests/opus_multistream_decode_fuzzer.cc:64,1
    - Dst: opus_alloc
      Src: /src/opus/tests/opus_multistream_decode_fuzzer.cc:67,1
    - Dst: opus_multistream_decode_float
      Src: /src/opus/tests/opus_multistream_decode_fuzzer.cc:71,1
    - Dst: auto::data
      Src: /src/opus/tests/opus_multistream_decode_fuzzer.cc:72,1
    - Dst: opus_free
      Src: /src/opus/tests/opus_multistream_decode_fuzzer.cc:75,1
    - Dst: opus_alloc
      Src: /src/opus/tests/opus_multistream_decode_fuzzer.cc:78,1
    - Dst: opus_multistream_decode
      Src: /src/opus/tests/opus_multistream_decode_fuzzer.cc:82,1
    - Dst: auto::data
      Src: /src/opus/tests/opus_multistream_decode_fuzzer.cc:83,1
    - Dst: opus_free
      Src: /src/opus/tests/opus_multistream_decode_fuzzer.cc:86,1
    - Dst: opus_multistream_decoder_destroy
      Src: /src/opus/tests/opus_multistream_decode_fuzzer.cc:89,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 32
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - uint8_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 92
    functionName: LLVMFuzzerTestOneInput
    functionSourceFile: /src/opus/tests/opus_multistream_decode_fuzzer.cc
    functionUses: 0
    functionsReached:
    - FuzzedDataProvider::ConsumeIntegralInRange
    - std::min
    - opus_multistream_decode
    - opus_multistream_decoder_create
    - auto::size
    - auto::data
    - ARG_QEXT
    - opus_free
    - malloc
    - FuzzedDataProvider::PickValueInArray
    - FuzzedDataProvider::ConsumeBool
    - opus_multistream_decoder_destroy
    - FuzzedDataProvider::ConsumeRemainingBytes
    - opus_multistream_decode_float
    - opus_alloc
    - free
    linkageType: ''
    returnType: int
    signature: int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/doc/trivial_example.c:65,1
    - Dst: fprintf
      Src: /src/opus/doc/trivial_example.c:66,1
    - Dst: opus_encoder_create
      Src: /src/opus/doc/trivial_example.c:71,1
    - Dst: fprintf
      Src: /src/opus/doc/trivial_example.c:74,1
    - Dst: opus_strerror
      Src: /src/opus/doc/trivial_example.c:74,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/doc/trivial_example.c:81,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/doc/trivial_example.c:81,1
    - Dst: fprintf
      Src: /src/opus/doc/trivial_example.c:84,1
    - Dst: opus_strerror
      Src: /src/opus/doc/trivial_example.c:84,1
    - Dst: fopen
      Src: /src/opus/doc/trivial_example.c:88,1
    - Dst: fprintf
      Src: /src/opus/doc/trivial_example.c:91,1
    - Dst: strerror
      Src: /src/opus/doc/trivial_example.c:91,1
    - Dst: opus_decoder_create
      Src: /src/opus/doc/trivial_example.c:97,1
    - Dst: fprintf
      Src: /src/opus/doc/trivial_example.c:100,1
    - Dst: opus_strerror
      Src: /src/opus/doc/trivial_example.c:100,1
    - Dst: fopen
      Src: /src/opus/doc/trivial_example.c:104,1
    - Dst: fprintf
      Src: /src/opus/doc/trivial_example.c:107,1
    - Dst: strerror
      Src: /src/opus/doc/trivial_example.c:107,1
    - Dst: fread
      Src: /src/opus/doc/trivial_example.c:119,1
    - Dst: opus_encode
      Src: /src/opus/doc/trivial_example.c:137,1
    - Dst: fprintf
      Src: /src/opus/doc/trivial_example.c:140,1
    - Dst: opus_strerror
      Src: /src/opus/doc/trivial_example.c:140,1
    - Dst: opus_decode
      Src: /src/opus/doc/trivial_example.c:149,1
    - Dst: fprintf
      Src: /src/opus/doc/trivial_example.c:152,1
    - Dst: opus_strerror
      Src: /src/opus/doc/trivial_example.c:152,1
    - Dst: fwrite
      Src: /src/opus/doc/trivial_example.c:163,1
    - Dst: opus_encoder_destroy
      Src: /src/opus/doc/trivial_example.c:166,1
    - Dst: opus_decoder_destroy
      Src: /src/opus/doc/trivial_example.c:167,1
    - Dst: fclose
      Src: /src/opus/doc/trivial_example.c:168,1
    - Dst: fclose
      Src: /src/opus/doc/trivial_example.c:169,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 62
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 171
    functionName: main
    functionSourceFile: /src/opus/doc/trivial_example.c
    functionUses: 0
    functionsReached:
    - opus_strerror
    - OPUS_SET_BITRATE
    - opus_decoder_destroy
    - opus_encoder_destroy
    - opus_encode
    - fclose
    - opus_decode
    - opus_encoder_ctl
    - strerror
    - opus_encoder_create
    - fread
    - fprintf
    - fwrite
    - fopen
    - opus_decoder_create
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 35
    functionName: MAX
    functionSourceFile: /src/opus/src/qext_compare.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAX(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 38
    functionName: OPUS_COSF
    functionSourceFile: /src/opus/src/qext_compare.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_COSF(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 39
    functionName: OPUS_SINF
    functionSourceFile: /src/opus/src/qext_compare.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_SINF(_x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/src/qext_compare.c:42,1
    - Dst: exit
      Src: /src/opus/src/qext_compare.c:43,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - _ptr
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 46
    functionName: check_alloc
    functionSourceFile: /src/opus/src/qext_compare.c
    functionUses: 0
    functionsReached:
    - exit
    - fprintf
    linkageType: ''
    returnType: void
    signature: void *check_alloc(void *_ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: check_alloc
      Src: /src/opus/src/qext_compare.c:49,1
    - Dst: malloc
      Src: /src/opus/src/qext_compare.c:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _size
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: opus_malloc
    functionSourceFile: /src/opus/src/qext_compare.c
    functionUses: 0
    functionsReached:
    - malloc
    - check_alloc
    linkageType: ''
    returnType: void
    signature: void *opus_malloc(size_t _size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: check_alloc
      Src: /src/opus/src/qext_compare.c:53,1
    - Dst: realloc
      Src: /src/opus/src/qext_compare.c:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - _ptr
    - _size
    argTypes:
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionName: opus_realloc
    functionSourceFile: /src/opus/src/qext_compare.c
    functionUses: 0
    functionsReached:
    - check_alloc
    - realloc
    linkageType: ''
    returnType: void
    signature: void *opus_realloc(void *_ptr,size_t _size)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: fread
      Src: /src/opus/src/qext_compare.c:84,1
    - Dst: opus_realloc
      Src: /src/opus/src/qext_compare.c:89,1
    - Dst: exit
      Src: /src/opus/src/qext_compare.c:122,1
    - Dst: opus_realloc
      Src: /src/opus/src/qext_compare.c:126,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 44
    argCount: 4
    argNames:
    - _samples
    - _fin
    - _nchannels
    - format
    argTypes:
    - float**
    - FILE*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 129
    functionName: read_pcm
    functionSourceFile: /src/opus/src/qext_compare.c
    functionUses: 0
    functionsReached:
    - exit
    - opus_realloc
    - fread
    linkageType: ''
    returnType: size_t
    signature: size_t read_pcm(float **_samples,FILE *_fin,int _nchannels, int format)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: cos
      Src: /src/opus/src/qext_compare.c:145,1
    - Dst: cos
      Src: /src/opus/src/qext_compare.c:145,1
    - Dst: cos
      Src: /src/opus/src/qext_compare.c:145,1
    - Dst: mini_kiss_fftr_alloc
      Src: /src/opus/src/qext_compare.c:147,1
    - Dst: mini_kiss_fftr
      Src: /src/opus/src/qext_compare.c:156,1
    - Dst: free
      Src: /src/opus/src/qext_compare.c:178,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 31
    argCount: 10
    argNames:
    - _out
    - _ps
    - _bands
    - _nbands
    - _in
    - _nchannels
    - _nframes
    - _window_sz
    - _step
    - _downsample
    argTypes:
    - float*
    - float*
    - int*
    - int
    - float*
    - int
    - size_t
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 179
    functionName: band_energy
    functionSourceFile: /src/opus/src/qext_compare.c
    functionUses: 0
    functionsReached:
    - free
    - mini_kiss_fftr_alloc
    - cos
    - mini_kiss_fftr
    linkageType: ''
    returnType: void
    signature: "void band_energy(float *_out,float *_ps,const int *_bands,int _nbands,\n
      const float *_in,int _nchannels,size_t _nframes,int _window_sz,\n int _step,int
      _downsample)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/src/qext_compare.c:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _argv0
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 192
    functionName: usage
    functionSourceFile: /src/opus/src/qext_compare.c
    functionUses: 1
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void usage(const char *_argv0)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: usage
      Src: /src/opus/src/qext_compare.c:229,1
    - Dst: strcmp
      Src: /src/opus/src/qext_compare.c:242,1
    - Dst: strcmp
      Src: /src/opus/src/qext_compare.c:246,1
    - Dst: strcmp
      Src: /src/opus/src/qext_compare.c:250,1
    - Dst: strcmp
      Src: /src/opus/src/qext_compare.c:254,1
    - Dst: strcmp
      Src: /src/opus/src/qext_compare.c:258,1
    - Dst: strcmp
      Src: /src/opus/src/qext_compare.c:262,1
    - Dst: atoi
      Src: /src/opus/src/qext_compare.c:263,1
    - Dst: strcmp
      Src: /src/opus/src/qext_compare.c:266,1
    - Dst: usage
      Src: /src/opus/src/qext_compare.c:268,1
    - Dst: atof
      Src: /src/opus/src/qext_compare.c:271,1
    - Dst: atof
      Src: /src/opus/src/qext_compare.c:272,1
    - Dst: atof
      Src: /src/opus/src/qext_compare.c:273,1
    - Dst: strcmp
      Src: /src/opus/src/qext_compare.c:277,1
    - Dst: atoi
      Src: /src/opus/src/qext_compare.c:278,1
    - Dst: fprintf
      Src: /src/opus/src/qext_compare.c:280,1
    - Dst: usage
      Src: /src/opus/src/qext_compare.c:287,1
    - Dst: usage
      Src: /src/opus/src/qext_compare.c:292,1
    - Dst: usage
      Src: /src/opus/src/qext_compare.c:310,1
    - Dst: fopen
      Src: /src/opus/src/qext_compare.c:315,1
    - Dst: fprintf
      Src: /src/opus/src/qext_compare.c:317,1
    - Dst: fopen
      Src: /src/opus/src/qext_compare.c:320,1
    - Dst: fprintf
      Src: /src/opus/src/qext_compare.c:322,1
    - Dst: fclose
      Src: /src/opus/src/qext_compare.c:323,1
    - Dst: read_pcm
      Src: /src/opus/src/qext_compare.c:327,1
    - Dst: fclose
      Src: /src/opus/src/qext_compare.c:331,1
    - Dst: read_pcm
      Src: /src/opus/src/qext_compare.c:332,1
    - Dst: fclose
      Src: /src/opus/src/qext_compare.c:333,1
    - Dst: fprintf
      Src: /src/opus/src/qext_compare.c:339,1
    - Dst: fprintf
      Src: /src/opus/src/qext_compare.c:344,1
    - Dst: sqrt
      Src: /src/opus/src/qext_compare.c:355,1
    - Dst: opus_malloc
      Src: /src/opus/src/qext_compare.c:358,1
    - Dst: opus_malloc
      Src: /src/opus/src/qext_compare.c:359,1
    - Dst: opus_malloc
      Src: /src/opus/src/qext_compare.c:360,1
    - Dst: band_energy
      Src: /src/opus/src/qext_compare.c:363,1
    - Dst: free
      Src: /src/opus/src/qext_compare.c:365,1
    - Dst: band_energy
      Src: /src/opus/src/qext_compare.c:366,1
    - Dst: free
      Src: /src/opus/src/qext_compare.c:368,1
    - Dst: MAX
      Src: /src/opus/src/qext_compare.c:373,1
    - Dst: MAX
      Src: /src/opus/src/qext_compare.c:379,1
    - Dst: tanh
      Src: /src/opus/src/qext_compare.c:480,1
    - Dst: log
      Src: /src/opus/src/qext_compare.c:490,1
    - Dst: log
      Src: /src/opus/src/qext_compare.c:496,1
    - Dst: free
      Src: /src/opus/src/qext_compare.c:515,1
    - Dst: free
      Src: /src/opus/src/qext_compare.c:516,1
    - Dst: free
      Src: /src/opus/src/qext_compare.c:517,1
    - Dst: pow
      Src: /src/opus/src/qext_compare.c:518,1
    - Dst: pow
      Src: /src/opus/src/qext_compare.c:519,1
    - Dst: fprintf
      Src: /src/opus/src/qext_compare.c:520,1
    - Dst: fprintf
      Src: /src/opus/src/qext_compare.c:523,1
    - Dst: fprintf
      Src: /src/opus/src/qext_compare.c:525,1
    CyclomaticComplexity: 74
    EdgeCount: 74
    ICount: 277
    argCount: 2
    argNames:
    - _argc
    - _argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 530
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 530
    functionName: main
    functionSourceFile: /src/opus/src/qext_compare.c
    functionUses: 0
    functionsReached:
    - MAX
    - atoi
    - strcmp
    - usage
    - fclose
    - log
    - atof
    - read_pcm
    - sqrt
    - fprintf
    - opus_malloc
    - fopen
    - band_energy
    - pow
    - free
    - tanh
    linkageType: ''
    returnType: int
    signature: int main(int _argc,const char **_argv)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: opus_limit2_checkwithin1
      Src: /src/opus/src/opus.c:66,1
    - Dst: ABS16
      Src: /src/opus/src/opus.c:111,1
    - Dst: ABS16
      Src: /src/opus/src/opus.c:119,1
    - Dst: ABS16
      Src: /src/opus/src/opus.c:121,1
    - Dst: MAX16
      Src: /src/opus/src/opus.c:152,1
    - Dst: MIN16
      Src: /src/opus/src/opus.c:152,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 60
    argCount: 5
    argNames:
    - _x
    - N
    - C
    - declip_mem
    - arch
    argTypes:
    - float*
    - int
    - int
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 161
    functionName: opus_pcm_soft_clip_impl
    functionSourceFile: /src/opus/src/opus.c
    functionUses: 0
    functionsReached:
    - MIN16
    - MAX16
    - opus_limit2_checkwithin1
    - ABS16
    linkageType: ''
    returnType: void
    signature: void opus_pcm_soft_clip_impl(float *_x, int N, int C, float *declip_mem,
      int arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_pcm_soft_clip_impl
      Src: /src/opus/src/opus.c:165,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - _x
    - N
    - C
    - declip_mem
    argTypes:
    - float*
    - int
    - int
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 163
    functionDepth: 2
    functionLinenumber: 163
    functionLinenumberEnd: 166
    functionName: opus_pcm_soft_clip
    functionSourceFile: /src/opus/src/opus.c
    functionUses: 1
    functionsReached:
    - opus_pcm_soft_clip_impl
    linkageType: ''
    returnType: OPUS_EXPORT
    signature: OPUS_EXPORT opus_pcm_soft_clip(float *_x, int N, int C, float *declip_mem)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - size
    - data
    argTypes:
    - int
    - unsigned char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 181
    functionName: encode_size
    functionSourceFile: /src/opus/src/opus.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int encode_size(int size, unsigned char *data)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 3
    argNames:
    - data
    - len
    - size
    argTypes:
    - unsigned char*
    - opus_int32
    - opus_int16*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 201
    functionName: parse_size
    functionSourceFile: /src/opus/src/opus.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int parse_size(const unsigned char *data, opus_int32 len, opus_int16
      *size)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - data
    - Fs
    argTypes:
    - unsigned char*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 222
    functionName: opus_packet_get_samples_per_frame
    functionSourceFile: /src/opus/src/opus.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int opus_packet_get_samples_per_frame(const unsigned char *data,\n
      \     opus_int32 Fs)"
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: opus_packet_get_samples_per_frame
      Src: /src/opus/src/opus.c:251,1
    - Dst: parse_size
      Src: /src/opus/src/opus.c:279,1
    - Dst: parse_size
      Src: /src/opus/src/opus.c:321,1
    - Dst: parse_size
      Src: /src/opus/src/opus.c:344,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 116
    argCount: 10
    argNames:
    - data
    - len
    - self_delimited
    - out_toc
    - frames
    - size
    - payload_offset
    - packet_offset
    - padding
    - padding_len
    argTypes:
    - unsigned char*
    - opus_int32
    - int
    - unsigned char*
    - unsigned char*[]
    - opus_int16[]
    - int*
    - opus_int32*
    - unsigned char**
    - opus_int32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 390
      start: 224
    functionDepth: 1
    functionLinenumber: 224
    functionLinenumberEnd: 390
    functionName: opus_packet_parse_impl
    functionSourceFile: /src/opus/src/opus.c
    functionUses: 1
    functionsReached:
    - parse_size
    - opus_packet_get_samples_per_frame
    linkageType: ''
    returnType: int
    signature: "int opus_packet_parse_impl(const unsigned char *data, opus_int32 len,\n
      \     int self_delimited, unsigned char *out_toc,\n      const unsigned char
      *frames[48], opus_int16 size[48],\n      int *payload_offset, opus_int32 *packet_offset,\n
      \     const unsigned char **padding, opus_int32 *padding_len)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_packet_parse_impl
      Src: /src/opus/src/opus.c:396,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - data
    - len
    - out_toc
    - frames
    - size
    - payload_offset
    argTypes:
    - unsigned char*
    - opus_int32
    - unsigned char*
    - unsigned char*[]
    - opus_int16[]
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 398
      start: 392
    functionDepth: 2
    functionLinenumber: 392
    functionLinenumberEnd: 398
    functionName: opus_packet_parse
    functionSourceFile: /src/opus/src/opus.c
    functionUses: 2
    functionsReached:
    - opus_packet_parse_impl
    linkageType: ''
    returnType: int
    signature: "int opus_packet_parse(const unsigned char *data, opus_int32 len,\n
      \     unsigned char *out_toc, const unsigned char *frames[48],\n      opus_int16
      size[48], int *payload_offset)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 165
    functionName: OPUS_SET_VOICE_RATIO
    functionSourceFile: /src/opus/src/opus_private.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_SET_VOICE_RATIO(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 170
    functionName: OPUS_GET_VOICE_RATIO
    functionSourceFile: /src/opus/src/opus_private.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_GET_VOICE_RATIO(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 174
    functionName: OPUS_SET_FORCE_MODE
    functionSourceFile: /src/opus/src/opus_private.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_SET_FORCE_MODE(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 206
    functionName: align
    functionSourceFile: /src/opus/src/opus_private.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE align(int i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 39
    functionName: fmadd
    functionSourceFile: /src/opus/src/mlp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: fmadd(a, b, c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fmadd
      Src: /src/opus/src/mlp.c:49,1
    - Dst: fmadd
      Src: /src/opus/src/mlp.c:49,1
    - Dst: fmadd
      Src: /src/opus/src/mlp.c:50,1
    - Dst: fmadd
      Src: /src/opus/src/mlp.c:50,1
    - Dst: MAX32
      Src: /src/opus/src/mlp.c:52,1
    - Dst: MIN32
      Src: /src/opus/src/mlp.c:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 53
    functionName: tansig_approx
    functionSourceFile: /src/opus/src/mlp.c
    functionUses: 0
    functionsReached:
    - fmadd
    - MIN32
    - MAX32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE tansig_approx(float x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tansig_approx
      Src: /src/opus/src/mlp.c:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 58
    functionName: sigmoid_approx
    functionSourceFile: /src/opus/src/mlp.c
    functionUses: 0
    functionsReached:
    - tansig_approx
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE sigmoid_approx(float x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 6
    argNames:
    - out
    - weights
    - rows
    - cols
    - col_stride
    - x
    argTypes:
    - float*
    - opus_int8*
    - int
    - int
    - int
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 68
    functionName: gemm_accum
    functionSourceFile: /src/opus/src/mlp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void gemm_accum(float *out, const opus_int8 *weights, int rows, int
      cols, int col_stride, const float *x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gemm_accum
      Src: /src/opus/src/mlp.c:80,1
    - Dst: sigmoid_approx
      Src: /src/opus/src/mlp.c:85,1
    - Dst: tansig_approx
      Src: /src/opus/src/mlp.c:88,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 3
    argNames:
    - layer
    - output
    - input
    argTypes:
    - AnalysisDenseLayer*
    - float*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 90
    functionName: analysis_compute_dense
    functionSourceFile: /src/opus/src/mlp.c
    functionUses: 0
    functionsReached:
    - gemm_accum
    - sigmoid_approx
    - tansig_approx
    linkageType: ''
    returnType: void
    signature: void analysis_compute_dense(const AnalysisDenseLayer *layer, float
      *output, const float *input)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gemm_accum
      Src: /src/opus/src/mlp.c:107,1
    - Dst: gemm_accum
      Src: /src/opus/src/mlp.c:108,1
    - Dst: sigmoid_approx
      Src: /src/opus/src/mlp.c:110,1
    - Dst: gemm_accum
      Src: /src/opus/src/mlp.c:115,1
    - Dst: gemm_accum
      Src: /src/opus/src/mlp.c:116,1
    - Dst: sigmoid_approx
      Src: /src/opus/src/mlp.c:118,1
    - Dst: gemm_accum
      Src: /src/opus/src/mlp.c:125,1
    - Dst: gemm_accum
      Src: /src/opus/src/mlp.c:126,1
    - Dst: tansig_approx
      Src: /src/opus/src/mlp.c:128,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 26
    argCount: 3
    argNames:
    - gru
    - state
    - input
    argTypes:
    - AnalysisGRULayer*
    - float*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 131
    functionName: analysis_compute_gru
    functionSourceFile: /src/opus/src/mlp.c
    functionUses: 0
    functionsReached:
    - gemm_accum
    - sigmoid_approx
    - tansig_approx
    linkageType: ''
    returnType: void
    signature: void analysis_compute_gru(const AnalysisGRULayer *gru, float *state,
      const float *input)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 36
    functionName: OPUS_COSF
    functionSourceFile: /src/opus/src/opus_compare.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_COSF(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 37
    functionName: OPUS_SINF
    functionSourceFile: /src/opus/src/opus_compare.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_SINF(_x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/src/opus_compare.c:40,1
    - Dst: exit
      Src: /src/opus/src/opus_compare.c:41,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - _ptr
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 44
    functionName: check_alloc
    functionSourceFile: /src/opus/src/opus_compare.c
    functionUses: 2
    functionsReached:
    - exit
    - fprintf
    linkageType: ''
    returnType: void
    signature: void *check_alloc(void *_ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: check_alloc
      Src: /src/opus/src/opus_compare.c:47,1
    - Dst: malloc
      Src: /src/opus/src/opus_compare.c:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _size
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionName: opus_malloc
    functionSourceFile: /src/opus/src/opus_compare.c
    functionUses: 1
    functionsReached:
    - malloc
    - check_alloc
    linkageType: ''
    returnType: void
    signature: void *opus_malloc(size_t _size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: check_alloc
      Src: /src/opus/src/opus_compare.c:51,1
    - Dst: realloc
      Src: /src/opus/src/opus_compare.c:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - _ptr
    - _size
    argTypes:
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionName: opus_realloc
    functionSourceFile: /src/opus/src/opus_compare.c
    functionUses: 1
    functionsReached:
    - check_alloc
    - realloc
    linkageType: ''
    returnType: void
    signature: void *opus_realloc(void *_ptr,size_t _size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fread
      Src: /src/opus/src/opus_compare.c:64,1
    - Dst: opus_realloc
      Src: /src/opus/src/opus_compare.c:69,1
    - Dst: opus_realloc
      Src: /src/opus/src/opus_compare.c:83,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 3
    argNames:
    - _samples
    - _fin
    - _nchannels
    argTypes:
    - float**
    - FILE*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 86
    functionName: read_pcm16
    functionSourceFile: /src/opus/src/opus_compare.c
    functionUses: 0
    functionsReached:
    - opus_realloc
    - fread
    linkageType: ''
    returnType: size_t
    signature: size_t read_pcm16(float **_samples,FILE *_fin,int _nchannels)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: opus_malloc
      Src: /src/opus/src/opus_compare.c:98,1
    - Dst: OPUS_COSF
      Src: /src/opus/src/opus_compare.c:104,1
    - Dst: OPUS_COSF
      Src: /src/opus/src/opus_compare.c:107,1
    - Dst: OPUS_SINF
      Src: /src/opus/src/opus_compare.c:110,1
    - Dst: free
      Src: /src/opus/src/opus_compare.c:150,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 48
    argCount: 10
    argNames:
    - _out
    - _ps
    - _bands
    - _nbands
    - _in
    - _nchannels
    - _nframes
    - _window_sz
    - _step
    - _downsample
    argTypes:
    - float*
    - float*
    - int*
    - int
    - float*
    - int
    - size_t
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 151
    functionName: band_energy
    functionSourceFile: /src/opus/src/opus_compare.c
    functionUses: 1
    functionsReached:
    - opus_malloc
    - OPUS_SINF
    - OPUS_COSF
    - free
    linkageType: ''
    returnType: void
    signature: "void band_energy(float *_out,float *_ps,const int *_bands,int _nbands,\n
      const float *_in,int _nchannels,size_t _nframes,int _window_sz,\n int _step,int
      _downsample)"
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/src/opus_compare.c:189,1
    - Dst: strcmp
      Src: /src/opus/src/opus_compare.c:194,1
    - Dst: strcmp
      Src: /src/opus/src/opus_compare.c:202,1
    - Dst: atoi
      Src: /src/opus/src/opus_compare.c:203,1
    - Dst: fprintf
      Src: /src/opus/src/opus_compare.c:205,1
    - Dst: fopen
      Src: /src/opus/src/opus_compare.c:219,1
    - Dst: fprintf
      Src: /src/opus/src/opus_compare.c:221,1
    - Dst: fopen
      Src: /src/opus/src/opus_compare.c:224,1
    - Dst: fprintf
      Src: /src/opus/src/opus_compare.c:226,1
    - Dst: fclose
      Src: /src/opus/src/opus_compare.c:227,1
    - Dst: read_pcm16
      Src: /src/opus/src/opus_compare.c:231,1
    - Dst: fclose
      Src: /src/opus/src/opus_compare.c:235,1
    - Dst: read_pcm16
      Src: /src/opus/src/opus_compare.c:236,1
    - Dst: fclose
      Src: /src/opus/src/opus_compare.c:237,1
    - Dst: fprintf
      Src: /src/opus/src/opus_compare.c:239,1
    - Dst: fprintf
      Src: /src/opus/src/opus_compare.c:244,1
    - Dst: opus_malloc
      Src: /src/opus/src/opus_compare.c:249,1
    - Dst: opus_malloc
      Src: /src/opus/src/opus_compare.c:250,1
    - Dst: opus_malloc
      Src: /src/opus/src/opus_compare.c:251,1
    - Dst: band_energy
      Src: /src/opus/src/opus_compare.c:254,1
    - Dst: free
      Src: /src/opus/src/opus_compare.c:256,1
    - Dst: band_energy
      Src: /src/opus/src/opus_compare.c:257,1
    - Dst: free
      Src: /src/opus/src/opus_compare.c:259,1
    - Dst: log
      Src: /src/opus/src/opus_compare.c:349,1
    - Dst: free
      Src: /src/opus/src/opus_compare.c:366,1
    - Dst: free
      Src: /src/opus/src/opus_compare.c:367,1
    - Dst: free
      Src: /src/opus/src/opus_compare.c:368,1
    - Dst: pow
      Src: /src/opus/src/opus_compare.c:369,1
    - Dst: log
      Src: /src/opus/src/opus_compare.c:370,1
    - Dst: log
      Src: /src/opus/src/opus_compare.c:370,1
    - Dst: fprintf
      Src: /src/opus/src/opus_compare.c:372,1
    - Dst: fprintf
      Src: /src/opus/src/opus_compare.c:373,1
    - Dst: fprintf
      Src: /src/opus/src/opus_compare.c:377,1
    - Dst: fprintf
      Src: /src/opus/src/opus_compare.c:378,1
    CyclomaticComplexity: 48
    EdgeCount: 48
    ICount: 166
    argCount: 2
    argNames:
    - _argc
    - _argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 382
      start: 165
    functionDepth: 1
    functionLinenumber: 165
    functionLinenumberEnd: 382
    functionName: main
    functionSourceFile: /src/opus/src/opus_compare.c
    functionUses: 0
    functionsReached:
    - atoi
    - strcmp
    - fclose
    - band_energy
    - pow
    - fprintf
    - opus_malloc
    - fopen
    - log
    - free
    - read_pcm16
    linkageType: ''
    returnType: int
    signature: int main(int _argc,const char **_argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/src/repacketizer_demo.c:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - argv0
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 42
    functionName: usage
    functionSourceFile: /src/opus/src/repacketizer_demo.c
    functionUses: 2
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void usage(char *argv0)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - i
    - ch
    argTypes:
    - opus_uint32
    - unsigned char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 50
    functionName: int_to_char
    functionSourceFile: /src/opus/src/repacketizer_demo.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void int_to_char(opus_uint32 i, unsigned char ch[4])
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ch
    argTypes:
    - unsigned char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 56
    functionName: char_to_int
    functionSourceFile: /src/opus/src/repacketizer_demo.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: opus_uint32
    signature: opus_uint32 char_to_int(unsigned char ch[4])
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: usage
      Src: /src/opus/src/repacketizer_demo.c:71,1
    - Dst: strcmp
      Src: /src/opus/src/repacketizer_demo.c:76,1
    - Dst: atoi
      Src: /src/opus/src/repacketizer_demo.c:78,1
    - Dst: fprintf
      Src: /src/opus/src/repacketizer_demo.c:81,1
    - Dst: fprintf
      Src: /src/opus/src/repacketizer_demo.c:86,1
    - Dst: strcmp
      Src: /src/opus/src/repacketizer_demo.c:90,1
    - Dst: fprintf
      Src: /src/opus/src/repacketizer_demo.c:94,1
    - Dst: usage
      Src: /src/opus/src/repacketizer_demo.c:95,1
    - Dst: fopen
      Src: /src/opus/src/repacketizer_demo.c:99,1
    - Dst: fprintf
      Src: /src/opus/src/repacketizer_demo.c:102,1
    - Dst: fopen
      Src: /src/opus/src/repacketizer_demo.c:105,1
    - Dst: fprintf
      Src: /src/opus/src/repacketizer_demo.c:108,1
    - Dst: fclose
      Src: /src/opus/src/repacketizer_demo.c:109,1
    - Dst: opus_repacketizer_create
      Src: /src/opus/src/repacketizer_demo.c:113,1
    - Dst: opus_repacketizer_init
      Src: /src/opus/src/repacketizer_demo.c:118,1
    - Dst: fread
      Src: /src/opus/src/repacketizer_demo.c:122,1
    - Dst: feof
      Src: /src/opus/src/repacketizer_demo.c:124,1
    - Dst: fprintf
      Src: /src/opus/src/repacketizer_demo.c:128,1
    - Dst: fclose
      Src: /src/opus/src/repacketizer_demo.c:129,1
    - Dst: fclose
      Src: /src/opus/src/repacketizer_demo.c:130,1
    - Dst: char_to_int
      Src: /src/opus/src/repacketizer_demo.c:135,1
    - Dst: feof
      Src: /src/opus/src/repacketizer_demo.c:139,1
    - Dst: fprintf
      Src: /src/opus/src/repacketizer_demo.c:143,1
    - Dst: fclose
      Src: /src/opus/src/repacketizer_demo.c:144,1
    - Dst: fclose
      Src: /src/opus/src/repacketizer_demo.c:145,1
    - Dst: fread
      Src: /src/opus/src/repacketizer_demo.c:150,1
    - Dst: feof
      Src: /src/opus/src/repacketizer_demo.c:152,1
    - Dst: fprintf
      Src: /src/opus/src/repacketizer_demo.c:156,1
    - Dst: fclose
      Src: /src/opus/src/repacketizer_demo.c:157,1
    - Dst: fclose
      Src: /src/opus/src/repacketizer_demo.c:158,1
    - Dst: char_to_int
      Src: /src/opus/src/repacketizer_demo.c:163,1
    - Dst: fread
      Src: /src/opus/src/repacketizer_demo.c:164,1
    - Dst: feof
      Src: /src/opus/src/repacketizer_demo.c:165,1
    - Dst: fprintf
      Src: /src/opus/src/repacketizer_demo.c:169,1
    - Dst: fclose
      Src: /src/opus/src/repacketizer_demo.c:170,1
    - Dst: fclose
      Src: /src/opus/src/repacketizer_demo.c:171,1
    - Dst: opus_repacketizer_cat
      Src: /src/opus/src/repacketizer_demo.c:176,1
    - Dst: fprintf
      Src: /src/opus/src/repacketizer_demo.c:179,1
    - Dst: opus_strerror
      Src: /src/opus/src/repacketizer_demo.c:179,1
    - Dst: opus_repacketizer_out
      Src: /src/opus/src/repacketizer_demo.c:190,1
    - Dst: int_to_char
      Src: /src/opus/src/repacketizer_demo.c:193,1
    - Dst: fwrite
      Src: /src/opus/src/repacketizer_demo.c:194,1
    - Dst: fprintf
      Src: /src/opus/src/repacketizer_demo.c:195,1
    - Dst: int_to_char
      Src: /src/opus/src/repacketizer_demo.c:198,1
    - Dst: fwrite
      Src: /src/opus/src/repacketizer_demo.c:199,1
    - Dst: fprintf
      Src: /src/opus/src/repacketizer_demo.c:200,1
    - Dst: fwrite
      Src: /src/opus/src/repacketizer_demo.c:203,1
    - Dst: fprintf
      Src: /src/opus/src/repacketizer_demo.c:204,1
    - Dst: fprintf
      Src: /src/opus/src/repacketizer_demo.c:209,1
    - Dst: opus_strerror
      Src: /src/opus/src/repacketizer_demo.c:209,1
    - Dst: opus_repacketizer_get_nb_frames
      Src: /src/opus/src/repacketizer_demo.c:212,1
    - Dst: opus_repacketizer_out_range
      Src: /src/opus/src/repacketizer_demo.c:215,1
    - Dst: int_to_char
      Src: /src/opus/src/repacketizer_demo.c:218,1
    - Dst: fwrite
      Src: /src/opus/src/repacketizer_demo.c:219,1
    - Dst: fprintf
      Src: /src/opus/src/repacketizer_demo.c:220,1
    - Dst: int_to_char
      Src: /src/opus/src/repacketizer_demo.c:224,1
    - Dst: int_to_char
      Src: /src/opus/src/repacketizer_demo.c:226,1
    - Dst: fwrite
      Src: /src/opus/src/repacketizer_demo.c:227,1
    - Dst: fprintf
      Src: /src/opus/src/repacketizer_demo.c:228,1
    - Dst: fwrite
      Src: /src/opus/src/repacketizer_demo.c:231,1
    - Dst: fprintf
      Src: /src/opus/src/repacketizer_demo.c:232,1
    - Dst: fprintf
      Src: /src/opus/src/repacketizer_demo.c:237,1
    - Dst: opus_strerror
      Src: /src/opus/src/repacketizer_demo.c:237,1
    - Dst: fclose
      Src: /src/opus/src/repacketizer_demo.c:244,1
    - Dst: fclose
      Src: /src/opus/src/repacketizer_demo.c:245,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 144
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 247
    functionName: main
    functionSourceFile: /src/opus/src/repacketizer_demo.c
    functionUses: 0
    functionsReached:
    - opus_strerror
    - opus_repacketizer_out_range
    - atoi
    - opus_repacketizer_get_nb_frames
    - strcmp
    - usage
    - fclose
    - char_to_int
    - int_to_char
    - opus_repacketizer_create
    - opus_repacketizer_cat
    - fread
    - fprintf
    - fwrite
    - fopen
    - opus_repacketizer_out
    - opus_repacketizer_init
    - feof
    linkageType: ''
    returnType: int
    signature: int main(int argc, char *argv[])
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: opus_repacketizer_get_size
    functionSourceFile: /src/opus/src/repacketizer.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int opus_repacketizer_get_size(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - rp
    argTypes:
    - OpusRepacketizer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 47
    functionName: opus_repacketizer_init
    functionSourceFile: /src/opus/src/repacketizer.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: OpusRepacketizer
    signature: OpusRepacketizer *opus_repacketizer_init(OpusRepacketizer *rp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: opus_alloc
      Src: /src/opus/src/repacketizer.c:52,1
    - Dst: opus_repacketizer_get_size
      Src: /src/opus/src/repacketizer.c:52,1
    - Dst: opus_repacketizer_init
      Src: /src/opus/src/repacketizer.c:54,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 55
    functionName: opus_repacketizer_create
    functionSourceFile: /src/opus/src/repacketizer.c
    functionUses: 3
    functionsReached:
    - opus_repacketizer_init
    - opus_alloc
    - opus_repacketizer_get_size
    linkageType: ''
    returnType: OpusRepacketizer
    signature: OpusRepacketizer *opus_repacketizer_create(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_free
      Src: /src/opus/src/repacketizer.c:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - rp
    argTypes:
    - OpusRepacketizer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: opus_repacketizer_destroy
    functionSourceFile: /src/opus/src/repacketizer.c
    functionUses: 2
    functionsReached:
    - opus_free
    linkageType: ''
    returnType: void
    signature: void opus_repacketizer_destroy(OpusRepacketizer *rp)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: opus_packet_get_samples_per_frame
      Src: /src/opus/src/repacketizer.c:71,1
    - Dst: opus_packet_get_nb_frames
      Src: /src/opus/src/repacketizer.c:77,1
    - Dst: opus_packet_parse_impl
      Src: /src/opus/src/repacketizer.c:86,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 4
    argNames:
    - rp
    - data
    - len
    - self_delimited
    argTypes:
    - OpusRepacketizer*
    - unsigned char*
    - opus_int32
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 62
    functionDepth: 2
    functionLinenumber: 62
    functionLinenumberEnd: 102
    functionName: opus_repacketizer_cat_impl
    functionSourceFile: /src/opus/src/repacketizer.c
    functionUses: 0
    functionsReached:
    - opus_packet_parse_impl
    - opus_packet_get_nb_frames
    - opus_packet_get_samples_per_frame
    linkageType: ''
    returnType: int
    signature: int opus_repacketizer_cat_impl(OpusRepacketizer *rp, const unsigned
      char *data, opus_int32 len, int self_delimited)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_repacketizer_cat_impl
      Src: /src/opus/src/repacketizer.c:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - rp
    - data
    - len
    argTypes:
    - OpusRepacketizer*
    - unsigned char*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 104
    functionDepth: 3
    functionLinenumber: 104
    functionLinenumberEnd: 107
    functionName: opus_repacketizer_cat
    functionSourceFile: /src/opus/src/repacketizer.c
    functionUses: 4
    functionsReached:
    - opus_repacketizer_cat_impl
    linkageType: ''
    returnType: int
    signature: int opus_repacketizer_cat(OpusRepacketizer *rp, const unsigned char
      *data, opus_int32 len)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - rp
    argTypes:
    - OpusRepacketizer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 112
    functionName: opus_repacketizer_get_nb_frames
    functionSourceFile: /src/opus/src/repacketizer.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int opus_repacketizer_get_nb_frames(OpusRepacketizer *rp)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/src/repacketizer.c:125,1
    - Dst: opus_packet_extensions_count
      Src: /src/opus/src/repacketizer.c:147,1
    - Dst: ALLOC
      Src: /src/opus/src/repacketizer.c:151,1
    - Dst: opus_packet_extensions_parse
      Src: /src/opus/src/repacketizer.c:164,1
    - Dst: encode_size
      Src: /src/opus/src/repacketizer.c:211,1
    - Dst: opus_packet_extensions_generate
      Src: /src/opus/src/repacketizer.c:263,1
    - Dst: encode_size
      Src: /src/opus/src/repacketizer.c:291,1
    - Dst: encode_size
      Src: /src/opus/src/repacketizer.c:295,1
    - Dst: OPUS_MOVE
      Src: /src/opus/src/repacketizer.c:305,1
    - Dst: opus_packet_extensions_generate
      Src: /src/opus/src/repacketizer.c:309,1
    - Dst: celt_assert
      Src: /src/opus/src/repacketizer.c:311,1
    CyclomaticComplexity: 43
    EdgeCount: 43
    ICount: 139
    argCount: 9
    argNames:
    - rp
    - begin
    - end
    - data
    - maxlen
    - self_delimited
    - pad
    - extensions
    - nb_extensions
    argTypes:
    - OpusRepacketizer*
    - int
    - int
    - unsigned char*
    - opus_int32
    - int
    - int
    - opus_extension_data*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 323
    functionName: opus_repacketizer_out_range_impl
    functionSourceFile: /src/opus/src/repacketizer.c
    functionUses: 2
    functionsReached:
    - celt_assert
    - opus_packet_extensions_parse
    - OPUS_MOVE
    - encode_size
    - opus_packet_extensions_count
    - VARDECL
    - ALLOC
    - opus_packet_extensions_generate
    linkageType: ''
    returnType: opus_int32
    signature: "opus_int32 opus_repacketizer_out_range_impl(OpusRepacketizer *rp,
      int begin, int end,\n      unsigned char *data, opus_int32 maxlen, int self_delimited,
      int pad, const opus_extension_data *extensions, int nb_extensions)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_repacketizer_out_range_impl
      Src: /src/opus/src/repacketizer.c:327,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - rp
    - begin
    - end
    - data
    - maxlen
    argTypes:
    - OpusRepacketizer*
    - int
    - int
    - unsigned char*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 325
    functionDepth: 2
    functionLinenumber: 325
    functionLinenumberEnd: 328
    functionName: opus_repacketizer_out_range
    functionSourceFile: /src/opus/src/repacketizer.c
    functionUses: 2
    functionsReached:
    - opus_repacketizer_out_range_impl
    linkageType: ''
    returnType: opus_int32
    signature: opus_int32 opus_repacketizer_out_range(OpusRepacketizer *rp, int begin,
      int end, unsigned char *data, opus_int32 maxlen)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_repacketizer_out_range_impl
      Src: /src/opus/src/repacketizer.c:332,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - rp
    - data
    - maxlen
    argTypes:
    - OpusRepacketizer*
    - unsigned char*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 333
      start: 330
    functionDepth: 2
    functionLinenumber: 330
    functionLinenumberEnd: 333
    functionName: opus_repacketizer_out
    functionSourceFile: /src/opus/src/repacketizer.c
    functionUses: 3
    functionsReached:
    - opus_repacketizer_out_range_impl
    linkageType: ''
    returnType: opus_int32
    signature: opus_int32 opus_repacketizer_out(OpusRepacketizer *rp, unsigned char
      *data, opus_int32 maxlen)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: opus_repacketizer_init
      Src: /src/opus/src/repacketizer.c:348,1
    - Dst: OPUS_COPY
      Src: /src/opus/src/repacketizer.c:350,1
    - Dst: opus_repacketizer_cat
      Src: /src/opus/src/repacketizer.c:351,1
    - Dst: opus_repacketizer_out_range_impl
      Src: /src/opus/src/repacketizer.c:354,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 6
    argNames:
    - data
    - len
    - new_len
    - pad
    - extensions
    - nb_extensions
    argTypes:
    - unsigned char*
    - opus_int32
    - opus_int32
    - int
    - opus_extension_data*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 335
    functionDepth: 4
    functionLinenumber: 335
    functionLinenumberEnd: 357
    functionName: opus_packet_pad_impl
    functionSourceFile: /src/opus/src/repacketizer.c
    functionUses: 0
    functionsReached:
    - opus_repacketizer_init
    - opus_repacketizer_out_range_impl
    - opus_repacketizer_cat
    - OPUS_COPY
    linkageType: ''
    returnType: opus_int32
    signature: opus_int32 opus_packet_pad_impl(unsigned char *data, opus_int32 len,
      opus_int32 new_len, int pad, const opus_extension_data  *extensions, int nb_extensions)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: opus_packet_pad_impl
      Src: /src/opus/src/repacketizer.c:363,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - data
    - len
    - new_len
    argTypes:
    - unsigned char*
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 359
    functionDepth: 5
    functionLinenumber: 359
    functionLinenumberEnd: 369
    functionName: opus_packet_pad
    functionSourceFile: /src/opus/src/repacketizer.c
    functionUses: 2
    functionsReached:
    - opus_packet_pad_impl
    linkageType: ''
    returnType: int
    signature: int opus_packet_pad(unsigned char *data, opus_int32 len, opus_int32
      new_len)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: opus_repacketizer_init
      Src: /src/opus/src/repacketizer.c:378,1
    - Dst: opus_repacketizer_cat
      Src: /src/opus/src/repacketizer.c:379,1
    - Dst: opus_repacketizer_out_range_impl
      Src: /src/opus/src/repacketizer.c:387,1
    - Dst: celt_assert
      Src: /src/opus/src/repacketizer.c:388,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - data
    - len
    argTypes:
    - unsigned char*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 390
      start: 371
    functionDepth: 4
    functionLinenumber: 371
    functionLinenumberEnd: 390
    functionName: opus_packet_unpad
    functionSourceFile: /src/opus/src/repacketizer.c
    functionUses: 2
    functionsReached:
    - celt_assert
    - opus_repacketizer_init
    - opus_repacketizer_out_range_impl
    - opus_repacketizer_cat
    linkageType: ''
    returnType: opus_int32
    signature: opus_int32 opus_packet_unpad(unsigned char *data, opus_int32 len)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: opus_packet_parse_impl
      Src: /src/opus/src/repacketizer.c:413,1
    - Dst: opus_packet_pad
      Src: /src/opus/src/repacketizer.c:420,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 4
    argNames:
    - data
    - len
    - new_len
    - nb_streams
    argTypes:
    - unsigned char*
    - opus_int32
    - opus_int32
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 421
      start: 392
    functionDepth: 6
    functionLinenumber: 392
    functionLinenumberEnd: 421
    functionName: opus_multistream_packet_pad
    functionSourceFile: /src/opus/src/repacketizer.c
    functionUses: 2
    functionsReached:
    - opus_packet_parse_impl
    - opus_packet_pad
    linkageType: ''
    returnType: int
    signature: int opus_multistream_packet_pad(unsigned char *data, opus_int32 len,
      opus_int32 new_len, int nb_streams)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: opus_repacketizer_init
      Src: /src/opus/src/repacketizer.c:445,1
    - Dst: opus_packet_parse_impl
      Src: /src/opus/src/repacketizer.c:446,1
    - Dst: opus_repacketizer_cat_impl
      Src: /src/opus/src/repacketizer.c:450,1
    - Dst: opus_repacketizer_out_range_impl
      Src: /src/opus/src/repacketizer.c:458,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 28
    argCount: 3
    argNames:
    - data
    - len
    - nb_streams
    argTypes:
    - unsigned char*
    - opus_int32
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 468
      start: 423
    functionDepth: 3
    functionLinenumber: 423
    functionLinenumberEnd: 468
    functionName: opus_multistream_packet_unpad
    functionSourceFile: /src/opus/src/repacketizer.c
    functionUses: 2
    functionsReached:
    - opus_packet_parse_impl
    - opus_repacketizer_init
    - opus_repacketizer_out_range_impl
    - opus_repacketizer_cat_impl
    linkageType: ''
    returnType: opus_int32
    signature: opus_int32 opus_multistream_packet_unpad(unsigned char *data, opus_int32
      len, int nb_streams)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mapping_matrix_multiply_channel_in_float
      Src: /src/opus/src/opus_projection_encoder.c:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - dst
    - dst_stride
    - src
    - src_stride
    - src_channel
    - frame_size
    - user_data
    argTypes:
    - opus_res*
    - int
    - void*
    - int
    - int
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 61
    functionName: opus_projection_copy_channel_in_float
    functionSourceFile: /src/opus/src/opus_projection_encoder.c
    functionUses: 0
    functionsReached:
    - mapping_matrix_multiply_channel_in_float
    linkageType: ''
    returnType: void
    signature: "void opus_projection_copy_channel_in_float(\n  opus_res *dst,\n  int
      dst_stride,\n  const void *src,\n  int src_stride,\n  int src_channel,\n  int
      frame_size,\n  void *user_data\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mapping_matrix_multiply_channel_in_short
      Src: /src/opus/src/opus_projection_encoder.c:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - dst
    - dst_stride
    - src
    - src_stride
    - src_channel
    - frame_size
    - user_data
    argTypes:
    - opus_res*
    - int
    - void*
    - int
    - int
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 76
    functionName: opus_projection_copy_channel_in_short
    functionSourceFile: /src/opus/src/opus_projection_encoder.c
    functionUses: 0
    functionsReached:
    - mapping_matrix_multiply_channel_in_short
    linkageType: ''
    returnType: void
    signature: "void opus_projection_copy_channel_in_short(\n  opus_res *dst,\n  int
      dst_stride,\n  const void *src,\n  int src_stride,\n  int src_channel,\n  int
      frame_size,\n  void *user_data\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mapping_matrix_multiply_channel_in_int24
      Src: /src/opus/src/opus_projection_encoder.c:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - dst
    - dst_stride
    - src
    - src_stride
    - src_channel
    - frame_size
    - user_data
    argTypes:
    - opus_res*
    - int
    - void*
    - int
    - int
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 78
    functionDepth: 1
    functionLinenumber: 78
    functionLinenumberEnd: 90
    functionName: opus_projection_copy_channel_in_int24
    functionSourceFile: /src/opus/src/opus_projection_encoder.c
    functionUses: 0
    functionsReached:
    - mapping_matrix_multiply_channel_in_int24
    linkageType: ''
    returnType: void
    signature: "void opus_projection_copy_channel_in_int24(\n  opus_res *dst,\n  int
      dst_stride,\n  const void *src,\n  int src_stride,\n  int src_channel,\n  int
      frame_size,\n  void *user_data\n)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: isqrt32
      Src: /src/opus/src/opus_projection_encoder.c:104,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 2
    argNames:
    - channels
    - order_plus_one
    argTypes:
    - int
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 113
    functionName: get_order_plus_one_from_channels
    functionSourceFile: /src/opus/src/opus_projection_encoder.c
    functionUses: 0
    functionsReached:
    - isqrt32
    linkageType: ''
    returnType: int
    signature: int get_order_plus_one_from_channels(int channels, int *order_plus_one)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: get_order_plus_one_from_channels
      Src: /src/opus/src/opus_projection_encoder.c:121,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 5
    argNames:
    - channels
    - mapping_family
    - streams
    - coupled_streams
    - order_plus_one
    argTypes:
    - int
    - int
    - int*
    - int*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 115
    functionDepth: 2
    functionLinenumber: 115
    functionLinenumberEnd: 130
    functionName: get_streams_from_channels
    functionSourceFile: /src/opus/src/opus_projection_encoder.c
    functionUses: 0
    functionsReached:
    - get_order_plus_one_from_channels
    linkageType: ''
    returnType: int
    signature: "int get_streams_from_channels(int channels, int mapping_family,\n
      \                                    int *streams, int *coupled_streams,\n                                     int
      *order_plus_one)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: align
      Src: /src/opus/src/opus_projection_encoder.c:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - st
    argTypes:
    - OpusProjectionEncoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 137
    functionName: get_mixing_matrix
    functionSourceFile: /src/opus/src/opus_projection_encoder.c
    functionUses: 0
    functionsReached:
    - align
    linkageType: ''
    returnType: MappingMatrix
    signature: MappingMatrix *get_mixing_matrix(OpusProjectionEncoder *st)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: align
      Src: /src/opus/src/opus_projection_encoder.c:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - st
    argTypes:
    - OpusProjectionEncoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 139
    functionDepth: 1
    functionLinenumber: 139
    functionLinenumberEnd: 145
    functionName: get_enc_demixing_matrix
    functionSourceFile: /src/opus/src/opus_projection_encoder.c
    functionUses: 0
    functionsReached:
    - align
    linkageType: ''
    returnType: MappingMatrix
    signature: MappingMatrix *get_enc_demixing_matrix(OpusProjectionEncoder *st)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: align
      Src: /src/opus/src/opus_projection_encoder.c:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - st
    argTypes:
    - OpusProjectionEncoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 147
    functionDepth: 1
    functionLinenumber: 147
    functionLinenumberEnd: 154
    functionName: get_multistream_encoder
    functionSourceFile: /src/opus/src/opus_projection_encoder.c
    functionUses: 0
    functionsReached:
    - align
    linkageType: ''
    returnType: OpusMSEncoder
    signature: OpusMSEncoder *get_multistream_encoder(OpusProjectionEncoder *st)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: get_streams_from_channels
      Src: /src/opus/src/opus_projection_encoder.c:168,1
    - Dst: mapping_matrix_get_size
      Src: /src/opus/src/opus_projection_encoder.c:212,1
    - Dst: mapping_matrix_get_size
      Src: /src/opus/src/opus_projection_encoder.c:217,1
    - Dst: opus_multistream_encoder_get_size
      Src: /src/opus/src/opus_projection_encoder.c:222,1
    - Dst: align
      Src: /src/opus/src/opus_projection_encoder.c:226,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 45
    argCount: 2
    argNames:
    - channels
    - mapping_family
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 156
    functionDepth: 3
    functionLinenumber: 156
    functionLinenumberEnd: 228
    functionName: opus_projection_ambisonics_encoder_get_size
    functionSourceFile: /src/opus/src/opus_projection_encoder.c
    functionUses: 0
    functionsReached:
    - get_streams_from_channels
    - opus_multistream_encoder_get_size
    - mapping_matrix_get_size
    - align
    linkageType: ''
    returnType: opus_int32
    signature: "opus_int32 opus_projection_ambisonics_encoder_get_size(int channels,\n
      \                                                      int mapping_family)"
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: get_streams_from_channels
      Src: /src/opus/src/opus_projection_encoder.c:247,1
    - Dst: get_mixing_matrix
      Src: /src/opus/src/opus_projection_encoder.c:254,1
    - Dst: mapping_matrix_init
      Src: /src/opus/src/opus_projection_encoder.c:257,1
    - Dst: mapping_matrix_init
      Src: /src/opus/src/opus_projection_encoder.c:264,1
    - Dst: mapping_matrix_init
      Src: /src/opus/src/opus_projection_encoder.c:271,1
    - Dst: mapping_matrix_init
      Src: /src/opus/src/opus_projection_encoder.c:278,1
    - Dst: mapping_matrix_init
      Src: /src/opus/src/opus_projection_encoder.c:285,1
    - Dst: mapping_matrix_get_size
      Src: /src/opus/src/opus_projection_encoder.c:293,1
    - Dst: get_enc_demixing_matrix
      Src: /src/opus/src/opus_projection_encoder.c:299,1
    - Dst: mapping_matrix_init
      Src: /src/opus/src/opus_projection_encoder.c:302,1
    - Dst: mapping_matrix_init
      Src: /src/opus/src/opus_projection_encoder.c:309,1
    - Dst: mapping_matrix_init
      Src: /src/opus/src/opus_projection_encoder.c:316,1
    - Dst: mapping_matrix_init
      Src: /src/opus/src/opus_projection_encoder.c:323,1
    - Dst: mapping_matrix_init
      Src: /src/opus/src/opus_projection_encoder.c:330,1
    - Dst: mapping_matrix_get_size
      Src: /src/opus/src/opus_projection_encoder.c:338,1
    - Dst: get_multistream_encoder
      Src: /src/opus/src/opus_projection_encoder.c:358,1
    - Dst: opus_multistream_encoder_init
      Src: /src/opus/src/opus_projection_encoder.c:359,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 56
    argCount: 7
    argNames:
    - st
    - Fs
    - channels
    - mapping_family
    - streams
    - coupled_streams
    - application
    argTypes:
    - OpusProjectionEncoder*
    - opus_int32
    - int
    - int
    - int*
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 230
    functionDepth: 3
    functionLinenumber: 230
    functionLinenumberEnd: 362
    functionName: opus_projection_ambisonics_encoder_init
    functionSourceFile: /src/opus/src/opus_projection_encoder.c
    functionUses: 0
    functionsReached:
    - get_mixing_matrix
    - get_multistream_encoder
    - opus_multistream_encoder_init
    - get_streams_from_channels
    - mapping_matrix_init
    - mapping_matrix_get_size
    - get_enc_demixing_matrix
    linkageType: ''
    returnType: int
    signature: "int opus_projection_ambisonics_encoder_init(OpusProjectionEncoder
      *st, opus_int32 Fs,\n                                            int channels,
      int mapping_family,\n                                            int *streams,
      int *coupled_streams,\n                                            int application)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: opus_projection_ambisonics_encoder_get_size
      Src: /src/opus/src/opus_projection_encoder.c:373,1
    - Dst: opus_alloc
      Src: /src/opus/src/opus_projection_encoder.c:379,1
    - Dst: opus_projection_ambisonics_encoder_init
      Src: /src/opus/src/opus_projection_encoder.c:388,1
    - Dst: opus_free
      Src: /src/opus/src/opus_projection_encoder.c:392,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 7
    argNames:
    - Fs
    - channels
    - mapping_family
    - streams
    - coupled_streams
    - application
    - error
    argTypes:
    - opus_int32
    - int
    - int
    - int*
    - int*
    - int
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 398
      start: 364
    functionDepth: 4
    functionLinenumber: 364
    functionLinenumberEnd: 398
    functionName: opus_projection_ambisonics_encoder_create
    functionSourceFile: /src/opus/src/opus_projection_encoder.c
    functionUses: 7
    functionsReached:
    - opus_projection_ambisonics_encoder_get_size
    - opus_free
    - opus_alloc
    - opus_projection_ambisonics_encoder_init
    linkageType: ''
    returnType: OpusProjectionEncoder
    signature: "OpusProjectionEncoder *opus_projection_ambisonics_encoder_create(\n
      \   opus_int32 Fs, int channels, int mapping_family, int *streams,\n    int
      *coupled_streams, int application, int *error)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_multistream_encode_native
      Src: /src/opus/src/opus_projection_encoder.c:404,1
    - Dst: get_multistream_encoder
      Src: /src/opus/src/opus_projection_encoder.c:404,1
    - Dst: get_mixing_matrix
      Src: /src/opus/src/opus_projection_encoder.c:406,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - st
    - pcm
    - frame_size
    - data
    - max_data_bytes
    argTypes:
    - OpusProjectionEncoder*
    - opus_int16*
    - int
    - unsigned char*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 407
      start: 400
    functionDepth: 2
    functionLinenumber: 400
    functionLinenumberEnd: 407
    functionName: opus_projection_encode
    functionSourceFile: /src/opus/src/opus_projection_encoder.c
    functionUses: 4
    functionsReached:
    - get_mixing_matrix
    - opus_multistream_encode_native
    - get_multistream_encoder
    linkageType: ''
    returnType: int
    signature: "int opus_projection_encode(OpusProjectionEncoder *st, const opus_int16
      *pcm,\n                           int frame_size, unsigned char *data,\n                           opus_int32
      max_data_bytes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_multistream_encode_native
      Src: /src/opus/src/opus_projection_encoder.c:413,1
    - Dst: get_multistream_encoder
      Src: /src/opus/src/opus_projection_encoder.c:413,1
    - Dst: get_mixing_matrix
      Src: /src/opus/src/opus_projection_encoder.c:415,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - st
    - pcm
    - frame_size
    - data
    - max_data_bytes
    argTypes:
    - OpusProjectionEncoder*
    - opus_int32*
    - int
    - unsigned char*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 416
      start: 409
    functionDepth: 2
    functionLinenumber: 409
    functionLinenumberEnd: 416
    functionName: opus_projection_encode24
    functionSourceFile: /src/opus/src/opus_projection_encoder.c
    functionUses: 0
    functionsReached:
    - get_mixing_matrix
    - opus_multistream_encode_native
    - get_multistream_encoder
    linkageType: ''
    returnType: int
    signature: "int opus_projection_encode24(OpusProjectionEncoder *st, const opus_int32
      *pcm,\n                           int frame_size, unsigned char *data,\n                           opus_int32
      max_data_bytes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_multistream_encode_native
      Src: /src/opus/src/opus_projection_encoder.c:423,1
    - Dst: get_multistream_encoder
      Src: /src/opus/src/opus_projection_encoder.c:423,1
    - Dst: get_mixing_matrix
      Src: /src/opus/src/opus_projection_encoder.c:425,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - st
    - pcm
    - frame_size
    - data
    - max_data_bytes
    argTypes:
    - OpusProjectionEncoder*
    - float*
    - int
    - unsigned char*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 426
      start: 419
    functionDepth: 2
    functionLinenumber: 419
    functionLinenumberEnd: 426
    functionName: opus_projection_encode_float
    functionSourceFile: /src/opus/src/opus_projection_encoder.c
    functionUses: 2
    functionsReached:
    - get_mixing_matrix
    - opus_multistream_encode_native
    - get_multistream_encoder
    linkageType: ''
    returnType: int
    signature: "int opus_projection_encode_float(OpusProjectionEncoder *st, const
      float *pcm,\n                                 int frame_size, unsigned char
      *data,\n                                 opus_int32 max_data_bytes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_free
      Src: /src/opus/src/opus_projection_encoder.c:431,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - st
    argTypes:
    - OpusProjectionEncoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 432
      start: 429
    functionDepth: 1
    functionLinenumber: 429
    functionLinenumberEnd: 432
    functionName: opus_projection_encoder_destroy
    functionSourceFile: /src/opus/src/opus_projection_encoder.c
    functionUses: 7
    functionsReached:
    - opus_free
    linkageType: ''
    returnType: void
    signature: void opus_projection_encoder_destroy(OpusProjectionEncoder *st)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: get_multistream_encoder
      Src: /src/opus/src/opus_projection_encoder.c:441,1
    - Dst: get_enc_demixing_matrix
      Src: /src/opus/src/opus_projection_encoder.c:442,1
    - Dst: va_start
      Src: /src/opus/src/opus_projection_encoder.c:444,1
    - Dst: va_arg
      Src: /src/opus/src/opus_projection_encoder.c:449,1
    - Dst: va_arg
      Src: /src/opus/src/opus_projection_encoder.c:461,1
    - Dst: va_arg
      Src: /src/opus/src/opus_projection_encoder.c:484,1
    - Dst: va_arg
      Src: /src/opus/src/opus_projection_encoder.c:485,1
    - Dst: mapping_matrix_get_data
      Src: /src/opus/src/opus_projection_encoder.c:490,1
    - Dst: opus_multistream_encoder_ctl_va_list
      Src: /src/opus/src/opus_projection_encoder.c:511,1
    - Dst: va_end
      Src: /src/opus/src/opus_projection_encoder.c:515,1
    - Dst: va_end
      Src: /src/opus/src/opus_projection_encoder.c:519,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 58
    argCount: 2
    argNames:
    - st
    - request
    argTypes:
    - OpusProjectionEncoder*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 521
      start: 434
    functionDepth: 2
    functionLinenumber: 434
    functionLinenumberEnd: 521
    functionName: opus_projection_encoder_ctl
    functionSourceFile: /src/opus/src/opus_projection_encoder.c
    functionUses: 5
    functionsReached:
    - opus_multistream_encoder_ctl_va_list
    - va_arg
    - get_multistream_encoder
    - va_end
    - get_enc_demixing_matrix
    - mapping_matrix_get_data
    - va_start
    linkageType: ''
    returnType: int
    signature: int opus_projection_encoder_ctl(OpusProjectionEncoder *st, int request,
      ...)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_CLEAR
      Src: /src/opus/src/opus_projection_decoder.c:63,1
    - Dst: mapping_matrix_multiply_channel_out_float
      Src: /src/opus/src/opus_projection_decoder.c:66,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 7
    argNames:
    - dst
    - dst_stride
    - dst_channel
    - src
    - src_stride
    - frame_size
    - user_data
    argTypes:
    - void*
    - int
    - int
    - opus_res*
    - int
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 68
    functionName: opus_projection_copy_channel_out_float
    functionSourceFile: /src/opus/src/opus_projection_decoder.c
    functionUses: 0
    functionsReached:
    - mapping_matrix_multiply_channel_out_float
    - OPUS_CLEAR
    linkageType: ''
    returnType: void
    signature: "void opus_projection_copy_channel_out_float(\n  void *dst,\n  int
      dst_stride,\n  int dst_channel,\n  const opus_res *src,\n  int src_stride,\n
      \ int frame_size,\n  void *user_data)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_CLEAR
      Src: /src/opus/src/opus_projection_decoder.c:85,1
    - Dst: mapping_matrix_multiply_channel_out_short
      Src: /src/opus/src/opus_projection_decoder.c:88,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 7
    argNames:
    - dst
    - dst_stride
    - dst_channel
    - src
    - src_stride
    - frame_size
    - user_data
    argTypes:
    - void*
    - int
    - int
    - opus_res*
    - int
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 90
    functionName: opus_projection_copy_channel_out_short
    functionSourceFile: /src/opus/src/opus_projection_decoder.c
    functionUses: 0
    functionsReached:
    - OPUS_CLEAR
    - mapping_matrix_multiply_channel_out_short
    linkageType: ''
    returnType: void
    signature: "void opus_projection_copy_channel_out_short(\n  void *dst,\n  int
      dst_stride,\n  int dst_channel,\n  const opus_res *src,\n  int src_stride,\n
      \ int frame_size,\n  void *user_data)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_CLEAR
      Src: /src/opus/src/opus_projection_decoder.c:106,1
    - Dst: mapping_matrix_multiply_channel_out_int24
      Src: /src/opus/src/opus_projection_decoder.c:109,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 7
    argNames:
    - dst
    - dst_stride
    - dst_channel
    - src
    - src_stride
    - frame_size
    - user_data
    argTypes:
    - void*
    - int
    - int
    - opus_res*
    - int
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 111
    functionName: opus_projection_copy_channel_out_int24
    functionSourceFile: /src/opus/src/opus_projection_decoder.c
    functionUses: 0
    functionsReached:
    - mapping_matrix_multiply_channel_out_int24
    - OPUS_CLEAR
    linkageType: ''
    returnType: void
    signature: "void opus_projection_copy_channel_out_int24(\n  void *dst,\n  int
      dst_stride,\n  int dst_channel,\n  const opus_res *src,\n  int src_stride,\n
      \ int frame_size,\n  void *user_data)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: align
      Src: /src/opus/src/opus_projection_decoder.c:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - st
    argTypes:
    - OpusProjectionDecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 113
    functionDepth: 1
    functionLinenumber: 113
    functionLinenumberEnd: 118
    functionName: get_dec_demixing_matrix
    functionSourceFile: /src/opus/src/opus_projection_decoder.c
    functionUses: 0
    functionsReached:
    - align
    linkageType: ''
    returnType: MappingMatrix
    signature: MappingMatrix *get_dec_demixing_matrix(OpusProjectionDecoder *st)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: align
      Src: /src/opus/src/opus_projection_decoder.c:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - st
    argTypes:
    - OpusProjectionDecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 120
    functionDepth: 1
    functionLinenumber: 120
    functionLinenumberEnd: 126
    functionName: get_multistream_decoder
    functionSourceFile: /src/opus/src/opus_projection_decoder.c
    functionUses: 0
    functionsReached:
    - align
    linkageType: ''
    returnType: OpusMSDecoder
    signature: OpusMSDecoder *get_multistream_decoder(OpusProjectionDecoder *st)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: mapping_matrix_get_size
      Src: /src/opus/src/opus_projection_decoder.c:135,1
    - Dst: opus_multistream_decoder_get_size
      Src: /src/opus/src/opus_projection_decoder.c:139,1
    - Dst: align
      Src: /src/opus/src/opus_projection_decoder.c:143,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - channels
    - streams
    - coupled_streams
    argTypes:
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 128
    functionDepth: 1
    functionLinenumber: 128
    functionLinenumberEnd: 144
    functionName: opus_projection_decoder_get_size
    functionSourceFile: /src/opus/src/opus_projection_decoder.c
    functionUses: 0
    functionsReached:
    - opus_multistream_decoder_get_size
    - mapping_matrix_get_size
    - align
    linkageType: ''
    returnType: opus_int32
    signature: "opus_int32 opus_projection_decoder_get_size(int channels, int streams,\n
      \                                           int coupled_streams)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/src/opus_projection_decoder.c:154,1
    - Dst: ALLOC
      Src: /src/opus/src/opus_projection_decoder.c:167,1
    - Dst: mapping_matrix_get_size
      Src: /src/opus/src/opus_projection_decoder.c:177,1
    - Dst: mapping_matrix_init
      Src: /src/opus/src/opus_projection_decoder.c:184,1
    - Dst: get_dec_demixing_matrix
      Src: /src/opus/src/opus_projection_decoder.c:184,1
    - Dst: opus_multistream_decoder_init
      Src: /src/opus/src/opus_projection_decoder.c:191,1
    - Dst: get_multistream_decoder
      Src: /src/opus/src/opus_projection_decoder.c:192,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 7
    argNames:
    - st
    - Fs
    - channels
    - streams
    - coupled_streams
    - demixing_matrix
    - demixing_matrix_size
    argTypes:
    - OpusProjectionDecoder*
    - opus_int32
    - int
    - int
    - int
    - unsigned char*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 146
    functionDepth: 2
    functionLinenumber: 146
    functionLinenumberEnd: 195
    functionName: opus_projection_decoder_init
    functionSourceFile: /src/opus/src/opus_projection_decoder.c
    functionUses: 0
    functionsReached:
    - opus_multistream_decoder_init
    - get_multistream_decoder
    - VARDECL
    - ALLOC
    - mapping_matrix_init
    - mapping_matrix_get_size
    - get_dec_demixing_matrix
    linkageType: ''
    returnType: int
    signature: "int opus_projection_decoder_init(OpusProjectionDecoder *st, opus_int32
      Fs,\n  int channels, int streams, int coupled_streams,\n  unsigned char *demixing_matrix,
      opus_int32 demixing_matrix_size)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: opus_projection_decoder_get_size
      Src: /src/opus/src/opus_projection_decoder.c:206,1
    - Dst: opus_alloc
      Src: /src/opus/src/opus_projection_decoder.c:212,1
    - Dst: opus_projection_decoder_init
      Src: /src/opus/src/opus_projection_decoder.c:221,1
    - Dst: opus_free
      Src: /src/opus/src/opus_projection_decoder.c:225,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 7
    argNames:
    - Fs
    - channels
    - streams
    - coupled_streams
    - demixing_matrix
    - demixing_matrix_size
    - error
    argTypes:
    - opus_int32
    - int
    - int
    - int
    - unsigned char*
    - opus_int32
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 197
    functionDepth: 3
    functionLinenumber: 197
    functionLinenumberEnd: 231
    functionName: opus_projection_decoder_create
    functionSourceFile: /src/opus/src/opus_projection_decoder.c
    functionUses: 3
    functionsReached:
    - opus_projection_decoder_get_size
    - opus_free
    - opus_projection_decoder_init
    - opus_alloc
    linkageType: ''
    returnType: OpusProjectionDecoder
    signature: "OpusProjectionDecoder *opus_projection_decoder_create(\n  opus_int32
      Fs, int channels, int streams, int coupled_streams,\n  unsigned char *demixing_matrix,
      opus_int32 demixing_matrix_size, int *error)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_multistream_decode_native
      Src: /src/opus/src/opus_projection_decoder.c:243,1
    - Dst: get_multistream_decoder
      Src: /src/opus/src/opus_projection_decoder.c:243,1
    - Dst: get_dec_demixing_matrix
      Src: /src/opus/src/opus_projection_decoder.c:245,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - st
    - data
    - len
    - pcm
    - frame_size
    - decode_fec
    argTypes:
    - OpusProjectionDecoder*
    - unsigned char*
    - opus_int32
    - opus_int16*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 239
    functionDepth: 2
    functionLinenumber: 239
    functionLinenumberEnd: 246
    functionName: opus_projection_decode
    functionSourceFile: /src/opus/src/opus_projection_decoder.c
    functionUses: 2
    functionsReached:
    - get_multistream_decoder
    - get_dec_demixing_matrix
    - opus_multistream_decode_native
    linkageType: ''
    returnType: int
    signature: "int opus_projection_decode(OpusProjectionDecoder *st, const unsigned
      char *data,\n                           opus_int32 len, opus_int16 *pcm, int
      frame_size,\n                           int decode_fec)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_multistream_decode_native
      Src: /src/opus/src/opus_projection_decoder.c:252,1
    - Dst: get_multistream_decoder
      Src: /src/opus/src/opus_projection_decoder.c:252,1
    - Dst: get_dec_demixing_matrix
      Src: /src/opus/src/opus_projection_decoder.c:254,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - st
    - data
    - len
    - pcm
    - frame_size
    - decode_fec
    argTypes:
    - OpusProjectionDecoder*
    - unsigned char*
    - opus_int32
    - opus_int32*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 248
    functionDepth: 2
    functionLinenumber: 248
    functionLinenumberEnd: 255
    functionName: opus_projection_decode24
    functionSourceFile: /src/opus/src/opus_projection_decoder.c
    functionUses: 0
    functionsReached:
    - get_multistream_decoder
    - get_dec_demixing_matrix
    - opus_multistream_decode_native
    linkageType: ''
    returnType: int
    signature: "int opus_projection_decode24(OpusProjectionDecoder *st, const unsigned
      char *data,\n                           opus_int32 len, opus_int32 *pcm, int
      frame_size,\n                           int decode_fec)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_multistream_decode_native
      Src: /src/opus/src/opus_projection_decoder.c:261,1
    - Dst: get_multistream_decoder
      Src: /src/opus/src/opus_projection_decoder.c:261,1
    - Dst: get_dec_demixing_matrix
      Src: /src/opus/src/opus_projection_decoder.c:263,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - st
    - data
    - len
    - pcm
    - frame_size
    - decode_fec
    argTypes:
    - OpusProjectionDecoder*
    - unsigned char*
    - opus_int32
    - float*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 258
    functionDepth: 2
    functionLinenumber: 258
    functionLinenumberEnd: 264
    functionName: opus_projection_decode_float
    functionSourceFile: /src/opus/src/opus_projection_decoder.c
    functionUses: 1
    functionsReached:
    - get_multistream_decoder
    - get_dec_demixing_matrix
    - opus_multistream_decode_native
    linkageType: ''
    returnType: int
    signature: "int opus_projection_decode_float(OpusProjectionDecoder *st, const
      unsigned char *data,\n                                 opus_int32 len, float
      *pcm, int frame_size, int decode_fec)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/opus/src/opus_projection_decoder.c:272,1
    - Dst: opus_multistream_decoder_ctl_va_list
      Src: /src/opus/src/opus_projection_decoder.c:273,1
    - Dst: get_multistream_decoder
      Src: /src/opus/src/opus_projection_decoder.c:273,1
    - Dst: va_end
      Src: /src/opus/src/opus_projection_decoder.c:275,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - st
    - request
    argTypes:
    - OpusProjectionDecoder*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 267
    functionDepth: 2
    functionLinenumber: 267
    functionLinenumberEnd: 277
    functionName: opus_projection_decoder_ctl
    functionSourceFile: /src/opus/src/opus_projection_decoder.c
    functionUses: 0
    functionsReached:
    - get_multistream_decoder
    - va_end
    - opus_multistream_decoder_ctl_va_list
    - va_start
    linkageType: ''
    returnType: int
    signature: int opus_projection_decoder_ctl(OpusProjectionDecoder *st, int request,
      ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_free
      Src: /src/opus/src/opus_projection_decoder.c:281,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - st
    argTypes:
    - OpusProjectionDecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 279
    functionDepth: 1
    functionLinenumber: 279
    functionLinenumberEnd: 282
    functionName: opus_projection_decoder_destroy
    functionSourceFile: /src/opus/src/opus_projection_decoder.c
    functionUses: 3
    functionsReached:
    - opus_free
    linkageType: ''
    returnType: void
    signature: void opus_projection_decoder_destroy(OpusProjectionDecoder *st)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SUB32
      Src: /src/opus/src/analysis.c:131,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/src/analysis.c:132,1
    - Dst: QCONST16
      Src: /src/opus/src/analysis.c:132,1
    - Dst: ADD32
      Src: /src/opus/src/analysis.c:133,1
    - Dst: ADD32
      Src: /src/opus/src/analysis.c:134,1
    - Dst: SUB32
      Src: /src/opus/src/analysis.c:140,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/src/analysis.c:141,1
    - Dst: QCONST16
      Src: /src/opus/src/analysis.c:141,1
    - Dst: ADD32
      Src: /src/opus/src/analysis.c:142,1
    - Dst: ADD32
      Src: /src/opus/src/analysis.c:143,1
    - Dst: ADD32
      Src: /src/opus/src/analysis.c:144,1
    - Dst: SUB32
      Src: /src/opus/src/analysis.c:146,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/src/analysis.c:147,1
    - Dst: QCONST16
      Src: /src/opus/src/analysis.c:147,1
    - Dst: ADD32
      Src: /src/opus/src/analysis.c:148,1
    - Dst: ADD32
      Src: /src/opus/src/analysis.c:149,1
    - Dst: ADD32
      Src: /src/opus/src/analysis.c:150,1
    - Dst: SHR64
      Src: /src/opus/src/analysis.c:153,1
    - Dst: HALF32
      Src: /src/opus/src/analysis.c:155,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 26
    argCount: 4
    argNames:
    - S
    - out
    - in
    - inLen
    argTypes:
    - opus_val32*
    - opus_val32*
    - opus_val32*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 163
    functionName: silk_resampler_down2_hp
    functionSourceFile: /src/opus/src/analysis.c
    functionUses: 0
    functionsReached:
    - ADD32
    - SHR64
    - MULT16_32_Q15
    - HALF32
    - QCONST16
    - SUB32
    linkageType: ''
    returnType: opus_val32
    signature: "opus_val32 silk_resampler_down2_hp(\n    opus_val32                  *S,
      \                /* I/O  State vector [ 2 ]                                          */\n
      \   opus_val32                  *out,               /* O    Output signal [
      floor(len/2) ]                              */\n    const opus_val32            *in,
      \               /* I    Input signal [ len ]                                        */\n
      \   int                         inLen               /* I    Number of input
      samples                                     */\n)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/src/analysis.c:167,1
    - Dst: celt_assert
      Src: /src/opus/src/analysis.c:181,1
    - Dst: ALLOC
      Src: /src/opus/src/analysis.c:182,1
    - Dst: downmix
      Src: /src/opus/src/analysis.c:184,1
    - Dst: HALF32
      Src: /src/opus/src/analysis.c:187,1
    - Dst: silk_resampler_down2_hp
      Src: /src/opus/src/analysis.c:192,1
    - Dst: OPUS_COPY
      Src: /src/opus/src/analysis.c:194,1
    - Dst: VARDECL
      Src: /src/opus/src/analysis.c:196,1
    - Dst: ALLOC
      Src: /src/opus/src/analysis.c:197,1
    - Dst: silk_resampler_down2_hp
      Src: /src/opus/src/analysis.c:207,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 41
    argCount: 10
    argNames:
    - downmix
    - _x
    - y
    - S
    - subframe
    - offset
    - c1
    - c2
    - C
    - Fs
    argTypes:
    - downmix_func
    - void*
    - opus_val32*
    - opus_val32[]
    - int
    - int
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 165
    functionDepth: 1
    functionLinenumber: 165
    functionLinenumberEnd: 214
    functionName: downmix_and_resample
    functionSourceFile: /src/opus/src/analysis.c
    functionUses: 0
    functionsReached:
    - downmix
    - celt_assert
    - OPUS_COPY
    - VARDECL
    - HALF32
    - ALLOC
    - silk_resampler_down2_hp
    linkageType: ''
    returnType: opus_val32
    signature: opus_val32 downmix_and_resample(downmix_func downmix, const void *_x,
      opus_val32 *y, opus_val32 S[3], int subframe, int offset, int c1, int c2, int
      C, int Fs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_select_arch
      Src: /src/opus/src/analysis.c:219,1
    - Dst: tonality_analysis_reset
      Src: /src/opus/src/analysis.c:222,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - tonal
    - Fs
    argTypes:
    - TonalityAnalysisState*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 216
    functionDepth: 1
    functionLinenumber: 216
    functionLinenumberEnd: 223
    functionName: tonality_analysis_init
    functionSourceFile: /src/opus/src/analysis.c
    functionUses: 0
    functionsReached:
    - tonality_analysis_reset
    - opus_select_arch
    linkageType: ''
    returnType: void
    signature: void tonality_analysis_init(TonalityAnalysisState *tonal, opus_int32
      Fs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_CLEAR
      Src: /src/opus/src/analysis.c:229,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - tonal
    argTypes:
    - TonalityAnalysisState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 225
    functionDepth: 1
    functionLinenumber: 225
    functionLinenumberEnd: 230
    functionName: tonality_analysis_reset
    functionSourceFile: /src/opus/src/analysis.c
    functionUses: 1
    functionsReached:
    - OPUS_CLEAR
    linkageType: ''
    returnType: void
    signature: void tonality_analysis_reset(TonalityAnalysisState *tonal)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_COPY
      Src: /src/opus/src/analysis.c:274,1
    - Dst: MAX32
      Src: /src/opus/src/analysis.c:289,1
    - Dst: IMAX
      Src: /src/opus/src/analysis.c:292,1
    - Dst: IMAX
      Src: /src/opus/src/analysis.c:304,1
    - Dst: MAX32
      Src: /src/opus/src/analysis.c:306,1
    - Dst: MAX16
      Src: /src/opus/src/analysis.c:355,1
    - Dst: MAX16
      Src: /src/opus/src/analysis.c:356,1
    - Dst: MIN16
      Src: /src/opus/src/analysis.c:371,1
    - Dst: MAX16
      Src: /src/opus/src/analysis.c:372,1
    - Dst: MAX16
      Src: /src/opus/src/analysis.c:373,1
    - Dst: MAX16
      Src: /src/opus/src/analysis.c:374,1
    - Dst: MIN16
      Src: /src/opus/src/analysis.c:377,1
    - Dst: MAX16
      Src: /src/opus/src/analysis.c:378,1
    - Dst: MAX16
      Src: /src/opus/src/analysis.c:379,1
    - Dst: MIN16
      Src: /src/opus/src/analysis.c:380,1
    - Dst: IMIN
      Src: /src/opus/src/analysis.c:390,1
    - Dst: MIN16
      Src: /src/opus/src/analysis.c:395,1
    - Dst: MAX16
      Src: /src/opus/src/analysis.c:396,1
    - Dst: MAX16
      Src: /src/opus/src/analysis.c:399,1
    - Dst: MIN16
      Src: /src/opus/src/analysis.c:400,1
    CyclomaticComplexity: 30
    EdgeCount: 30
    ICount: 104
    argCount: 3
    argNames:
    - tonal
    - info_out
    - len
    argTypes:
    - TonalityAnalysisState*
    - AnalysisInfo*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 408
      start: 232
    functionDepth: 1
    functionLinenumber: 232
    functionLinenumberEnd: 408
    functionName: tonality_get_info
    functionSourceFile: /src/opus/src/analysis.c
    functionUses: 0
    functionsReached:
    - IMIN
    - OPUS_COPY
    - MIN16
    - MAX32
    - IMAX
    - MAX16
    linkageType: ''
    returnType: void
    signature: void tonality_get_info(TonalityAnalysisState *tonal, AnalysisInfo *info_out,
      int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - e
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 423
      start: 422
    functionDepth: 0
    functionLinenumber: 422
    functionLinenumberEnd: 423
    functionName: SCALE_ENER
    functionSourceFile: /src/opus/src/analysis.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SCALE_ENER(e)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - e
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 425
      start: 424
    functionDepth: 0
    functionLinenumber: 424
    functionLinenumberEnd: 425
    functionName: SCALE_ENER
    functionSourceFile: /src/opus/src/analysis.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SCALE_ENER(e)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_maxabs32
      Src: /src/opus/src/analysis.c:435,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - pcm
    - frame_size
    - channels
    - lsb_depth
    argTypes:
    - opus_val32*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 428
    functionDepth: 1
    functionLinenumber: 428
    functionLinenumberEnd: 440
    functionName: is_digital_silence32
    functionSourceFile: /src/opus/src/analysis.c
    functionUses: 0
    functionsReached:
    - celt_maxabs32
    linkageType: ''
    returnType: int
    signature: int is_digital_silence32(const opus_val32* pcm, int frame_size, int
      channels, int lsb_depth)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - pcm
    - ','
    - frame_size
    - ','
    - channels
    - ','
    - lsb_depth
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 443
      start: 442
    functionDepth: 0
    functionLinenumber: 442
    functionLinenumberEnd: 443
    functionName: is_digital_silence32
    functionSourceFile: /src/opus/src/analysis.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: is_digital_silence32(pcm, frame_size, channels, lsb_depth)
  - BBCount: 31
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/src/analysis.c:449,1
    - Dst: VARDECL
      Src: /src/opus/src/analysis.c:450,1
    - Dst: IMIN
      Src: /src/opus/src/analysis.c:497,1
    - Dst: IMIN
      Src: /src/opus/src/analysis.c:498,1
    - Dst: IMIN
      Src: /src/opus/src/analysis.c:500,1
    - Dst: downmix_and_resample
      Src: /src/opus/src/analysis.c:514,1
    - Dst: IMIN
      Src: /src/opus/src/analysis.c:516,1
    - Dst: is_digital_silence32
      Src: /src/opus/src/analysis.c:529,1
    - Dst: ALLOC
      Src: /src/opus/src/analysis.c:531,1
    - Dst: ALLOC
      Src: /src/opus/src/analysis.c:532,1
    - Dst: ALLOC
      Src: /src/opus/src/analysis.c:533,1
    - Dst: ALLOC
      Src: /src/opus/src/analysis.c:534,1
    - Dst: OPUS_MOVE
      Src: /src/opus/src/analysis.c:543,1
    - Dst: downmix_and_resample
      Src: /src/opus/src/analysis.c:545,1
    - Dst: OPUS_COPY
      Src: /src/opus/src/analysis.c:555,1
    - Dst: opus_fft
      Src: /src/opus/src/analysis.c:559,1
    - Dst: celt_isnan
      Src: /src/opus/src/analysis.c:562,1
    - Dst: fast_atan2f
      Src: /src/opus/src/analysis.c:581,1
    - Dst: fast_atan2f
      Src: /src/opus/src/analysis.c:585,1
    - Dst: float2int
      Src: /src/opus/src/analysis.c:589,1
    - Dst: ABS16
      Src: /src/opus/src/analysis.c:590,1
    - Dst: float2int
      Src: /src/opus/src/analysis.c:594,1
    - Dst: ABS16
      Src: /src/opus/src/analysis.c:595,1
    - Dst: MIN32
      Src: /src/opus/src/analysis.c:611,1
    - Dst: MAX32
      Src: /src/opus/src/analysis.c:611,1
    - Dst: MAX32
      Src: /src/opus/src/analysis.c:612,1
    - Dst: SCALE_ENER
      Src: /src/opus/src/analysis.c:643,1
    - Dst: log
      Src: /src/opus/src/analysis.c:644,1
    - Dst: SCALE_ENER
      Src: /src/opus/src/analysis.c:655,1
    - Dst: MAX32
      Src: /src/opus/src/analysis.c:657,1
    - Dst: celt_isnan
      Src: /src/opus/src/analysis.c:662,1
    - Dst: sqrt
      Src: /src/opus/src/analysis.c:673,1
    - Dst: log
      Src: /src/opus/src/analysis.c:674,1
    - Dst: log
      Src: /src/opus/src/analysis.c:675,1
    - Dst: MAX32
      Src: /src/opus/src/analysis.c:689,1
    - Dst: MIN32
      Src: /src/opus/src/analysis.c:693,1
    - Dst: sqrt
      Src: /src/opus/src/analysis.c:700,1
    - Dst: MIN16
      Src: /src/opus/src/analysis.c:704,1
    - Dst: sqrt
      Src: /src/opus/src/analysis.c:704,1
    - Dst: MAX16
      Src: /src/opus/src/analysis.c:709,1
    - Dst: MAX16
      Src: /src/opus/src/analysis.c:721,1
    - Dst: MIN16
      Src: /src/opus/src/analysis.c:732,1
    - Dst: MAX16
      Src: /src/opus/src/analysis.c:733,1
    - Dst: MIN16
      Src: /src/opus/src/analysis.c:738,1
    - Dst: MAX16
      Src: /src/opus/src/analysis.c:739,1
    - Dst: celt_assert
      Src: /src/opus/src/analysis.c:741,1
    - Dst: MAX16
      Src: /src/opus/src/analysis.c:750,1
    - Dst: MAX16
      Src: /src/opus/src/analysis.c:751,1
    - Dst: IMIN
      Src: /src/opus/src/analysis.c:752,1
    - Dst: floor
      Src: /src/opus/src/analysis.c:752,1
    - Dst: MIN32
      Src: /src/opus/src/analysis.c:771,1
    - Dst: sqrt
      Src: /src/opus/src/analysis.c:775,1
    - Dst: IMAX
      Src: /src/opus/src/analysis.c:779,1
    - Dst: SCALE_ENER
      Src: /src/opus/src/analysis.c:797,1
    - Dst: MAX32
      Src: /src/opus/src/analysis.c:798,1
    - Dst: MAX32
      Src: /src/opus/src/analysis.c:805,1
    - Dst: MAX32
      Src: /src/opus/src/analysis.c:806,1
    - Dst: MAX32
      Src: /src/opus/src/analysis.c:818,1
    - Dst: MAX32
      Src: /src/opus/src/analysis.c:835,1
    - Dst: MAX32
      Src: /src/opus/src/analysis.c:836,1
    - Dst: log10
      Src: /src/opus/src/analysis.c:854,1
    - Dst: MAX32
      Src: /src/opus/src/analysis.c:855,1
    - Dst: MAX16
      Src: /src/opus/src/analysis.c:886,1
    - Dst: IMIN
      Src: /src/opus/src/analysis.c:893,1
    - Dst: sqrt
      Src: /src/opus/src/analysis.c:923,1
    - Dst: analysis_compute_dense
      Src: /src/opus/src/analysis.c:931,1
    - Dst: analysis_compute_gru
      Src: /src/opus/src/analysis.c:932,1
    - Dst: analysis_compute_dense
      Src: /src/opus/src/analysis.c:933,1
    - Dst: printf
      Src: /src/opus/src/analysis.c:942,1
    - Dst: printf
      Src: /src/opus/src/analysis.c:943,1
    CyclomaticComplexity: 67
    EdgeCount: 67
    ICount: 314
    argCount: 10
    argNames:
    - tonal
    - celt_mode
    - x
    - len
    - offset
    - c1
    - c2
    - C
    - lsb_depth
    - downmix
    argTypes:
    - TonalityAnalysisState*
    - CELTMode*
    - void*
    - int
    - int
    - int
    - int
    - int
    - int
    - downmix_func
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 952
      start: 445
    functionDepth: 2
    functionLinenumber: 445
    functionLinenumberEnd: 952
    functionName: tonality_analysis
    functionSourceFile: /src/opus/src/analysis.c
    functionUses: 0
    functionsReached:
    - celt_isnan
    - OPUS_COPY
    - OPUS_MOVE
    - MIN16
    - log
    - analysis_compute_dense
    - floor
    - VARDECL
    - ALLOC
    - log10
    - MAX16
    - printf
    - celt_assert
    - float2int
    - opus_fft
    - MAX32
    - sqrt
    - analysis_compute_gru
    - IMAX
    - IMIN
    - MIN32
    - is_digital_silence32
    - fast_atan2f
    - SCALE_ENER
    - ABS16
    - downmix_and_resample
    linkageType: ''
    returnType: void
    signature: void tonality_analysis(TonalityAnalysisState *tonal, const CELTMode
      *celt_mode, const void *x, int len, int offset, int c1, int c2, int C, int lsb_depth,
      downmix_func downmix)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: IMIN
      Src: /src/opus/src/analysis.c:965,1
    - Dst: tonality_analysis
      Src: /src/opus/src/analysis.c:970,1
    - Dst: IMIN
      Src: /src/opus/src/analysis.c:970,1
    - Dst: tonality_get_info
      Src: /src/opus/src/analysis.c:979,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 12
    argNames:
    - analysis
    - celt_mode
    - analysis_pcm
    - analysis_frame_size
    - frame_size
    - c1
    - c2
    - C
    - Fs
    - lsb_depth
    - downmix
    - analysis_info
    argTypes:
    - TonalityAnalysisState*
    - CELTMode*
    - void*
    - int
    - int
    - int
    - int
    - int
    - opus_int32
    - int
    - downmix_func
    - AnalysisInfo*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 980
      start: 954
    functionDepth: 3
    functionLinenumber: 954
    functionLinenumberEnd: 980
    functionName: run_analysis
    functionSourceFile: /src/opus/src/analysis.c
    functionUses: 0
    functionsReached:
    - tonality_get_info
    - IMIN
    - tonality_analysis
    linkageType: ''
    returnType: void
    signature: "void run_analysis(TonalityAnalysisState *analysis, const CELTMode
      *celt_mode, const void *analysis_pcm,\n                 int analysis_frame_size,
      int frame_size, int c1, int c2, int C, opus_int32 Fs,\n                 int
      lsb_depth, downmix_func downmix, AnalysisInfo *analysis_info)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: stat
      Src: /src/opus/src/opus_demo.c:67,1
    - Dst: open
      Src: /src/opus/src/opus_demo.c:72,1
    - Dst: mmap
      Src: /src/opus/src/opus_demo.c:77,1
    - Dst: close
      Src: /src/opus/src/opus_demo.c:82,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - filename
    - len
    argTypes:
    - char*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 84
    functionName: load_blob
    functionSourceFile: /src/opus/src/opus_demo.c
    functionUses: 0
    functionsReached:
    - close
    - open
    - mmap
    - stat
    linkageType: ''
    returnType: void
    signature: void *load_blob(const char *filename, int *len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: munmap
      Src: /src/opus/src/opus_demo.c:86,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - blob
    - len
    argTypes:
    - void*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionName: free_blob
    functionSourceFile: /src/opus/src/opus_demo.c
    functionUses: 0
    functionsReached:
    - munmap
    linkageType: ''
    returnType: void
    signature: void free_blob(void *blob, int len)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fopen
      Src: /src/opus/src/opus_demo.c:92,1
    - Dst: perror
      Src: /src/opus/src/opus_demo.c:95,1
    - Dst: fseek
      Src: /src/opus/src/opus_demo.c:99,1
    - Dst: ftell
      Src: /src/opus/src/opus_demo.c:100,1
    - Dst: fseek
      Src: /src/opus/src/opus_demo.c:101,1
    - Dst: malloc
      Src: /src/opus/src/opus_demo.c:106,1
    - Dst: fread
      Src: /src/opus/src/opus_demo.c:111,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 2
    argNames:
    - filename
    - len
    argTypes:
    - char*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 113
    functionName: load_blob
    functionSourceFile: /src/opus/src/opus_demo.c
    functionUses: 0
    functionsReached:
    - fseek
    - ftell
    - perror
    - malloc
    - fread
    - fopen
    linkageType: ''
    returnType: void
    signature: void *load_blob(const char *filename, int *len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: free
      Src: /src/opus/src/opus_demo.c:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - blob
    - len
    argTypes:
    - void*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 117
    functionName: free_blob
    functionSourceFile: /src/opus/src/opus_demo.c
    functionUses: 0
    functionsReached:
    - free
    linkageType: ''
    returnType: void
    signature: void free_blob(void *blob, int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:124,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:126,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:128,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:129,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:130,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:131,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:132,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:133,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:134,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:135,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:136,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:137,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:138,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:139,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:140,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:141,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:142,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:143,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:145,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:147,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:148,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:149,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:151,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 25
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 156
    functionName: print_usage
    functionSourceFile: /src/opus/src/opus_demo.c
    functionUses: 1
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void print_usage( char* argv[] )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - i
    - ch
    argTypes:
    - opus_uint32
    - unsigned char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 175
    functionName: int_to_char
    functionSourceFile: /src/opus/src/opus_demo.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void int_to_char(opus_uint32 i, unsigned char ch[4])
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ch
    argTypes:
    - unsigned char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 181
    functionName: char_to_int
    functionSourceFile: /src/opus/src/opus_demo.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: opus_uint32
    signature: opus_uint32 char_to_int(unsigned char ch[4])
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - decode_only
    - ','
    - opt
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 184
    functionName: check_encoder_option
    functionSourceFile: /src/opus/src/opus_demo.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: check_encoder_option(decode_only, opt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - encode_only
    - ','
    - opt
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 185
    functionName: check_decoder_option
    functionSourceFile: /src/opus/src/opus_demo.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: check_decoder_option(encode_only, opt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_multistream_surround_encoder_create
      Src: /src/opus/src/opus_demo.c:322,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - Fs
    - channels
    - application
    - error
    argTypes:
    - opus_int32
    - int
    - int
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 318
    functionDepth: 1
    functionLinenumber: 318
    functionLinenumberEnd: 323
    functionName: ms_opus_encoder_create
    functionSourceFile: /src/opus/src/opus_demo.c
    functionUses: 0
    functionsReached:
    - opus_multistream_surround_encoder_create
    linkageType: ''
    returnType: OpusEncoder
    signature: OpusEncoder *ms_opus_encoder_create(opus_int32 Fs, int channels, int
      application, int *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_multistream_decoder_create
      Src: /src/opus/src/opus_demo.c:331,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - Fs
    - channels
    - error
    argTypes:
    - opus_int32
    - int
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 324
    functionDepth: 1
    functionLinenumber: 324
    functionLinenumberEnd: 332
    functionName: ms_opus_decoder_create
    functionSourceFile: /src/opus/src/opus_demo.c
    functionUses: 0
    functionsReached:
    - opus_multistream_decoder_create
    linkageType: ''
    returnType: OpusDecoder
    signature: OpusDecoder *ms_opus_decoder_create(opus_int32 Fs, int channels, int
      *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rand
      Src: /src/opus/src/opus_demo.c:364,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - min
    - max
    - step
    argTypes:
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 362
    functionDepth: 0
    functionLinenumber: 362
    functionLinenumberEnd: 370
    functionName: randint
    functionSourceFile: /src/opus/src/opus_demo.c
    functionUses: 0
    functionsReached:
    - rand
    linkageType: ''
    returnType: int
    signature: int randint(int min, int max, int step)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: randint
      Src: /src/opus/src/opus_demo.c:379,1
    - Dst: randint
      Src: /src/opus/src/opus_demo.c:380,1
    - Dst: randint
      Src: /src/opus/src/opus_demo.c:381,1
    - Dst: randint
      Src: /src/opus/src/opus_demo.c:382,1
    - Dst: printf
      Src: /src/opus/src/opus_demo.c:386,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_demo.c:389,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/src/opus_demo.c:389,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_demo.c:390,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/src/opus_demo.c:390,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_demo.c:391,1
    - Dst: OPUS_SET_PACKET_LOSS_PERC
      Src: /src/opus/src/opus_demo.c:391,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_demo.c:392,1
    - Dst: OPUS_SET_VBR
      Src: /src/opus/src/opus_demo.c:392,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - enc
    argTypes:
    - OpusEncoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 393
      start: 372
    functionDepth: 1
    functionLinenumber: 372
    functionLinenumberEnd: 393
    functionName: new_random_setting
    functionSourceFile: /src/opus/src/opus_demo.c
    functionUses: 0
    functionsReached:
    - OPUS_SET_PACKET_LOSS_PERC
    - OPUS_SET_BITRATE
    - randint
    - OPUS_SET_COMPLEXITY
    - opus_encoder_ctl
    - OPUS_SET_VBR
    - printf
    linkageType: ''
    returnType: void
    signature: void new_random_setting(OpusEncoder *enc)
  - BBCount: 170
    BranchProfiles: []
    Callsites:
    - Dst: load_blob
      Src: /src/opus/src/opus_demo.c:480,1
    - Dst: print_usage
      Src: /src/opus/src/opus_demo.c:485,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:490,1
    - Dst: opus_get_version_string
      Src: /src/opus/src/opus_demo.c:490,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:493,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:497,1
    - Dst: print_usage
      Src: /src/opus/src/opus_demo.c:504,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:510,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:512,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:514,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:516,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:518,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:519,1
    - Dst: print_usage
      Src: /src/opus/src/opus_demo.c:520,1
    - Dst: atol
      Src: /src/opus/src/opus_demo.c:525,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:536,1
    - Dst: atoi
      Src: /src/opus/src/opus_demo.c:546,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:551,1
    - Dst: atol
      Src: /src/opus/src/opus_demo.c:557,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:573,1
    - Dst: check_encoder_option
      Src: /src/opus/src/opus_demo.c:574,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:577,1
    - Dst: check_encoder_option
      Src: /src/opus/src/opus_demo.c:578,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:579,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:581,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:583,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:585,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:587,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:590,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:596,1
    - Dst: check_encoder_option
      Src: /src/opus/src/opus_demo.c:597,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:598,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:600,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:602,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:604,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:606,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:608,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:610,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:612,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:614,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:617,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:623,1
    - Dst: check_encoder_option
      Src: /src/opus/src/opus_demo.c:624,1
    - Dst: atoi
      Src: /src/opus/src/opus_demo.c:625,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:627,1
    - Dst: check_encoder_option
      Src: /src/opus/src/opus_demo.c:628,1
    - Dst: atoi
      Src: /src/opus/src/opus_demo.c:629,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:631,1
    - Dst: check_decoder_option
      Src: /src/opus/src/opus_demo.c:632,1
    - Dst: atoi
      Src: /src/opus/src/opus_demo.c:633,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:635,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:638,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:641,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:644,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:647,1
    - Dst: check_encoder_option
      Src: /src/opus/src/opus_demo.c:648,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:651,1
    - Dst: check_encoder_option
      Src: /src/opus/src/opus_demo.c:652,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:655,1
    - Dst: check_encoder_option
      Src: /src/opus/src/opus_demo.c:656,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:659,1
    - Dst: check_encoder_option
      Src: /src/opus/src/opus_demo.c:660,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:663,1
    - Dst: atoi
      Src: /src/opus/src/opus_demo.c:664,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:667,1
    - Dst: atof
      Src: /src/opus/src/opus_demo.c:668,1
    - Dst: lossgen_init
      Src: /src/opus/src/opus_demo.c:669,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:672,1
    - Dst: fopen
      Src: /src/opus/src/opus_demo.c:673,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:675,1
    - Dst: exit
      Src: /src/opus/src/opus_demo.c:676,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:679,1
    - Dst: atoi
      Src: /src/opus/src/opus_demo.c:680,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:682,1
    - Dst: check_encoder_option
      Src: /src/opus/src/opus_demo.c:683,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:686,1
    - Dst: check_encoder_option
      Src: /src/opus/src/opus_demo.c:687,1
    - Dst: atoi
      Src: /src/opus/src/opus_demo.c:688,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:690,1
    - Dst: check_encoder_option
      Src: /src/opus/src/opus_demo.c:691,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:694,1
    - Dst: check_encoder_option
      Src: /src/opus/src/opus_demo.c:695,1
    - Dst: atoi
      Src: /src/opus/src/opus_demo.c:696,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:698,1
    - Dst: check_encoder_option
      Src: /src/opus/src/opus_demo.c:699,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:702,1
    - Dst: check_encoder_option
      Src: /src/opus/src/opus_demo.c:703,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:707,1
    - Dst: check_encoder_option
      Src: /src/opus/src/opus_demo.c:708,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:712,1
    - Dst: check_encoder_option
      Src: /src/opus/src/opus_demo.c:713,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:717,1
    - Dst: check_encoder_option
      Src: /src/opus/src/opus_demo.c:718,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:722,1
    - Dst: check_encoder_option
      Src: /src/opus/src/opus_demo.c:723,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:727,1
    - Dst: check_encoder_option
      Src: /src/opus/src/opus_demo.c:728,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:732,1
    - Dst: check_encoder_option
      Src: /src/opus/src/opus_demo.c:733,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:737,1
    - Dst: check_encoder_option
      Src: /src/opus/src/opus_demo.c:738,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:742,1
    - Dst: check_decoder_option
      Src: /src/opus/src/opus_demo.c:743,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:747,1
    - Dst: check_encoder_option
      Src: /src/opus/src/opus_demo.c:748,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:753,1
    - Dst: atoi
      Src: /src/opus/src/opus_demo.c:754,1
    - Dst: printf
      Src: /src/opus/src/opus_demo.c:755,1
    - Dst: strcmp
      Src: /src/opus/src/opus_demo.c:759,1
    - Dst: printf
      Src: /src/opus/src/opus_demo.c:764,1
    - Dst: print_usage
      Src: /src/opus/src/opus_demo.c:765,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:775,1
    - Dst: fopen
      Src: /src/opus/src/opus_demo.c:781,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:784,1
    - Dst: fseek
      Src: /src/opus/src/opus_demo.c:793,1
    - Dst: ftell
      Src: /src/opus/src/opus_demo.c:794,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:795,1
    - Dst: fseek
      Src: /src/opus/src/opus_demo.c:796,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:798,1
    - Dst: fopen
      Src: /src/opus/src/opus_demo.c:802,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:805,1
    - Dst: opus_encoder_create
      Src: /src/opus/src/opus_demo.c:811,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:814,1
    - Dst: opus_strerror
      Src: /src/opus/src/opus_demo.c:814,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_demo.c:817,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/src/opus_demo.c:817,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_demo.c:818,1
    - Dst: OPUS_SET_BANDWIDTH
      Src: /src/opus/src/opus_demo.c:818,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_demo.c:819,1
    - Dst: OPUS_SET_VBR
      Src: /src/opus/src/opus_demo.c:819,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_demo.c:820,1
    - Dst: OPUS_SET_VBR_CONSTRAINT
      Src: /src/opus/src/opus_demo.c:820,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_demo.c:821,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/src/opus_demo.c:821,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_demo.c:822,1
    - Dst: OPUS_SET_INBAND_FEC
      Src: /src/opus/src/opus_demo.c:822,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_demo.c:823,1
    - Dst: OPUS_SET_FORCE_CHANNELS
      Src: /src/opus/src/opus_demo.c:823,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_demo.c:824,1
    - Dst: OPUS_SET_DTX
      Src: /src/opus/src/opus_demo.c:824,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_demo.c:825,1
    - Dst: OPUS_SET_PACKET_LOSS_PERC
      Src: /src/opus/src/opus_demo.c:825,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_demo.c:827,1
    - Dst: OPUS_GET_LOOKAHEAD
      Src: /src/opus/src/opus_demo.c:827,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_demo.c:828,1
    - Dst: OPUS_SET_LSB_DEPTH
      Src: /src/opus/src/opus_demo.c:828,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_demo.c:829,1
    - Dst: OPUS_SET_EXPERT_FRAME_DURATION
      Src: /src/opus/src/opus_demo.c:829,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_demo.c:832,1
    - Dst: OPUS_SET_DRED_DURATION
      Src: /src/opus/src/opus_demo.c:832,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_demo.c:835,1
    - Dst: OPUS_SET_FORCE_MODE
      Src: /src/opus/src/opus_demo.c:835,1
    - Dst: srand
      Src: /src/opus/src/opus_demo.c:836,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_demo.c:839,1
    - Dst: OPUS_SET_QEXT
      Src: /src/opus/src/opus_demo.c:839,1
    - Dst: opus_decoder_create
      Src: /src/opus/src/opus_demo.c:844,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:847,1
    - Dst: opus_strerror
      Src: /src/opus/src/opus_demo.c:847,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/src/opus_demo.c:852,1
    - Dst: OPUS_SET_OSCE_BWE
      Src: /src/opus/src/opus_demo.c:852,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/src/opus_demo.c:856,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/src/opus_demo.c:856,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/src/opus_demo.c:857,1
    - Dst: OPUS_SET_IGNORE_EXTENSIONS
      Src: /src/opus/src/opus_demo.c:857,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:885,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:888,1
    - Dst: malloc
      Src: /src/opus/src/opus_demo.c:893,1
    - Dst: malloc
      Src: /src/opus/src/opus_demo.c:894,1
    - Dst: malloc
      Src: /src/opus/src/opus_demo.c:896,1
    - Dst: calloc
      Src: /src/opus/src/opus_demo.c:897,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_demo.c:918,1
    - Dst: OPUS_SET_EXPERT_FRAME_DURATION
      Src: /src/opus/src/opus_demo.c:918,1
    - Dst: opus_dred_decoder_create
      Src: /src/opus/src/opus_demo.c:921,1
    - Dst: opus_dred_alloc
      Src: /src/opus/src/opus_demo.c:922,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_demo.c:924,1
    - Dst: OPUS_SET_DNN_BLOB
      Src: /src/opus/src/opus_demo.c:924,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/src/opus_demo.c:925,1
    - Dst: OPUS_SET_DNN_BLOB
      Src: /src/opus/src/opus_demo.c:925,1
    - Dst: opus_dred_decoder_ctl
      Src: /src/opus/src/opus_demo.c:926,1
    - Dst: OPUS_SET_DNN_BLOB
      Src: /src/opus/src/opus_demo.c:926,1
    - Dst: rand
      Src: /src/opus/src/opus_demo.c:934,1
    - Dst: rand
      Src: /src/opus/src/opus_demo.c:936,1
    - Dst: abs
      Src: /src/opus/src/opus_demo.c:946,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_demo.c:950,1
    - Dst: OPUS_SET_FORCE_MODE
      Src: /src/opus/src/opus_demo.c:950,1
    - Dst: rand
      Src: /src/opus/src/opus_demo.c:956,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_demo.c:958,1
    - Dst: OPUS_SET_INBAND_FEC
      Src: /src/opus/src/opus_demo.c:958,1
    - Dst: rand
      Src: /src/opus/src/opus_demo.c:958,1
    - Dst: fread
      Src: /src/opus/src/opus_demo.c:963,1
    - Dst: char_to_int
      Src: /src/opus/src/opus_demo.c:966,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:969,1
    - Dst: fread
      Src: /src/opus/src/opus_demo.c:972,1
    - Dst: char_to_int
      Src: /src/opus/src/opus_demo.c:975,1
    - Dst: fread
      Src: /src/opus/src/opus_demo.c:976,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:979,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_demo.c:988,1
    - Dst: OPUS_SET_BANDWIDTH
      Src: /src/opus/src/opus_demo.c:988,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_demo.c:989,1
    - Dst: OPUS_SET_FORCE_MODE
      Src: /src/opus/src/opus_demo.c:989,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_demo.c:990,1
    - Dst: OPUS_SET_FORCE_CHANNELS
      Src: /src/opus/src/opus_demo.c:990,1
    - Dst: new_random_setting
      Src: /src/opus/src/opus_demo.c:998,1
    - Dst: fread
      Src: /src/opus/src/opus_demo.c:1002,1
    - Dst: floor
      Src: /src/opus/src/opus_demo.c:1026,1
    - Dst: opus_encode24
      Src: /src/opus/src/opus_demo.c:1036,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:1039,1
    - Dst: opus_packet_get_samples_per_frame
      Src: /src/opus/src/opus_demo.c:1042,1
    - Dst: opus_packet_get_nb_frames
      Src: /src/opus/src/opus_demo.c:1042,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_demo.c:1059,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/src/opus_demo.c:1059,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_demo.c:1061,1
    - Dst: OPUS_GET_FINAL_RANGE
      Src: /src/opus/src/opus_demo.c:1061,1
    - Dst: rand
      Src: /src/opus/src/opus_demo.c:1073,1
    - Dst: opus_packet_pad
      Src: /src/opus/src/opus_demo.c:1074,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:1076,1
    - Dst: opus_strerror
      Src: /src/opus/src/opus_demo.c:1076,1
    - Dst: fscanf
      Src: /src/opus/src/opus_demo.c:1085,1
    - Dst: sample_loss
      Src: /src/opus/src/opus_demo.c:1090,1
    - Dst: rand
      Src: /src/opus/src/opus_demo.c:1093,1
    - Dst: int_to_char
      Src: /src/opus/src/opus_demo.c:1102,1
    - Dst: fwrite
      Src: /src/opus/src/opus_demo.c:1103,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:1104,1
    - Dst: int_to_char
      Src: /src/opus/src/opus_demo.c:1107,1
    - Dst: fwrite
      Src: /src/opus/src/opus_demo.c:1108,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:1109,1
    - Dst: fwrite
      Src: /src/opus/src/opus_demo.c:1112,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:1113,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/src/opus_demo.c:1134,1
    - Dst: OPUS_GET_LAST_PACKET_DURATION
      Src: /src/opus/src/opus_demo.c:1134,1
    - Dst: opus_dred_parse
      Src: /src/opus/src/opus_demo.c:1137,1
    - Dst: IMIN
      Src: /src/opus/src/opus_demo.c:1137,1
    - Dst: IMAX
      Src: /src/opus/src/opus_demo.c:1137,1
    - Dst: opus_packet_has_lbrr
      Src: /src/opus/src/opus_demo.c:1143,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/src/opus_demo.c:1144,1
    - Dst: OPUS_GET_LAST_PACKET_DURATION
      Src: /src/opus/src/opus_demo.c:1144,1
    - Dst: opus_decode24
      Src: /src/opus/src/opus_demo.c:1145,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/src/opus_demo.c:1147,1
    - Dst: OPUS_GET_LAST_PACKET_DURATION
      Src: /src/opus/src/opus_demo.c:1147,1
    - Dst: opus_decoder_dred_decode24
      Src: /src/opus/src/opus_demo.c:1149,1
    - Dst: opus_decode24
      Src: /src/opus/src/opus_demo.c:1151,1
    - Dst: opus_decode24
      Src: /src/opus/src/opus_demo.c:1154,1
    - Dst: fwrite
      Src: /src/opus/src/opus_demo.c:1198,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:1199,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:1207,1
    - Dst: opus_strerror
      Src: /src/opus/src/opus_demo.c:1208,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/src/opus_demo.c:1215,1
    - Dst: OPUS_GET_FINAL_RANGE
      Src: /src/opus/src/opus_demo.c:1215,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:1220,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:1260,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:1262,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:1265,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:1270,1
    - Dst: sqrt
      Src: /src/opus/src/opus_demo.c:1271,1
    - Dst: fprintf
      Src: /src/opus/src/opus_demo.c:1273,1
    - Dst: silk_TimerSave
      Src: /src/opus/src/opus_demo.c:1275,1
    - Dst: opus_encoder_destroy
      Src: /src/opus/src/opus_demo.c:1278,1
    - Dst: opus_decoder_destroy
      Src: /src/opus/src/opus_demo.c:1279,1
    - Dst: opus_dred_free
      Src: /src/opus/src/opus_demo.c:1280,1
    - Dst: opus_dred_decoder_destroy
      Src: /src/opus/src/opus_demo.c:1281,1
    - Dst: free
      Src: /src/opus/src/opus_demo.c:1282,1
    - Dst: fclose
      Src: /src/opus/src/opus_demo.c:1284,1
    - Dst: fclose
      Src: /src/opus/src/opus_demo.c:1286,1
    - Dst: free
      Src: /src/opus/src/opus_demo.c:1287,1
    - Dst: free
      Src: /src/opus/src/opus_demo.c:1288,1
    - Dst: free
      Src: /src/opus/src/opus_demo.c:1289,1
    - Dst: free_blob
      Src: /src/opus/src/opus_demo.c:1291,1
    CyclomaticComplexity: 237
    EdgeCount: 237
    ICount: 741
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1294
      start: 397
    functionDepth: 6
    functionLinenumber: 397
    functionLinenumberEnd: 1294
    functionName: main
    functionSourceFile: /src/opus/src/opus_demo.c
    functionUses: 0
    functionsReached:
    - check_decoder_option
    - fseek
    - exit
    - opus_decoder_dred_decode24
    - opus_decoder_ctl
    - OPUS_SET_VBR_CONSTRAINT
    - malloc
    - OPUS_SET_BANDWIDTH
    - OPUS_SET_QEXT
    - OPUS_GET_FINAL_RANGE
    - silk_TimerSave
    - opus_dred_decoder_ctl
    - check_encoder_option
    - fprintf
    - lossgen_init
    - OPUS_SET_DRED_DURATION
    - OPUS_SET_OSCE_BWE
    - OPUS_SET_VBR
    - opus_dred_alloc
    - OPUS_SET_DNN_BLOB
    - opus_encode24
    - opus_decode24
    - opus_strerror
    - OPUS_SET_BITRATE
    - srand
    - opus_packet_pad
    - opus_packet_get_nb_frames
    - strcmp
    - char_to_int
    - floor
    - new_random_setting
    - opus_encoder_ctl
    - opus_dred_parse
    - OPUS_SET_LSB_DEPTH
    - OPUS_GET_LOOKAHEAD
    - fwrite
    - opus_decoder_destroy
    - fclose
    - opus_packet_has_lbrr
    - opus_decoder_create
    - OPUS_SET_DTX
    - printf
    - rand
    - OPUS_SET_PACKET_LOSS_PERC
    - opus_encoder_destroy
    - ftell
    - OPUS_GET_LAST_PACKET_DURATION
    - abs
    - load_blob
    - opus_packet_get_samples_per_frame
    - int_to_char
    - opus_get_version_string
    - OPUS_SET_INBAND_FEC
    - fscanf
    - opus_dred_decoder_destroy
    - sqrt
    - print_usage
    - IMAX
    - OPUS_SET_EXPERT_FRAME_DURATION
    - IMIN
    - opus_dred_decoder_create
    - OPUS_SET_FORCE_CHANNELS
    - OPUS_SET_IGNORE_EXTENSIONS
    - atoi
    - atol
    - OPUS_SET_COMPLEXITY
    - calloc
    - free_blob
    - OPUS_SET_FORCE_MODE
    - sample_loss
    - opus_dred_free
    - atof
    - opus_encoder_create
    - fread
    - fopen
    - free
    linkageType: ''
    returnType: int
    signature: int main(int argc, char *argv[])
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: opus_encoder_init
      Src: /src/opus/src/opus_encoder.c:197,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - channels
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 194
    functionDepth: 1
    functionLinenumber: 194
    functionLinenumberEnd: 202
    functionName: opus_encoder_get_size
    functionSourceFile: /src/opus/src/opus_encoder.c
    functionUses: 2
    functionsReached:
    - opus_encoder_init
    linkageType: ''
    returnType: int
    signature: int opus_encoder_get_size(int channels)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: silk_Get_Encoder_Size
      Src: /src/opus/src/opus_encoder.c:225,1
    - Dst: align
      Src: /src/opus/src/opus_encoder.c:228,1
    - Dst: celt_encoder_get_size
      Src: /src/opus/src/opus_encoder.c:232,1
    - Dst: align
      Src: /src/opus/src/opus_encoder.c:233,1
    - Dst: align
      Src: /src/opus/src/opus_encoder.c:235,1
    - Dst: align
      Src: /src/opus/src/opus_encoder.c:237,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/src/opus_encoder.c:242,1
    - Dst: opus_select_arch
      Src: /src/opus/src/opus_encoder.c:250,1
    - Dst: silk_InitEncoder
      Src: /src/opus/src/opus_encoder.c:255,1
    - Dst: celt_encoder_init
      Src: /src/opus/src/opus_encoder.c:281,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:283,1
    - Dst: CELT_SET_SIGNALLING
      Src: /src/opus/src/opus_encoder.c:283,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:284,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/src/opus_encoder.c:284,1
    - Dst: dred_encoder_init
      Src: /src/opus/src/opus_encoder.c:289,1
    - Dst: silk_LSHIFT
      Src: /src/opus/src/opus_encoder.c:317,1
    - Dst: silk_lin2log
      Src: /src/opus/src/opus_encoder.c:317,1
    - Dst: tonality_analysis_init
      Src: /src/opus/src/opus_encoder.c:323,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 83
    argCount: 4
    argNames:
    - st
    - Fs
    - channels
    - application
    argTypes:
    - OpusEncoder*
    - opus_int32
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 204
    functionDepth: 2
    functionLinenumber: 204
    functionLinenumberEnd: 328
    functionName: opus_encoder_init
    functionSourceFile: /src/opus/src/opus_encoder.c
    functionUses: 2
    functionsReached:
    - tonality_analysis_init
    - OPUS_CLEAR
    - opus_select_arch
    - celt_encoder_init
    - celt_encoder_ctl
    - CELT_SET_SIGNALLING
    - silk_LSHIFT
    - OPUS_SET_COMPLEXITY
    - align
    - silk_Get_Encoder_Size
    - silk_InitEncoder
    - silk_lin2log
    - dred_encoder_init
    - celt_encoder_get_size
    linkageType: ''
    returnType: int
    signature: int opus_encoder_init(OpusEncoder* st, opus_int32 Fs, int channels,
      int application)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 4
    argNames:
    - mode
    - framerate
    - bandwidth
    - channels
    argTypes:
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 330
    functionDepth: 0
    functionLinenumber: 330
    functionLinenumberEnd: 360
    functionName: gen_toc
    functionSourceFile: /src/opus/src/opus_encoder.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: unsigned char
    signature: unsigned char gen_toc(int mode, int framerate, int bandwidth, int channels)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_RSHIFT
      Src: /src/opus/src/opus_encoder.c:380,1
    - Dst: silk_RSHIFT
      Src: /src/opus/src/opus_encoder.c:382,1
    - Dst: RES2INT16
      Src: /src/opus/src/opus_encoder.c:386,1
    - Dst: silk_LSHIFT
      Src: /src/opus/src/opus_encoder.c:387,1
    - Dst: silk_SMLAWB
      Src: /src/opus/src/opus_encoder.c:387,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/src/opus_encoder.c:389,1
    - Dst: silk_SMULWB
      Src: /src/opus/src/opus_encoder.c:389,1
    - Dst: silk_SMLAWB
      Src: /src/opus/src/opus_encoder.c:390,1
    - Dst: silk_SMLAWB
      Src: /src/opus/src/opus_encoder.c:391,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/src/opus_encoder.c:393,1
    - Dst: silk_SMULWB
      Src: /src/opus/src/opus_encoder.c:393,1
    - Dst: silk_SMLAWB
      Src: /src/opus/src/opus_encoder.c:394,1
    - Dst: silk_SMLAWB
      Src: /src/opus/src/opus_encoder.c:395,1
    - Dst: INT16TORES
      Src: /src/opus/src/opus_encoder.c:398,1
    - Dst: silk_SAT16
      Src: /src/opus/src/opus_encoder.c:398,1
    - Dst: silk_RSHIFT
      Src: /src/opus/src/opus_encoder.c:398,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 7
    argNames:
    - in
    - B_Q28
    - A_Q28
    - S
    - out
    - len
    - stride
    argTypes:
    - opus_res*
    - opus_int32*
    - opus_int32*
    - opus_int32*
    - opus_res*
    - opus_int32
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 364
    functionDepth: 1
    functionLinenumber: 364
    functionLinenumberEnd: 400
    functionName: silk_biquad_res
    functionSourceFile: /src/opus/src/opus_encoder.c
    functionUses: 0
    functionsReached:
    - RES2INT16
    - silk_LSHIFT
    - INT16TORES
    - silk_RSHIFT
    - silk_SMULWB
    - silk_SAT16
    - silk_SMLAWB
    - silk_RSHIFT_ROUND
    linkageType: ''
    returnType: void
    signature: "void silk_biquad_res(\n    const opus_res              *in,                /*
      I     input signal                                               */\n    const
      opus_int32            *B_Q28,             /* I     MA coefficients [3]                                        */\n
      \   const opus_int32            *A_Q28,             /* I     AR coefficients
      [2]                                        */\n    opus_int32                  *S,
      \                /* I/O   State vector [2]                                           */\n
      \   opus_res                    *out,               /* O     output signal                                              */\n
      \   const opus_int32            len,                /* I     signal length (must
      be even)                               */\n    int stride\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 7
    argNames:
    - in
    - B_Q28
    - A_Q28
    - S
    - out
    - len
    - stride
    argTypes:
    - opus_res*
    - opus_int32*
    - opus_int32*
    - opus_val32*
    - opus_res*
    - opus_int32
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 438
      start: 402
    functionDepth: 0
    functionLinenumber: 402
    functionLinenumberEnd: 438
    functionName: silk_biquad_res
    functionSourceFile: /src/opus/src/opus_encoder.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void silk_biquad_res(\n    const opus_res        *in,            /*
      I:    Input signal                   */\n    const opus_int32      *B_Q28,         /*
      I:    MA coefficients [3]            */\n    const opus_int32      *A_Q28,         /*
      I:    AR coefficients [2]            */\n    opus_val32            *S,             /*
      I/O:  State vector [2]               */\n    opus_res              *out,           /*
      O:    Output signal                  */\n    const opus_int32      len,            /*
      I:    Signal length (must be even)   */\n    int stride\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: silk_assert
      Src: /src/opus/src/opus_encoder.c:447,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/src/opus_encoder.c:447,1
    - Dst: silk_DIV32_16
      Src: /src/opus/src/opus_encoder.c:448,1
    - Dst: silk_SMULBB
      Src: /src/opus/src/opus_encoder.c:448,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/src/opus_encoder.c:448,1
    - Dst: silk_assert
      Src: /src/opus/src/opus_encoder.c:449,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/src/opus_encoder.c:451,1
    - Dst: silk_MUL
      Src: /src/opus/src/opus_encoder.c:451,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/src/opus_encoder.c:451,1
    - Dst: silk_LSHIFT
      Src: /src/opus/src/opus_encoder.c:456,1
    - Dst: silk_RSHIFT
      Src: /src/opus/src/opus_encoder.c:460,1
    - Dst: silk_SMULWW
      Src: /src/opus/src/opus_encoder.c:461,1
    - Dst: silk_SMULWW
      Src: /src/opus/src/opus_encoder.c:461,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/src/opus_encoder.c:461,1
    - Dst: silk_SMULWW
      Src: /src/opus/src/opus_encoder.c:462,1
    - Dst: silk_biquad_alt_stride1
      Src: /src/opus/src/opus_encoder.c:466,1
    - Dst: silk_biquad_alt_stride2
      Src: /src/opus/src/opus_encoder.c:468,1
    - Dst: silk_biquad_res
      Src: /src/opus/src/opus_encoder.c:471,1
    - Dst: silk_biquad_res
      Src: /src/opus/src/opus_encoder.c:473,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 8
    argNames:
    - in
    - cutoff_Hz
    - out
    - hp_mem
    - len
    - channels
    - Fs
    - arch
    argTypes:
    - opus_res*
    - opus_int32
    - opus_res*
    - opus_val32*
    - int
    - int
    - opus_int32
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 476
      start: 441
    functionDepth: 2
    functionLinenumber: 441
    functionLinenumberEnd: 476
    functionName: hp_cutoff
    functionSourceFile: /src/opus/src/opus_encoder.c
    functionUses: 0
    functionsReached:
    - silk_biquad_alt_stride2
    - silk_LSHIFT
    - silk_SMULWW
    - silk_assert
    - silk_SMULBB
    - silk_RSHIFT
    - silk_biquad_res
    - SILK_FIX_CONST
    - silk_DIV32_16
    - silk_MUL
    - silk_biquad_alt_stride1
    linkageType: ''
    returnType: void
    signature: void hp_cutoff(const opus_res *in, opus_int32 cutoff_Hz, opus_res *out,
      opus_val32 *hp_mem, int len, int channels, opus_int32 Fs, int arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_ilog2
      Src: /src/opus/src/opus_encoder.c:485,1
    - Dst: SATURATE
      Src: /src/opus/src/opus_encoder.c:492,1
    - Dst: SHL32
      Src: /src/opus/src/opus_encoder.c:493,1
    - Dst: PSHR32
      Src: /src/opus/src/opus_encoder.c:495,1
    - Dst: PSHR32
      Src: /src/opus/src/opus_encoder.c:498,1
    - Dst: SATURATE
      Src: /src/opus/src/opus_encoder.c:500,1
    - Dst: PSHR32
      Src: /src/opus/src/opus_encoder.c:500,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 7
    argNames:
    - in
    - cutoff_Hz
    - out
    - hp_mem
    - len
    - channels
    - Fs
    argTypes:
    - opus_res*
    - opus_int32
    - opus_res*
    - opus_val32*
    - int
    - int
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 504
      start: 479
    functionDepth: 0
    functionLinenumber: 479
    functionLinenumberEnd: 504
    functionName: dc_reject
    functionSourceFile: /src/opus/src/opus_encoder.c
    functionUses: 0
    functionsReached:
    - SHL32
    - SATURATE
    - PSHR32
    - celt_ilog2
    linkageType: ''
    returnType: void
    signature: void dc_reject(const opus_res *in, opus_int32 cutoff_Hz, opus_res *out,
      opus_val32 *hp_mem, int len, int channels, opus_int32 Fs)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 28
    argCount: 7
    argNames:
    - in
    - cutoff_Hz
    - out
    - hp_mem
    - len
    - channels
    - Fs
    argTypes:
    - opus_val16*
    - opus_int32
    - opus_val16*
    - opus_val32*
    - int
    - int
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 545
      start: 507
    functionDepth: 0
    functionLinenumber: 507
    functionLinenumberEnd: 545
    functionName: dc_reject
    functionSourceFile: /src/opus/src/opus_encoder.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void dc_reject(const opus_val16 *in, opus_int32 cutoff_Hz, opus_val16
      *out, opus_val32 *hp_mem, int len, int channels, opus_int32 Fs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: IMAX
      Src: /src/opus/src/opus_encoder.c:554,1
    - Dst: COEF2VAL16
      Src: /src/opus/src/opus_encoder.c:562,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/src/opus_encoder.c:563,1
    - Dst: SHR32
      Src: /src/opus/src/opus_encoder.c:564,1
    - Dst: MAC16_16
      Src: /src/opus/src/opus_encoder.c:564,1
    - Dst: MULT16_16
      Src: /src/opus/src/opus_encoder.c:564,1
    - Dst: HALF32
      Src: /src/opus/src/opus_encoder.c:566,1
    - Dst: MULT16_RES_Q15
      Src: /src/opus/src/opus_encoder.c:567,1
    - Dst: HALF32
      Src: /src/opus/src/opus_encoder.c:574,1
    - Dst: MULT16_RES_Q15
      Src: /src/opus/src/opus_encoder.c:575,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 9
    argNames:
    - in
    - out
    - g1
    - g2
    - overlap48
    - frame_size
    - channels
    - window
    - Fs
    argTypes:
    - opus_res*
    - opus_res*
    - opus_val16
    - opus_val16
    - int
    - int
    - int
    - celt_coef*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 579
      start: 548
    functionDepth: 1
    functionLinenumber: 548
    functionLinenumberEnd: 579
    functionName: stereo_fade
    functionSourceFile: /src/opus/src/opus_encoder.c
    functionUses: 0
    functionsReached:
    - MAC16_16
    - MULT16_16
    - MULT16_16_Q15
    - HALF32
    - MULT16_RES_Q15
    - SHR32
    - COEF2VAL16
    - IMAX
    linkageType: ''
    returnType: void
    signature: "void stereo_fade(const opus_res *in, opus_res *out, opus_val16 g1,
      opus_val16 g2,\n        int overlap48, int frame_size, int channels, const celt_coef
      *window, opus_int32 Fs)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: IMAX
      Src: /src/opus/src/opus_encoder.c:588,1
    - Dst: COEF2VAL16
      Src: /src/opus/src/opus_encoder.c:595,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/src/opus_encoder.c:596,1
    - Dst: SHR32
      Src: /src/opus/src/opus_encoder.c:597,1
    - Dst: MAC16_16
      Src: /src/opus/src/opus_encoder.c:597,1
    - Dst: MULT16_16
      Src: /src/opus/src/opus_encoder.c:597,1
    - Dst: MULT16_RES_Q15
      Src: /src/opus/src/opus_encoder.c:599,1
    - Dst: COEF2VAL16
      Src: /src/opus/src/opus_encoder.c:605,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/src/opus_encoder.c:606,1
    - Dst: SHR32
      Src: /src/opus/src/opus_encoder.c:607,1
    - Dst: MAC16_16
      Src: /src/opus/src/opus_encoder.c:607,1
    - Dst: MULT16_16
      Src: /src/opus/src/opus_encoder.c:607,1
    - Dst: MULT16_RES_Q15
      Src: /src/opus/src/opus_encoder.c:609,1
    - Dst: MULT16_RES_Q15
      Src: /src/opus/src/opus_encoder.c:610,1
    - Dst: MULT16_RES_Q15
      Src: /src/opus/src/opus_encoder.c:616,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 9
    argNames:
    - in
    - out
    - g1
    - g2
    - overlap48
    - frame_size
    - channels
    - window
    - Fs
    argTypes:
    - opus_res*
    - opus_res*
    - opus_val16
    - opus_val16
    - int
    - int
    - int
    - celt_coef*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 620
      start: 581
    functionDepth: 1
    functionLinenumber: 581
    functionLinenumberEnd: 620
    functionName: gain_fade
    functionSourceFile: /src/opus/src/opus_encoder.c
    functionUses: 0
    functionsReached:
    - MAC16_16
    - MULT16_16
    - MULT16_16_Q15
    - MULT16_RES_Q15
    - SHR32
    - COEF2VAL16
    - IMAX
    linkageType: ''
    returnType: void
    signature: "void gain_fade(const opus_res *in, opus_res *out, opus_val16 g1, opus_val16
      g2,\n        int overlap48, int frame_size, int channels, const celt_coef *window,
      opus_int32 Fs)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: opus_encoder_init
      Src: /src/opus/src/opus_encoder.c:641,1
    - Dst: opus_alloc
      Src: /src/opus/src/opus_encoder.c:648,1
    - Dst: opus_encoder_init
      Src: /src/opus/src/opus_encoder.c:655,1
    - Dst: opus_free
      Src: /src/opus/src/opus_encoder.c:660,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 26
    argCount: 4
    argNames:
    - Fs
    - channels
    - application
    - error
    argTypes:
    - opus_int32
    - int
    - int
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 664
      start: 622
    functionDepth: 3
    functionLinenumber: 622
    functionLinenumberEnd: 664
    functionName: opus_encoder_create
    functionSourceFile: /src/opus/src/opus_encoder.c
    functionUses: 12
    functionsReached:
    - opus_free
    - opus_encoder_init
    - opus_alloc
    linkageType: ''
    returnType: OpusEncoder
    signature: OpusEncoder *opus_encoder_create(opus_int32 Fs, int channels, int application,
      int *error)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: IMIN
      Src: /src/opus/src/opus_encoder.c:677,1
    - Dst: compute_quantizer
      Src: /src/opus/src/opus_encoder.c:680,1
    - Dst: floor
      Src: /src/opus/src/opus_encoder.c:684,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 6
    argNames:
    - q0
    - dQ
    - qmax
    - duration
    - target_bits
    - target_chunks
    argTypes:
    - int
    - int
    - int
    - int
    - opus_int32
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 685
      start: 669
    functionDepth: 1
    functionLinenumber: 669
    functionLinenumberEnd: 685
    functionName: estimate_dred_bitrate
    functionSourceFile: /src/opus/src/opus_encoder.c
    functionUses: 0
    functionsReached:
    - compute_quantizer
    - IMIN
    - floor
    linkageType: ''
    returnType: int
    signature: int estimate_dred_bitrate(int q0, int dQ, int qmax, int duration, opus_int32
      target_bits, int *target_chunks)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: MIN16
      Src: /src/opus/src/opus_encoder.c:697,1
    - Dst: MIN16
      Src: /src/opus/src/opus_encoder.c:701,1
    - Dst: IMIN
      Src: /src/opus/src/opus_encoder.c:710,1
    - Dst: IMAX
      Src: /src/opus/src/opus_encoder.c:710,1
    - Dst: EC_ILOG
      Src: /src/opus/src/opus_encoder.c:710,1
    - Dst: IMAX
      Src: /src/opus/src/opus_encoder.c:710,1
    - Dst: IMAX
      Src: /src/opus/src/opus_encoder.c:713,1
    - Dst: bitrate_to_bits
      Src: /src/opus/src/opus_encoder.c:715,1
    - Dst: estimate_dred_bitrate
      Src: /src/opus/src/opus_encoder.c:716,1
    - Dst: IMIN
      Src: /src/opus/src/opus_encoder.c:721,1
    - Dst: bits_to_bitrate
      Src: /src/opus/src/opus_encoder.c:721,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 31
    argCount: 3
    argNames:
    - st
    - bitrate_bps
    - frame_size
    argTypes:
    - OpusEncoder*
    - opus_int32
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 730
      start: 687
    functionDepth: 2
    functionLinenumber: 687
    functionLinenumberEnd: 730
    functionName: compute_dred_bitrate
    functionSourceFile: /src/opus/src/opus_encoder.c
    functionUses: 0
    functionsReached:
    - IMIN
    - bitrate_to_bits
    - bits_to_bitrate
    - estimate_dred_bitrate
    - MIN16
    - IMAX
    - EC_ILOG
    linkageType: ''
    returnType: opus_int32
    signature: opus_int32 compute_dred_bitrate(OpusEncoder *st, opus_int32 bitrate_bps,
      int frame_size)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: bits_to_bitrate
      Src: /src/opus/src/opus_encoder.c:737,1
    - Dst: IMIN
      Src: /src/opus/src/opus_encoder.c:744,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 3
    argNames:
    - st
    - frame_size
    - max_data_bytes
    argTypes:
    - OpusEncoder*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 745
      start: 733
    functionDepth: 1
    functionLinenumber: 733
    functionLinenumberEnd: 745
    functionName: user_bitrate_to_bitrate
    functionSourceFile: /src/opus/src/opus_encoder.c
    functionUses: 0
    functionsReached:
    - IMIN
    - bits_to_bitrate
    linkageType: ''
    returnType: opus_int32
    signature: opus_int32 user_bitrate_to_bitrate(OpusEncoder *st, int frame_size,
      int max_data_bytes)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: FLOAT2SIG
      Src: /src/opus/src/opus_encoder.c:755,1
    - Dst: FLOAT2SIG
      Src: /src/opus/src/opus_encoder.c:759,1
    - Dst: FLOAT2SIG
      Src: /src/opus/src/opus_encoder.c:766,1
    - Dst: celt_isnan
      Src: /src/opus/src/opus_encoder.c:775,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 7
    argNames:
    - _x
    - y
    - subframe
    - offset
    - c1
    - c2
    - C
    argTypes:
    - void*
    - opus_val32*
    - int
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 778
      start: 748
    functionDepth: 1
    functionLinenumber: 748
    functionLinenumberEnd: 778
    functionName: downmix_float
    functionSourceFile: /src/opus/src/opus_encoder.c
    functionUses: 0
    functionsReached:
    - FLOAT2SIG
    - celt_isnan
    linkageType: ''
    returnType: void
    signature: void downmix_float(const void *_x, opus_val32 *y, int subframe, int
      offset, int c1, int c2, int C)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: INT16TOSIG
      Src: /src/opus/src/opus_encoder.c:788,1
    - Dst: INT16TOSIG
      Src: /src/opus/src/opus_encoder.c:792,1
    - Dst: INT16TOSIG
      Src: /src/opus/src/opus_encoder.c:799,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 7
    argNames:
    - _x
    - y
    - subframe
    - offset
    - c1
    - c2
    - C
    argTypes:
    - void*
    - opus_val32*
    - int
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 802
      start: 781
    functionDepth: 1
    functionLinenumber: 781
    functionLinenumberEnd: 802
    functionName: downmix_int
    functionSourceFile: /src/opus/src/opus_encoder.c
    functionUses: 0
    functionsReached:
    - INT16TOSIG
    linkageType: ''
    returnType: void
    signature: void downmix_int(const void *_x, opus_val32 *y, int subframe, int offset,
      int c1, int c2, int C)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: INT24TOSIG
      Src: /src/opus/src/opus_encoder.c:811,1
    - Dst: INT24TOSIG
      Src: /src/opus/src/opus_encoder.c:815,1
    - Dst: INT24TOSIG
      Src: /src/opus/src/opus_encoder.c:822,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 7
    argNames:
    - _x
    - y
    - subframe
    - offset
    - c1
    - c2
    - C
    argTypes:
    - void*
    - opus_val32*
    - int
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 825
      start: 804
    functionDepth: 1
    functionLinenumber: 804
    functionLinenumberEnd: 825
    functionName: downmix_int24
    functionSourceFile: /src/opus/src/opus_encoder.c
    functionUses: 0
    functionsReached:
    - INT24TOSIG
    linkageType: ''
    returnType: void
    signature: void downmix_int24(const void *_x, opus_val32 *y, int subframe, int
      offset, int c1, int c2, int C)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 18
    argCount: 4
    argNames:
    - application
    - frame_size
    - variable_duration
    - Fs
    argTypes:
    - int
    - opus_int32
    - int
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 852
      start: 827
    functionDepth: 0
    functionLinenumber: 827
    functionLinenumberEnd: 852
    functionName: frame_size_select
    functionSourceFile: /src/opus/src/opus_encoder.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: opus_int32
    signature: opus_int32 frame_size_select(int application, opus_int32 frame_size,
      int variable_duration, opus_int32 Fs)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: celt_ilog2
      Src: /src/opus/src/opus_encoder.c:863,1
    - Dst: MULT16_16
      Src: /src/opus/src/opus_encoder.c:866,1
    - Dst: IMAX
      Src: /src/opus/src/opus_encoder.c:866,1
    - Dst: RES2VAL16
      Src: /src/opus/src/opus_encoder.c:877,1
    - Dst: RES2VAL16
      Src: /src/opus/src/opus_encoder.c:878,1
    - Dst: SHR32
      Src: /src/opus/src/opus_encoder.c:879,1
    - Dst: MULT16_16
      Src: /src/opus/src/opus_encoder.c:879,1
    - Dst: SHR32
      Src: /src/opus/src/opus_encoder.c:880,1
    - Dst: MULT16_16
      Src: /src/opus/src/opus_encoder.c:880,1
    - Dst: SHR32
      Src: /src/opus/src/opus_encoder.c:881,1
    - Dst: MULT16_16
      Src: /src/opus/src/opus_encoder.c:881,1
    - Dst: RES2VAL16
      Src: /src/opus/src/opus_encoder.c:882,1
    - Dst: RES2VAL16
      Src: /src/opus/src/opus_encoder.c:883,1
    - Dst: SHR32
      Src: /src/opus/src/opus_encoder.c:884,1
    - Dst: MULT16_16
      Src: /src/opus/src/opus_encoder.c:884,1
    - Dst: SHR32
      Src: /src/opus/src/opus_encoder.c:885,1
    - Dst: MULT16_16
      Src: /src/opus/src/opus_encoder.c:885,1
    - Dst: SHR32
      Src: /src/opus/src/opus_encoder.c:886,1
    - Dst: MULT16_16
      Src: /src/opus/src/opus_encoder.c:886,1
    - Dst: RES2VAL16
      Src: /src/opus/src/opus_encoder.c:887,1
    - Dst: RES2VAL16
      Src: /src/opus/src/opus_encoder.c:888,1
    - Dst: SHR32
      Src: /src/opus/src/opus_encoder.c:889,1
    - Dst: MULT16_16
      Src: /src/opus/src/opus_encoder.c:889,1
    - Dst: SHR32
      Src: /src/opus/src/opus_encoder.c:890,1
    - Dst: MULT16_16
      Src: /src/opus/src/opus_encoder.c:890,1
    - Dst: SHR32
      Src: /src/opus/src/opus_encoder.c:891,1
    - Dst: MULT16_16
      Src: /src/opus/src/opus_encoder.c:891,1
    - Dst: RES2VAL16
      Src: /src/opus/src/opus_encoder.c:892,1
    - Dst: RES2VAL16
      Src: /src/opus/src/opus_encoder.c:893,1
    - Dst: SHR32
      Src: /src/opus/src/opus_encoder.c:894,1
    - Dst: MULT16_16
      Src: /src/opus/src/opus_encoder.c:894,1
    - Dst: SHR32
      Src: /src/opus/src/opus_encoder.c:895,1
    - Dst: MULT16_16
      Src: /src/opus/src/opus_encoder.c:895,1
    - Dst: SHR32
      Src: /src/opus/src/opus_encoder.c:896,1
    - Dst: MULT16_16
      Src: /src/opus/src/opus_encoder.c:896,1
    - Dst: SHR32
      Src: /src/opus/src/opus_encoder.c:898,1
    - Dst: SHR32
      Src: /src/opus/src/opus_encoder.c:899,1
    - Dst: SHR32
      Src: /src/opus/src/opus_encoder.c:900,1
    - Dst: celt_isnan
      Src: /src/opus/src/opus_encoder.c:903,1
    - Dst: celt_isnan
      Src: /src/opus/src/opus_encoder.c:903,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/src/opus_encoder.c:908,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/src/opus_encoder.c:911,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/src/opus_encoder.c:911,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/src/opus_encoder.c:912,1
    - Dst: MAX32
      Src: /src/opus/src/opus_encoder.c:913,1
    - Dst: MAX32
      Src: /src/opus/src/opus_encoder.c:914,1
    - Dst: MAX32
      Src: /src/opus/src/opus_encoder.c:915,1
    - Dst: MAX32
      Src: /src/opus/src/opus_encoder.c:916,1
    - Dst: QCONST16
      Src: /src/opus/src/opus_encoder.c:916,1
    - Dst: celt_sqrt
      Src: /src/opus/src/opus_encoder.c:921,1
    - Dst: celt_sqrt
      Src: /src/opus/src/opus_encoder.c:922,1
    - Dst: celt_sqrt
      Src: /src/opus/src/opus_encoder.c:923,1
    - Dst: celt_sqrt
      Src: /src/opus/src/opus_encoder.c:924,1
    - Dst: MIN32
      Src: /src/opus/src/opus_encoder.c:926,1
    - Dst: SHR32
      Src: /src/opus/src/opus_encoder.c:927,1
    - Dst: frac_div32
      Src: /src/opus/src/opus_encoder.c:927,1
    - Dst: MULT16_16
      Src: /src/opus/src/opus_encoder.c:927,1
    - Dst: MULT16_16
      Src: /src/opus/src/opus_encoder.c:929,1
    - Dst: ABS16
      Src: /src/opus/src/opus_encoder.c:929,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/src/opus_encoder.c:930,1
    - Dst: MIN16
      Src: /src/opus/src/opus_encoder.c:930,1
    - Dst: celt_sqrt
      Src: /src/opus/src/opus_encoder.c:930,1
    - Dst: QCONST32
      Src: /src/opus/src/opus_encoder.c:930,1
    - Dst: MULT16_16
      Src: /src/opus/src/opus_encoder.c:930,1
    - Dst: MAX16
      Src: /src/opus/src/opus_encoder.c:934,1
    - Dst: QCONST16
      Src: /src/opus/src/opus_encoder.c:934,1
    - Dst: EXTRACT16
      Src: /src/opus/src/opus_encoder.c:937,1
    - Dst: MIN32
      Src: /src/opus/src/opus_encoder.c:937,1
    - Dst: MULT16_16
      Src: /src/opus/src/opus_encoder.c:937,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 51
    argCount: 4
    argNames:
    - pcm
    - frame_size
    - Fs
    - mem
    argTypes:
    - opus_res*
    - int
    - opus_int32
    - StereoWidthState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 938
      start: 854
    functionDepth: 1
    functionLinenumber: 854
    functionLinenumberEnd: 938
    functionName: compute_stereo_width
    functionSourceFile: /src/opus/src/opus_encoder.c
    functionUses: 0
    functionsReached:
    - celt_isnan
    - RES2VAL16
    - MIN32
    - MULT16_16
    - EXTRACT16
    - celt_ilog2
    - MULT16_32_Q15
    - ABS16
    - MULT16_16_Q15
    - frac_div32
    - celt_sqrt
    - MIN16
    - MAX32
    - SHR32
    - QCONST16
    - IMAX
    - QCONST32
    - MAX16
    linkageType: ''
    returnType: opus_val16
    signature: opus_val16 compute_stereo_width(const opus_res *pcm, int frame_size,
      opus_int32 Fs, StereoWidthState *mem)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: silk_SMULWB
      Src: /src/opus/src/opus_encoder.c:955,1
    - Dst: silk_MUL
      Src: /src/opus/src/opus_encoder.c:955,1
    - Dst: silk_min
      Src: /src/opus/src/opus_encoder.c:956,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/src/opus_encoder.c:956,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 22
    argCount: 6
    argNames:
    - useInBandFEC
    - PacketLoss_perc
    - last_fec
    - mode
    - bandwidth
    - rate
    argTypes:
    - int
    - int
    - int
    - int
    - int*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 971
      start: 940
    functionDepth: 1
    functionLinenumber: 940
    functionLinenumberEnd: 971
    functionName: decide_fec
    functionSourceFile: /src/opus/src/opus_encoder.c
    functionUses: 0
    functionsReached:
    - silk_min
    - silk_SMULWB
    - silk_MUL
    - SILK_FIX_CONST
    linkageType: ''
    returnType: int
    signature: int decide_fec(int useInBandFEC, int PacketLoss_perc, int last_fec,
      int mode, int *bandwidth, opus_int32 rate)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 6
    argNames:
    - rate
    - bandwidth
    - frame20ms
    - vbr
    - fec
    - channels
    argTypes:
    - int
    - int
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1023
      start: 973
    functionDepth: 0
    functionLinenumber: 973
    functionLinenumberEnd: 1023
    functionName: compute_silk_rate_for_hybrid
    functionSourceFile: /src/opus/src/opus_encoder.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int compute_silk_rate_for_hybrid(int rate, int bandwidth, int frame20ms,
      int vbr, int fec, int channels)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 7
    argNames:
    - bitrate
    - channels
    - frame_rate
    - vbr
    - mode
    - complexity
    - loss
    argTypes:
    - opus_int32
    - int
    - int
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1058
      start: 1027
    functionDepth: 0
    functionLinenumber: 1027
    functionLinenumberEnd: 1058
    functionName: compute_equiv_rate
    functionSourceFile: /src/opus/src/opus_encoder.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: opus_int32
    signature: "opus_int32 compute_equiv_rate(opus_int32 bitrate, int channels,\n
      \     int frame_rate, int vbr, int mode, int complexity, int loss)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_maxabs_res
      Src: /src/opus/src/opus_encoder.c:1067,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - pcm
    - frame_size
    - channels
    - lsb_depth
    argTypes:
    - opus_res*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1077
      start: 1060
    functionDepth: 1
    functionLinenumber: 1060
    functionLinenumberEnd: 1077
    functionName: is_digital_silence
    functionSourceFile: /src/opus/src/opus_encoder.c
    functionUses: 0
    functionsReached:
    - celt_maxabs_res
    linkageType: ''
    returnType: int
    signature: int is_digital_silence(const opus_res* pcm, int frame_size, int channels,
      int lsb_depth)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RES2INT16
      Src: /src/opus/src/opus_encoder.c:1090,1
    - Dst: celt_maxabs_res
      Src: /src/opus/src/opus_encoder.c:1090,1
    - Dst: celt_ilog2
      Src: /src/opus/src/opus_encoder.c:1093,1
    - Dst: IMAX
      Src: /src/opus/src/opus_encoder.c:1094,1
    - Dst: celt_ilog2
      Src: /src/opus/src/opus_encoder.c:1094,1
    - Dst: SHR32
      Src: /src/opus/src/opus_encoder.c:1098,1
    - Dst: MULT16_16
      Src: /src/opus/src/opus_encoder.c:1098,1
    - Dst: RES2INT16
      Src: /src/opus/src/opus_encoder.c:1098,1
    - Dst: RES2INT16
      Src: /src/opus/src/opus_encoder.c:1098,1
    - Dst: SHL32
      Src: /src/opus/src/opus_encoder.c:1102,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 4
    argNames:
    - pcm
    - frame_size
    - channels
    - arch
    argTypes:
    - opus_res*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1105
      start: 1080
    functionDepth: 1
    functionLinenumber: 1080
    functionLinenumberEnd: 1105
    functionName: compute_frame_energy
    functionSourceFile: /src/opus/src/opus_encoder.c
    functionUses: 0
    functionsReached:
    - RES2INT16
    - celt_maxabs_res
    - MULT16_16
    - celt_ilog2
    - SHR32
    - SHL32
    - IMAX
    linkageType: ''
    returnType: opus_val32
    signature: opus_val32 compute_frame_energy(const opus_res *pcm, int frame_size,
      int channels, int arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_inner_prod
      Src: /src/opus/src/opus_encoder.c:1110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - pcm
    - frame_size
    - channels
    - arch
    argTypes:
    - opus_val16*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1111
      start: 1107
    functionDepth: 0
    functionLinenumber: 1107
    functionLinenumberEnd: 1111
    functionName: compute_frame_energy
    functionSourceFile: /src/opus/src/opus_encoder.c
    functionUses: 0
    functionsReached:
    - celt_inner_prod
    linkageType: ''
    returnType: opus_val32
    signature: opus_val32 compute_frame_energy(const opus_val16 *pcm, int frame_size,
      int channels, int arch)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - activity
    - nb_no_activity_ms_Q1
    - frame_size_ms_Q1
    argTypes:
    - opus_int
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1140
      start: 1115
    functionDepth: 0
    functionLinenumber: 1115
    functionLinenumberEnd: 1140
    functionName: decide_dtx_mode
    functionSourceFile: /src/opus/src/opus_encoder.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: "int decide_dtx_mode(opus_int activity,            /* indicates if
      this frame contains speech/music */\n                           int *nb_no_activity_ms_Q1,
      \   /* number of consecutive milliseconds with no activity, in Q1 */\n                           int
      frame_size_ms_Q1          /* number of milliseconds in this update, in Q1 */\n
      \                          )"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: IMIN
      Src: /src/opus/src/opus_encoder.c:1161,1
    - Dst: IMIN
      Src: /src/opus/src/opus_encoder.c:1164,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 4
    argNames:
    - max_data_bytes
    - bitrate_bps
    - frame_rate
    - channels
    argTypes:
    - opus_int32
    - opus_int32
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1168
      start: 1142
    functionDepth: 1
    functionLinenumber: 1142
    functionLinenumberEnd: 1168
    functionName: compute_redundancy_bytes
    functionSourceFile: /src/opus/src/opus_encoder.c
    functionUses: 0
    functionsReached:
    - IMIN
    linkageType: ''
    returnType: int
    signature: int compute_redundancy_bytes(opus_int32 max_data_bytes, opus_int32
      bitrate_bps, int frame_rate, int channels)
  - BBCount: 109
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/src/opus_encoder.c:1889,1
    - Dst: VARDECL
      Src: /src/opus/src/opus_encoder.c:1890,1
    - Dst: IMIN
      Src: /src/opus/src/opus_encoder.c:1893,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:1900,1
    - Dst: CELT_GET_MODE
      Src: /src/opus/src/opus_encoder.c:1900,1
    - Dst: compute_frame_energy
      Src: /src/opus/src/opus_encoder.c:1921,1
    - Dst: compute_frame_energy
      Src: /src/opus/src/opus_encoder.c:1927,1
    - Dst: QCONST16
      Src: /src/opus/src/opus_encoder.c:1929,1
    - Dst: HALF32
      Src: /src/opus/src/opus_encoder.c:1929,1
    - Dst: compute_redundancy_bytes
      Src: /src/opus/src/opus_encoder.c:1949,1
    - Dst: IMIN
      Src: /src/opus/src/opus_encoder.c:1960,1
    - Dst: bitrate_to_bits
      Src: /src/opus/src/opus_encoder.c:1960,1
    - Dst: ec_enc_init
      Src: /src/opus/src/opus_encoder.c:1964,1
    - Dst: ALLOC
      Src: /src/opus/src/opus_encoder.c:1966,1
    - Dst: OPUS_COPY
      Src: /src/opus/src/opus_encoder.c:1967,1
    - Dst: silk_LSHIFT
      Src: /src/opus/src/opus_encoder.c:1970,1
    - Dst: silk_lin2log
      Src: /src/opus/src/opus_encoder.c:1970,1
    - Dst: silk_SMLAWB
      Src: /src/opus/src/opus_encoder.c:1974,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/src/opus_encoder.c:1975,1
    - Dst: silk_log2lin
      Src: /src/opus/src/opus_encoder.c:1978,1
    - Dst: silk_RSHIFT
      Src: /src/opus/src/opus_encoder.c:1978,1
    - Dst: hp_cutoff
      Src: /src/opus/src/opus_encoder.c:1982,1
    - Dst: fopen
      Src: /src/opus/src/opus_encoder.c:1989,1
    - Dst: fwrite
      Src: /src/opus/src/opus_encoder.c:1998,1
    - Dst: OPUS_COPY
      Src: /src/opus/src/opus_encoder.c:2005,1
    - Dst: dc_reject
      Src: /src/opus/src/opus_encoder.c:2008,1
    - Dst: celt_inner_prod
      Src: /src/opus/src/opus_encoder.c:2014,1
    - Dst: celt_isnan
      Src: /src/opus/src/opus_encoder.c:2017,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/src/opus_encoder.c:2019,1
    - Dst: dred_compute_latents
      Src: /src/opus/src/opus_encoder.c:2032,1
    - Dst: OPUS_MOVE
      Src: /src/opus/src/opus_encoder.c:2034,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/src/opus_encoder.c:2039,1
    - Dst: bits_to_bitrate
      Src: /src/opus/src/opus_encoder.c:2051,1
    - Dst: compute_silk_rate_for_hybrid
      Src: /src/opus/src/opus_encoder.c:2054,1
    - Dst: SHR32
      Src: /src/opus/src/opus_encoder.c:2061,1
    - Dst: celt_exp2
      Src: /src/opus/src/opus_encoder.c:2061,1
    - Dst: QCONST16
      Src: /src/opus/src/opus_encoder.c:2061,1
    - Dst: MAXG
      Src: /src/opus/src/opus_encoder.c:2091,1
    - Dst: MING
      Src: /src/opus/src/opus_encoder.c:2091,1
    - Dst: GCONST
      Src: /src/opus/src/opus_encoder.c:2092,1
    - Dst: GCONST
      Src: /src/opus/src/opus_encoder.c:2092,1
    - Dst: HALF32
      Src: /src/opus/src/opus_encoder.c:2094,1
    - Dst: GCONST
      Src: /src/opus/src/opus_encoder.c:2100,1
    - Dst: PSHR32
      Src: /src/opus/src/opus_encoder.c:2101,1
    - Dst: MULT16_16
      Src: /src/opus/src/opus_encoder.c:2101,1
    - Dst: SHR32
      Src: /src/opus/src/opus_encoder.c:2101,1
    - Dst: MAX32
      Src: /src/opus/src/opus_encoder.c:2102,1
    - Dst: celt_assert
      Src: /src/opus/src/opus_encoder.c:2118,1
    - Dst: bits_to_bitrate
      Src: /src/opus/src/opus_encoder.c:2131,1
    - Dst: IMIN
      Src: /src/opus/src/opus_encoder.c:2137,1
    - Dst: IMIN
      Src: /src/opus/src/opus_encoder.c:2142,1
    - Dst: IMAX
      Src: /src/opus/src/opus_encoder.c:2175,1
    - Dst: IMAX
      Src: /src/opus/src/opus_encoder.c:2176,1
    - Dst: compute_silk_rate_for_hybrid
      Src: /src/opus/src/opus_encoder.c:2184,1
    - Dst: bitrate_to_bits
      Src: /src/opus/src/opus_encoder.c:2187,1
    - Dst: gain_fade
      Src: /src/opus/src/opus_encoder.c:2202,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/src/opus_encoder.c:2204,1
    - Dst: silk_Encode
      Src: /src/opus/src/opus_encoder.c:2206,1
    - Dst: silk_Encode
      Src: /src/opus/src/opus_encoder.c:2212,1
    - Dst: celt_assert
      Src: /src/opus/src/opus_encoder.c:2230,1
    - Dst: gen_toc
      Src: /src/opus/src/opus_encoder.c:2245,1
    - Dst: compute_redundancy_bytes
      Src: /src/opus/src/opus_encoder.c:2255,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:2284,1
    - Dst: CELT_SET_END_BAND
      Src: /src/opus/src/opus_encoder.c:2284,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:2285,1
    - Dst: CELT_SET_CHANNELS
      Src: /src/opus/src/opus_encoder.c:2285,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:2286,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/src/opus_encoder.c:2286,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:2294,1
    - Dst: CELT_SET_PREDICTION
      Src: /src/opus/src/opus_encoder.c:2294,1
    - Dst: ALLOC
      Src: /src/opus/src/opus_encoder.c:2297,1
    - Dst: OPUS_COPY
      Src: /src/opus/src/opus_encoder.c:2301,1
    - Dst: OPUS_MOVE
      Src: /src/opus/src/opus_encoder.c:2306,1
    - Dst: OPUS_COPY
      Src: /src/opus/src/opus_encoder.c:2307,1
    - Dst: OPUS_COPY
      Src: /src/opus/src/opus_encoder.c:2311,1
    - Dst: gain_fade
      Src: /src/opus/src/opus_encoder.c:2316,1
    - Dst: SHL16
      Src: /src/opus/src/opus_encoder.c:2336,1
    - Dst: SHL16
      Src: /src/opus/src/opus_encoder.c:2337,1
    - Dst: stereo_fade
      Src: /src/opus/src/opus_encoder.c:2344,1
    - Dst: ec_tell
      Src: /src/opus/src/opus_encoder.c:2351,1
    - Dst: ec_enc_bit_logp
      Src: /src/opus/src/opus_encoder.c:2355,1
    - Dst: ec_enc_bit_logp
      Src: /src/opus/src/opus_encoder.c:2359,1
    - Dst: ec_tell
      Src: /src/opus/src/opus_encoder.c:2364,1
    - Dst: ec_tell
      Src: /src/opus/src/opus_encoder.c:2367,1
    - Dst: IMIN
      Src: /src/opus/src/opus_encoder.c:2370,1
    - Dst: IMIN
      Src: /src/opus/src/opus_encoder.c:2371,1
    - Dst: IMAX
      Src: /src/opus/src/opus_encoder.c:2371,1
    - Dst: ec_enc_uint
      Src: /src/opus/src/opus_encoder.c:2373,1
    - Dst: ec_tell
      Src: /src/opus/src/opus_encoder.c:2388,1
    - Dst: ec_enc_done
      Src: /src/opus/src/opus_encoder.c:2389,1
    - Dst: celt_assert
      Src: /src/opus/src/opus_encoder.c:2395,1
    - Dst: bitrate_to_bits
      Src: /src/opus/src/opus_encoder.c:2403,1
    - Dst: IMAX
      Src: /src/opus/src/opus_encoder.c:2408,1
    - Dst: ec_tell
      Src: /src/opus/src/opus_encoder.c:2408,1
    - Dst: IMIN
      Src: /src/opus/src/opus_encoder.c:2410,1
    - Dst: ec_enc_shrink
      Src: /src/opus/src/opus_encoder.c:2413,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:2418,1
    - Dst: CELT_SET_ANALYSIS
      Src: /src/opus/src/opus_encoder.c:2418,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:2424,1
    - Dst: CELT_SET_SILK_INFO
      Src: /src/opus/src/opus_encoder.c:2424,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:2431,1
    - Dst: CELT_SET_START_BAND
      Src: /src/opus/src/opus_encoder.c:2431,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:2432,1
    - Dst: OPUS_SET_VBR
      Src: /src/opus/src/opus_encoder.c:2432,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:2433,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/src/opus_encoder.c:2433,1
    - Dst: celt_encode_with_ec
      Src: /src/opus/src/opus_encoder.c:2434,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:2440,1
    - Dst: OPUS_GET_FINAL_RANGE
      Src: /src/opus/src/opus_encoder.c:2440,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:2441,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:2445,1
    - Dst: CELT_SET_START_BAND
      Src: /src/opus/src/opus_encoder.c:2445,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:2450,1
    - Dst: OPUS_SET_VBR
      Src: /src/opus/src/opus_encoder.c:2450,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:2454,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/src/opus_encoder.c:2454,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:2455,1
    - Dst: OPUS_SET_VBR_CONSTRAINT
      Src: /src/opus/src/opus_encoder.c:2455,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:2460,1
    - Dst: OPUS_SET_VBR
      Src: /src/opus/src/opus_encoder.c:2460,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:2461,1
    - Dst: OPUS_SET_VBR_CONSTRAINT
      Src: /src/opus/src/opus_encoder.c:2461,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:2462,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/src/opus_encoder.c:2462,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:2470,1
    - Dst: OPUS_SET_VBR
      Src: /src/opus/src/opus_encoder.c:2470,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:2471,1
    - Dst: OPUS_SET_VBR_CONSTRAINT
      Src: /src/opus/src/opus_encoder.c:2471,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:2475,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/src/opus_encoder.c:2475,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:2481,1
    - Dst: celt_encode_with_ec
      Src: /src/opus/src/opus_encoder.c:2484,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:2485,1
    - Dst: CELT_SET_PREDICTION
      Src: /src/opus/src/opus_encoder.c:2485,1
    - Dst: ec_tell
      Src: /src/opus/src/opus_encoder.c:2488,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:2491,1
    - Dst: OPUS_SET_QEXT
      Src: /src/opus/src/opus_encoder.c:2491,1
    - Dst: celt_encode_with_ec
      Src: /src/opus/src/opus_encoder.c:2493,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:2495,1
    - Dst: OPUS_SET_QEXT
      Src: /src/opus/src/opus_encoder.c:2495,1
    - Dst: OPUS_MOVE
      Src: /src/opus/src/opus_encoder.c:2505,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:2509,1
    - Dst: OPUS_GET_FINAL_RANGE
      Src: /src/opus/src/opus_encoder.c:2509,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:2523,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:2524,1
    - Dst: CELT_SET_START_BAND
      Src: /src/opus/src/opus_encoder.c:2524,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:2525,1
    - Dst: CELT_SET_PREDICTION
      Src: /src/opus/src/opus_encoder.c:2525,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:2526,1
    - Dst: OPUS_SET_VBR
      Src: /src/opus/src/opus_encoder.c:2526,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:2527,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/src/opus_encoder.c:2527,1
    - Dst: ec_enc_shrink
      Src: /src/opus/src/opus_encoder.c:2533,1
    - Dst: celt_encode_with_ec
      Src: /src/opus/src/opus_encoder.c:2536,1
    - Dst: celt_encode_with_ec
      Src: /src/opus/src/opus_encoder.c:2538,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:2544,1
    - Dst: OPUS_GET_FINAL_RANGE
      Src: /src/opus/src/opus_encoder.c:2544,1
    - Dst: gen_toc
      Src: /src/opus/src/opus_encoder.c:2551,1
    - Dst: decide_dtx_mode
      Src: /src/opus/src/opus_encoder.c:2567,1
    - Dst: gen_toc
      Src: /src/opus/src/opus_encoder.c:2570,1
    - Dst: ec_tell
      Src: /src/opus/src/opus_encoder.c:2580,1
    - Dst: IMIN
      Src: /src/opus/src/opus_encoder.c:2609,1
    - Dst: IMIN
      Src: /src/opus/src/opus_encoder.c:2610,1
    - Dst: IMIN
      Src: /src/opus/src/opus_encoder.c:2612,1
    - Dst: dred_encode_silk_frame
      Src: /src/opus/src/opus_encoder.c:2624,1
    - Dst: celt_assert
      Src: /src/opus/src/opus_encoder.c:2628,1
    - Dst: opus_packet_pad_impl
      Src: /src/opus/src/opus_encoder.c:2633,1
    - Dst: opus_packet_pad
      Src: /src/opus/src/opus_encoder.c:2648,1
    CyclomaticComplexity: 151
    EdgeCount: 151
    ICount: 481
    argCount: 15
    argNames:
    - st
    - pcm
    - frame_size
    - data
    - orig_max_data_bytes
    - float_api
    - first_frame
    - opus_int32 dred_bitrate_bps
    - AnalysisInfo *analysis_info
    - is_silence
    - redundancy
    - celt_to_silk
    - prefill
    - equiv_rate
    - to_celt
    argTypes:
    - OpusEncoder*
    - opus_res*
    - int
    - unsigned char*
    - opus_int32
    - int
    - int
    - ENABLE_DRED
    - DISABLE_FLOAT_API
    - int
    - int
    - int
    - int
    - opus_int32
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2657
      start: 1855
    functionDepth: 6
    functionLinenumber: 1855
    functionLinenumberEnd: 2657
    functionName: opus_encode_frame_native
    functionSourceFile: /src/opus/src/opus_encoder.c
    functionUses: 0
    functionsReached:
    - ec_enc_init
    - OPUS_CLEAR
    - celt_isnan
    - compute_silk_rate_for_hybrid
    - ec_enc_done
    - celt_encoder_ctl
    - bitrate_to_bits
    - OPUS_COPY
    - OPUS_SET_VBR_CONSTRAINT
    - OPUS_MOVE
    - bits_to_bitrate
    - decide_dtx_mode
    - silk_SMLAWB
    - silk_log2lin
    - CELT_SET_PREDICTION
    - stereo_fade
    - OPUS_GET_FINAL_RANGE
    - OPUS_SET_QEXT
    - dred_compute_latents
    - PSHR32
    - CELT_SET_START_BAND
    - OPUS_SET_VBR
    - celt_encode_with_ec
    - ec_tell
    - ec_enc_uint
    - OPUS_SET_BITRATE
    - opus_packet_pad
    - silk_RSHIFT
    - gain_fade
    - CELT_SET_END_BAND
    - MING
    - VARDECL
    - HALF32
    - ALLOC
    - silk_lin2log
    - fwrite
    - QCONST16
    - CELT_SET_SILK_INFO
    - celt_assert
    - hp_cutoff
    - silk_LSHIFT
    - dc_reject
    - opus_packet_pad_impl
    - compute_frame_energy
    - MAX32
    - SHR32
    - CELT_GET_MODE
    - SILK_FIX_CONST
    - IMAX
    - silk_Encode
    - dred_encode_silk_frame
    - compute_redundancy_bytes
    - IMIN
    - celt_inner_prod
    - celt_exp2
    - MAXG
    - SHL16
    - MULT16_16
    - ec_enc_shrink
    - CELT_SET_ANALYSIS
    - GCONST
    - ec_enc_bit_logp
    - CELT_SET_CHANNELS
    - fopen
    - gen_toc
    linkageType: ''
    returnType: opus_int32
    signature: "opus_int32 opus_encode_frame_native(OpusEncoder *st, const opus_res
      *pcm, int frame_size,\n                unsigned char *data, opus_int32 orig_max_data_bytes,\n
      \               int float_api, int first_frame,\n#ifdef ENABLE_DRED\n                opus_int32
      dred_bitrate_bps,\n#endif\n#ifndef DISABLE_FLOAT_API\n                AnalysisInfo
      *analysis_info,\n#endif\n                int is_silence, int redundancy, int
      celt_to_silk, int prefill,\n                opus_int32 equiv_rate, int to_celt)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: frame_size_select
      Src: /src/opus/src/opus_encoder.c:2666,1
    - Dst: opus_encode_native
      Src: /src/opus/src/opus_encoder.c:2667,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - st
    - pcm
    - analysis_frame_size
    - data
    - max_data_bytes
    argTypes:
    - OpusEncoder*
    - opus_int16*
    - int
    - unsigned char*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2669
      start: 2662
    functionDepth: 1
    functionLinenumber: 2662
    functionLinenumberEnd: 2669
    functionName: opus_encode
    functionSourceFile: /src/opus/src/opus_encoder.c
    functionUses: 11
    functionsReached:
    - opus_encode_native
    - frame_size_select
    linkageType: ''
    returnType: opus_int32
    signature: "opus_int32 opus_encode(OpusEncoder *st, const opus_int16 *pcm, int
      analysis_frame_size,\n                unsigned char *data, opus_int32 max_data_bytes)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/src/opus_encoder.c:2676,1
    - Dst: frame_size_select
      Src: /src/opus/src/opus_encoder.c:2679,1
    - Dst: ALLOC
      Src: /src/opus/src/opus_encoder.c:2685,1
    - Dst: INT16TORES
      Src: /src/opus/src/opus_encoder.c:2688,1
    - Dst: opus_encode_native
      Src: /src/opus/src/opus_encoder.c:2689,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 5
    argNames:
    - st
    - pcm
    - analysis_frame_size
    - data
    - max_data_bytes
    argTypes:
    - OpusEncoder*
    - opus_int16*
    - int
    - unsigned char*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2693
      start: 2671
    functionDepth: 1
    functionLinenumber: 2671
    functionLinenumberEnd: 2693
    functionName: opus_encode
    functionSourceFile: /src/opus/src/opus_encoder.c
    functionUses: 11
    functionsReached:
    - INT16TORES
    - VARDECL
    - frame_size_select
    - ALLOC
    - opus_encode_native
    linkageType: ''
    returnType: opus_int32
    signature: "opus_int32 opus_encode(OpusEncoder *st, const opus_int16 *pcm, int
      analysis_frame_size,\n                unsigned char *data, opus_int32 max_data_bytes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: frame_size_select
      Src: /src/opus/src/opus_encoder.c:2701,1
    - Dst: opus_encode_native
      Src: /src/opus/src/opus_encoder.c:2702,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - st
    - pcm
    - analysis_frame_size
    - data
    - max_data_bytes
    argTypes:
    - OpusEncoder*
    - opus_int32*
    - int
    - unsigned char*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2704
      start: 2697
    functionDepth: 1
    functionLinenumber: 2697
    functionLinenumberEnd: 2704
    functionName: opus_encode24
    functionSourceFile: /src/opus/src/opus_encoder.c
    functionUses: 2
    functionsReached:
    - opus_encode_native
    - frame_size_select
    linkageType: ''
    returnType: opus_int32
    signature: "opus_int32 opus_encode24(OpusEncoder *st, const opus_int32 *pcm, int
      analysis_frame_size,\n                unsigned char *data, opus_int32 max_data_bytes)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/src/opus_encoder.c:2711,1
    - Dst: frame_size_select
      Src: /src/opus/src/opus_encoder.c:2714,1
    - Dst: ALLOC
      Src: /src/opus/src/opus_encoder.c:2720,1
    - Dst: INT24TORES
      Src: /src/opus/src/opus_encoder.c:2723,1
    - Dst: opus_encode_native
      Src: /src/opus/src/opus_encoder.c:2724,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 5
    argNames:
    - st
    - pcm
    - analysis_frame_size
    - data
    - max_data_bytes
    argTypes:
    - OpusEncoder*
    - opus_int32*
    - int
    - unsigned char*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2728
      start: 2706
    functionDepth: 1
    functionLinenumber: 2706
    functionLinenumberEnd: 2728
    functionName: opus_encode24
    functionSourceFile: /src/opus/src/opus_encoder.c
    functionUses: 2
    functionsReached:
    - INT24TORES
    - opus_encode_native
    - VARDECL
    - frame_size_select
    - ALLOC
    linkageType: ''
    returnType: opus_int32
    signature: "opus_int32 opus_encode24(OpusEncoder *st, const opus_int32 *pcm, int
      analysis_frame_size,\n                unsigned char *data, opus_int32 max_data_bytes)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: frame_size_select
      Src: /src/opus/src/opus_encoder.c:2739,1
    - Dst: opus_encode_native
      Src: /src/opus/src/opus_encoder.c:2740,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - st
    - pcm
    - analysis_frame_size
    - data
    - out_data_bytes
    argTypes:
    - OpusEncoder*
    - float*
    - int
    - unsigned char*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2742
      start: 2735
    functionDepth: 1
    functionLinenumber: 2735
    functionLinenumberEnd: 2742
    functionName: opus_encode_float
    functionSourceFile: /src/opus/src/opus_encoder.c
    functionUses: 3
    functionsReached:
    - opus_encode_native
    - frame_size_select
    linkageType: ''
    returnType: opus_int32
    signature: "opus_int32 opus_encode_float(OpusEncoder *st, const float *pcm, int
      analysis_frame_size,\n                      unsigned char *data, opus_int32
      out_data_bytes)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/src/opus_encoder.c:2749,1
    - Dst: frame_size_select
      Src: /src/opus/src/opus_encoder.c:2752,1
    - Dst: ALLOC
      Src: /src/opus/src/opus_encoder.c:2758,1
    - Dst: FLOAT2RES
      Src: /src/opus/src/opus_encoder.c:2761,1
    - Dst: opus_encode_native
      Src: /src/opus/src/opus_encoder.c:2762,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 5
    argNames:
    - st
    - pcm
    - analysis_frame_size
    - data
    - max_data_bytes
    argTypes:
    - OpusEncoder*
    - float*
    - int
    - unsigned char*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2766
      start: 2744
    functionDepth: 1
    functionLinenumber: 2744
    functionLinenumberEnd: 2766
    functionName: opus_encode_float
    functionSourceFile: /src/opus/src/opus_encoder.c
    functionUses: 3
    functionsReached:
    - FLOAT2RES
    - VARDECL
    - frame_size_select
    - ALLOC
    - opus_encode_native
    linkageType: ''
    returnType: opus_int32
    signature: "opus_int32 opus_encode_float(OpusEncoder *st, const float *pcm, int
      analysis_frame_size,\n      unsigned char *data, opus_int32 max_data_bytes)"
  - BBCount: 116
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/opus/src/opus_encoder.c:2779,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:2788,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:2809,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:2819,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:2834,1
    - Dst: user_bitrate_to_bitrate
      Src: /src/opus/src/opus_encoder.c:2839,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:2844,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:2854,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:2864,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:2881,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:2891,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:2908,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:2918,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:2928,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:2938,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:2945,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/src/opus_encoder.c:2945,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:2950,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:2960,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:2971,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:2981,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:2988,1
    - Dst: OPUS_SET_PACKET_LOSS_PERC
      Src: /src/opus/src/opus_encoder.c:2988,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:2993,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:3003,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:3014,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:3024,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:3034,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:3044,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:3054,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:3064,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:3074,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:3084,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:3096,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:3106,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:3116,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:3126,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:3136,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:3150,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:3160,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:3168,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:3176,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:3182,1
    - Dst: OPUS_SET_PHASE_INVERSION_DISABLED
      Src: /src/opus/src/opus_encoder.c:3182,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:3187,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:3193,1
    - Dst: OPUS_GET_PHASE_INVERSION_DISABLED
      Src: /src/opus/src/opus_encoder.c:3193,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:3201,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:3212,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:3224,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:3234,1
    - Dst: tonality_analysis_reset
      Src: /src/opus/src/opus_encoder.c:3250,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/src/opus_encoder.c:3254,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:3257,1
    - Dst: silk_InitEncoder
      Src: /src/opus/src/opus_encoder.c:3259,1
    - Dst: dred_encoder_reset
      Src: /src/opus/src/opus_encoder.c:3262,1
    - Dst: silk_LSHIFT
      Src: /src/opus/src/opus_encoder.c:3270,1
    - Dst: silk_lin2log
      Src: /src/opus/src/opus_encoder.c:3270,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:3275,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:3285,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:3288,1
    - Dst: OPUS_SET_LFE
      Src: /src/opus/src/opus_encoder.c:3288,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:3293,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:3296,1
    - Dst: OPUS_SET_ENERGY_MASK
      Src: /src/opus/src/opus_encoder.c:3296,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:3301,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:3327,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:3328,1
    - Dst: dred_encoder_load_model
      Src: /src/opus/src/opus_encoder.c:3334,1
    - Dst: va_arg
      Src: /src/opus/src/opus_encoder.c:3341,1
    - Dst: celt_assert
      Src: /src/opus/src/opus_encoder.c:3346,1
    - Dst: celt_encoder_ctl
      Src: /src/opus/src/opus_encoder.c:3347,1
    - Dst: CELT_GET_MODE
      Src: /src/opus/src/opus_encoder.c:3347,1
    - Dst: va_end
      Src: /src/opus/src/opus_encoder.c:3355,1
    - Dst: va_end
      Src: /src/opus/src/opus_encoder.c:3358,1
    CyclomaticComplexity: 204
    EdgeCount: 204
    ICount: 454
    argCount: 2
    argNames:
    - st
    - request
    argTypes:
    - OpusEncoder*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3360
      start: 2772
    functionDepth: 2
    functionLinenumber: 2772
    functionLinenumberEnd: 3360
    functionName: opus_encoder_ctl
    functionSourceFile: /src/opus/src/opus_encoder.c
    functionUses: 13
    functionsReached:
    - OPUS_CLEAR
    - va_arg
    - celt_encoder_ctl
    - silk_InitEncoder
    - va_start
    - dred_encoder_load_model
    - silk_lin2log
    - celt_assert
    - OPUS_SET_PACKET_LOSS_PERC
    - silk_LSHIFT
    - dred_encoder_reset
    - tonality_analysis_reset
    - CELT_GET_MODE
    - OPUS_SET_ENERGY_MASK
    - OPUS_SET_PHASE_INVERSION_DISABLED
    - OPUS_GET_PHASE_INVERSION_DISABLED
    - OPUS_SET_LFE
    - OPUS_SET_COMPLEXITY
    - va_end
    - user_bitrate_to_bitrate
    linkageType: ''
    returnType: int
    signature: int opus_encoder_ctl(OpusEncoder *st, int request, ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_free
      Src: /src/opus/src/opus_encoder.c:3364,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - st
    argTypes:
    - OpusEncoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3365
      start: 3362
    functionDepth: 1
    functionLinenumber: 3362
    functionLinenumberEnd: 3365
    functionName: opus_encoder_destroy
    functionSourceFile: /src/opus/src/opus_encoder.c
    functionUses: 12
    functionsReached:
    - opus_free
    linkageType: ''
    returnType: void
    signature: void opus_encoder_destroy(OpusEncoder *st)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - layout
    argTypes:
    - ChannelLayout*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 54
    functionName: validate_layout
    functionSourceFile: /src/opus/src/opus_multistream.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int validate_layout(const ChannelLayout *layout)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - layout
    - stream_id
    - prev
    argTypes:
    - ChannelLayout*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 67
    functionName: get_left_channel
    functionSourceFile: /src/opus/src/opus_multistream.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int get_left_channel(const ChannelLayout *layout, int stream_id, int
      prev)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - layout
    - stream_id
    - prev
    argTypes:
    - ChannelLayout*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 79
    functionName: get_right_channel
    functionSourceFile: /src/opus/src/opus_multistream.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int get_right_channel(const ChannelLayout *layout, int stream_id, int
      prev)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - layout
    - stream_id
    - prev
    argTypes:
    - ChannelLayout*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 91
    functionName: get_mono_channel
    functionSourceFile: /src/opus/src/opus_multistream.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int get_mono_channel(const ChannelLayout *layout, int stream_id, int
      prev)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/src/opus_decoder.c:99,1
    - Dst: celt_assert
      Src: /src/opus/src/opus_decoder.c:101,1
    - Dst: celt_assert
      Src: /src/opus/src/opus_decoder.c:103,1
    - Dst: celt_assert
      Src: /src/opus/src/opus_decoder.c:105,1
    - Dst: celt_assert
      Src: /src/opus/src/opus_decoder.c:106,1
    - Dst: celt_assert
      Src: /src/opus/src/opus_decoder.c:107,1
    - Dst: celt_assert
      Src: /src/opus/src/opus_decoder.c:108,1
    - Dst: celt_assert
      Src: /src/opus/src/opus_decoder.c:109,1
    - Dst: celt_assert
      Src: /src/opus/src/opus_decoder.c:111,1
    - Dst: celt_assert
      Src: /src/opus/src/opus_decoder.c:112,1
    - Dst: celt_assert
      Src: /src/opus/src/opus_decoder.c:114,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 12
    argCount: 1
    argNames:
    - st
    argTypes:
    - OpusDecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 115
    functionName: validate_opus_decoder
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 0
    functionsReached:
    - celt_assert
    linkageType: ''
    returnType: void
    signature: void validate_opus_decoder(OpusDecoder *st)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - st
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 117
    functionName: VALIDATE_OPUS_DECODER
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VALIDATE_OPUS_DECODER(st)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: silk_Get_Decoder_Size
      Src: /src/opus/src/opus_decoder.c:127,1
    - Dst: align
      Src: /src/opus/src/opus_decoder.c:130,1
    - Dst: celt_decoder_get_size
      Src: /src/opus/src/opus_decoder.c:131,1
    - Dst: align
      Src: /src/opus/src/opus_decoder.c:132,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - channels
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 121
    functionDepth: 1
    functionLinenumber: 121
    functionLinenumberEnd: 133
    functionName: opus_decoder_get_size
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 5
    functionsReached:
    - celt_decoder_get_size
    - silk_Get_Decoder_Size
    - align
    linkageType: ''
    returnType: int
    signature: int opus_decoder_get_size(int channels)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_CLEAR
      Src: /src/opus/src/opus_decoder.c:149,1
    - Dst: opus_decoder_get_size
      Src: /src/opus/src/opus_decoder.c:149,1
    - Dst: silk_Get_Decoder_Size
      Src: /src/opus/src/opus_decoder.c:151,1
    - Dst: align
      Src: /src/opus/src/opus_decoder.c:155,1
    - Dst: align
      Src: /src/opus/src/opus_decoder.c:156,1
    - Dst: silk_InitDecoder
      Src: /src/opus/src/opus_decoder.c:168,1
    - Dst: celt_decoder_init
      Src: /src/opus/src/opus_decoder.c:172,1
    - Dst: celt_decoder_ctl
      Src: /src/opus/src/opus_decoder.c:175,1
    - Dst: CELT_SET_SIGNALLING
      Src: /src/opus/src/opus_decoder.c:175,1
    - Dst: lpcnet_plc_init
      Src: /src/opus/src/opus_decoder.c:180,1
    - Dst: opus_select_arch
      Src: /src/opus/src/opus_decoder.c:182,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 29
    argCount: 3
    argNames:
    - st
    - Fs
    - channels
    argTypes:
    - OpusDecoder*
    - opus_int32
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 135
    functionDepth: 2
    functionLinenumber: 135
    functionLinenumberEnd: 184
    functionName: opus_decoder_init
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 1
    functionsReached:
    - lpcnet_plc_init
    - OPUS_CLEAR
    - opus_select_arch
    - CELT_SET_SIGNALLING
    - celt_decoder_ctl
    - silk_InitDecoder
    - align
    - celt_decoder_init
    - silk_Get_Decoder_Size
    - opus_decoder_get_size
    linkageType: ''
    returnType: int
    signature: int opus_decoder_init(OpusDecoder *st, opus_int32 Fs, int channels)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: opus_alloc
      Src: /src/opus/src/opus_decoder.c:201,1
    - Dst: opus_decoder_get_size
      Src: /src/opus/src/opus_decoder.c:201,1
    - Dst: opus_decoder_init
      Src: /src/opus/src/opus_decoder.c:208,1
    - Dst: opus_free
      Src: /src/opus/src/opus_decoder.c:213,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 20
    argCount: 3
    argNames:
    - Fs
    - channels
    - error
    argTypes:
    - opus_int32
    - int
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 186
    functionDepth: 3
    functionLinenumber: 186
    functionLinenumberEnd: 217
    functionName: opus_decoder_create
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 8
    functionsReached:
    - opus_free
    - opus_alloc
    - opus_decoder_get_size
    - opus_decoder_init
    linkageType: ''
    returnType: OpusDecoder
    signature: OpusDecoder *opus_decoder_create(opus_int32 Fs, int channels, int *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MULT_COEF
      Src: /src/opus/src/opus_decoder.c:230,1
    - Dst: ADD32
      Src: /src/opus/src/opus_decoder.c:231,1
    - Dst: MULT_COEF_32
      Src: /src/opus/src/opus_decoder.c:231,1
    - Dst: MULT_COEF_32
      Src: /src/opus/src/opus_decoder.c:232,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 7
    argNames:
    - in1
    - in2
    - out
    - overlap
    - channels
    - window
    - Fs
    argTypes:
    - opus_res*
    - opus_res*
    - opus_res*
    - int
    - int
    - celt_coef*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 220
    functionDepth: 1
    functionLinenumber: 220
    functionLinenumberEnd: 235
    functionName: smooth_fade
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 0
    functionsReached:
    - MULT_COEF_32
    - MULT_COEF
    - ADD32
    linkageType: ''
    returnType: void
    signature: "void smooth_fade(const opus_res *in1, const opus_res *in2,\n      opus_res
      *out, int overlap, int channels,\n      const celt_coef *window, opus_int32
      Fs)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: COEF2VAL16
      Src: /src/opus/src/opus_decoder.c:247,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/src/opus_decoder.c:248,1
    - Dst: SHR32
      Src: /src/opus/src/opus_decoder.c:249,1
    - Dst: MAC16_16
      Src: /src/opus/src/opus_decoder.c:249,1
    - Dst: MULT16_16
      Src: /src/opus/src/opus_decoder.c:249,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 7
    argNames:
    - in1
    - in2
    - out
    - overlap
    - channels
    - window
    - Fs
    argTypes:
    - opus_res*
    - opus_res*
    - opus_res*
    - int
    - int
    - celt_coef*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 237
    functionDepth: 1
    functionLinenumber: 237
    functionLinenumberEnd: 253
    functionName: smooth_fade
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 0
    functionsReached:
    - MAC16_16
    - MULT16_16
    - MULT16_16_Q15
    - SHR32
    - COEF2VAL16
    linkageType: ''
    returnType: void
    signature: "void smooth_fade(const opus_res *in1, const opus_res *in2,\n      opus_res
      *out, int overlap, int channels,\n      const celt_coef *window, opus_int32
      Fs)"
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - data
    argTypes:
    - unsigned char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 256
    functionDepth: 0
    functionLinenumber: 256
    functionLinenumberEnd: 269
    functionName: opus_packet_get_mode
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int opus_packet_get_mode(const unsigned char *data)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: VALIDATE_OPUS_DECODER
      Src: /src/opus/src/opus_decoder.c:729,1
    - Dst: lpcnet_plc_fec_clear
      Src: /src/opus/src/opus_decoder.c:741,1
    - Dst: IMAX
      Src: /src/opus/src/opus_decoder.c:745,1
    - Dst: floor
      Src: /src/opus/src/opus_decoder.c:750,1
    - Dst: lpcnet_plc_fec_add
      Src: /src/opus/src/opus_decoder.c:752,1
    - Dst: lpcnet_plc_fec_add
      Src: /src/opus/src/opus_decoder.c:754,1
    - Dst: opus_decode_frame
      Src: /src/opus/src/opus_decoder.c:768,1
    - Dst: ARG_QEXT
      Src: /src/opus/src/opus_decoder.c:768,1
    - Dst: celt_assert
      Src: /src/opus/src/opus_decoder.c:773,1
    - Dst: OPUS_CHECK_ARRAY
      Src: /src/opus/src/opus_decoder.c:774,1
    - Dst: OPUS_PRINT_INT
      Src: /src/opus/src/opus_decoder.c:775,1
    - Dst: opus_packet_get_mode
      Src: /src/opus/src/opus_decoder.c:781,1
    - Dst: opus_packet_get_bandwidth
      Src: /src/opus/src/opus_decoder.c:782,1
    - Dst: opus_packet_get_samples_per_frame
      Src: /src/opus/src/opus_decoder.c:783,1
    - Dst: opus_packet_get_nb_channels
      Src: /src/opus/src/opus_decoder.c:784,1
    - Dst: opus_packet_parse_impl
      Src: /src/opus/src/opus_decoder.c:786,1
    - Dst: opus_extension_iterator_init
      Src: /src/opus/src/opus_decoder.c:794,1
    - Dst: opus_decode_native
      Src: /src/opus/src/opus_decoder.c:804,1
    - Dst: opus_decode_native
      Src: /src/opus/src/opus_decoder.c:809,1
    - Dst: celt_assert
      Src: /src/opus/src/opus_decoder.c:815,1
    - Dst: opus_decode_frame
      Src: /src/opus/src/opus_decoder.c:822,1
    - Dst: ARG_QEXT
      Src: /src/opus/src/opus_decoder.c:823,1
    - Dst: OPUS_CHECK_ARRAY
      Src: /src/opus/src/opus_decoder.c:827,1
    - Dst: OPUS_PRINT_INT
      Src: /src/opus/src/opus_decoder.c:828,1
    - Dst: opus_extension_iterator_find
      Src: /src/opus/src/opus_decoder.c:856,1
    - Dst: opus_decode_frame
      Src: /src/opus/src/opus_decoder.c:862,1
    - Dst: ARG_QEXT
      Src: /src/opus/src/opus_decoder.c:862,1
    - Dst: celt_assert
      Src: /src/opus/src/opus_decoder.c:865,1
    - Dst: OPUS_CHECK_ARRAY
      Src: /src/opus/src/opus_decoder.c:870,1
    - Dst: OPUS_PRINT_INT
      Src: /src/opus/src/opus_decoder.c:871,1
    - Dst: opus_pcm_soft_clip_impl
      Src: /src/opus/src/opus_decoder.c:874,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 113
    argCount: 11
    argNames:
    - st
    - data
    - len
    - pcm
    - frame_size
    - decode_fec
    - self_delimited
    - packet_offset
    - soft_clip
    - dred
    - dred_offset
    argTypes:
    - OpusDecoder*
    - unsigned char*
    - opus_int32
    - opus_res*
    - int
    - int
    - int
    - opus_int32*
    - int
    - OpusDRED*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 879
      start: 716
    functionDepth: 2
    functionLinenumber: 716
    functionLinenumberEnd: 879
    functionName: opus_decode_native
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 1
    functionsReached:
    - opus_decode_native
    - opus_packet_get_mode
    - VALIDATE_OPUS_DECODER
    - opus_packet_parse_impl
    - opus_pcm_soft_clip_impl
    - opus_packet_get_nb_channels
    - floor
    - opus_extension_iterator_init
    - celt_assert
    - lpcnet_plc_fec_clear
    - lpcnet_plc_fec_add
    - opus_packet_get_samples_per_frame
    - opus_decode_frame
    - IMAX
    - opus_extension_iterator_find
    - opus_packet_get_bandwidth
    - OPUS_CHECK_ARRAY
    - ARG_QEXT
    - OPUS_PRINT_INT
    linkageType: ''
    returnType: int
    signature: "int opus_decode_native(OpusDecoder *st, const unsigned char *data,\n
      \     opus_int32 len, opus_res *pcm, int frame_size, int decode_fec,\n      int
      self_delimited, opus_int32 *packet_offset, int soft_clip, const OpusDRED *dred,
      opus_int32 dred_offset)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: opus_decode_native
      Src: /src/opus/src/opus_decoder.c:893,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 6
    argNames:
    - st
    - data
    - len
    - pcm
    - frame_size
    - decode_fec
    argTypes:
    - OpusDecoder*
    - unsigned char*
    - opus_int32
    - opus_int16*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 894
      start: 888
    functionDepth: 3
    functionLinenumber: 888
    functionLinenumberEnd: 894
    functionName: opus_decode
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 8
    functionsReached:
    - opus_decode_native
    linkageType: ''
    returnType: int
    signature: "int opus_decode(OpusDecoder *st, const unsigned char *data,\n      opus_int32
      len, opus_int16 *pcm, int frame_size, int decode_fec)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/src/opus_decoder.c:899,1
    - Dst: opus_decoder_get_nb_samples
      Src: /src/opus/src/opus_decoder.c:911,1
    - Dst: IMIN
      Src: /src/opus/src/opus_decoder.c:913,1
    - Dst: celt_assert
      Src: /src/opus/src/opus_decoder.c:917,1
    - Dst: ALLOC
      Src: /src/opus/src/opus_decoder.c:918,1
    - Dst: opus_decode_native
      Src: /src/opus/src/opus_decoder.c:920,1
    - Dst: RES2INT16
      Src: /src/opus/src/opus_decoder.c:926,1
    - Dst: celt_float2int16
      Src: /src/opus/src/opus_decoder.c:928,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 6
    argNames:
    - st
    - data
    - len
    - pcm
    - frame_size
    - decode_fec
    argTypes:
    - OpusDecoder*
    - unsigned char*
    - opus_int32
    - opus_int16*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 933
      start: 896
    functionDepth: 3
    functionLinenumber: 896
    functionLinenumberEnd: 933
    functionName: opus_decode
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 8
    functionsReached:
    - RES2INT16
    - celt_assert
    - opus_decode_native
    - IMIN
    - celt_float2int16
    - VARDECL
    - ALLOC
    - opus_decoder_get_nb_samples
    linkageType: ''
    returnType: int
    signature: "int opus_decode(OpusDecoder *st, const unsigned char *data,\n      opus_int32
      len, opus_int16 *pcm, int frame_size, int decode_fec)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: opus_decode_native
      Src: /src/opus/src/opus_decoder.c:942,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 6
    argNames:
    - st
    - data
    - len
    - pcm
    - frame_size
    - decode_fec
    argTypes:
    - OpusDecoder*
    - unsigned char*
    - opus_int32
    - opus_int32*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 943
      start: 937
    functionDepth: 3
    functionLinenumber: 937
    functionLinenumberEnd: 943
    functionName: opus_decode24
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 2
    functionsReached:
    - opus_decode_native
    linkageType: ''
    returnType: int
    signature: "int opus_decode24(OpusDecoder *st, const unsigned char *data,\n      opus_int32
      len, opus_int32 *pcm, int frame_size, int decode_fec)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/src/opus_decoder.c:948,1
    - Dst: opus_decoder_get_nb_samples
      Src: /src/opus/src/opus_decoder.c:960,1
    - Dst: IMIN
      Src: /src/opus/src/opus_decoder.c:962,1
    - Dst: celt_assert
      Src: /src/opus/src/opus_decoder.c:966,1
    - Dst: ALLOC
      Src: /src/opus/src/opus_decoder.c:967,1
    - Dst: opus_decode_native
      Src: /src/opus/src/opus_decoder.c:969,1
    - Dst: RES2INT24
      Src: /src/opus/src/opus_decoder.c:974,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 23
    argCount: 6
    argNames:
    - st
    - data
    - len
    - pcm
    - frame_size
    - decode_fec
    argTypes:
    - OpusDecoder*
    - unsigned char*
    - opus_int32
    - opus_int32*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 978
      start: 945
    functionDepth: 3
    functionLinenumber: 945
    functionLinenumberEnd: 978
    functionName: opus_decode24
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 2
    functionsReached:
    - celt_assert
    - opus_decode_native
    - IMIN
    - RES2INT24
    - VARDECL
    - ALLOC
    - opus_decoder_get_nb_samples
    linkageType: ''
    returnType: int
    signature: "int opus_decode24(OpusDecoder *st, const unsigned char *data,\n      opus_int32
      len, opus_int32 *pcm, int frame_size, int decode_fec)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: opus_decode_native
      Src: /src/opus/src/opus_decoder.c:990,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 6
    argNames:
    - st
    - data
    - len
    - pcm
    - frame_size
    - decode_fec
    argTypes:
    - OpusDecoder*
    - unsigned char*
    - opus_int32
    - opus_val16*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 991
      start: 985
    functionDepth: 3
    functionLinenumber: 985
    functionLinenumberEnd: 991
    functionName: opus_decode_float
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 2
    functionsReached:
    - opus_decode_native
    linkageType: ''
    returnType: int
    signature: "int opus_decode_float(OpusDecoder *st, const unsigned char *data,\n
      \     opus_int32 len, opus_val16 *pcm, int frame_size, int decode_fec)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/src/opus_decoder.c:996,1
    - Dst: opus_decoder_get_nb_samples
      Src: /src/opus/src/opus_decoder.c:1008,1
    - Dst: IMIN
      Src: /src/opus/src/opus_decoder.c:1010,1
    - Dst: celt_assert
      Src: /src/opus/src/opus_decoder.c:1014,1
    - Dst: ALLOC
      Src: /src/opus/src/opus_decoder.c:1015,1
    - Dst: opus_decode_native
      Src: /src/opus/src/opus_decoder.c:1017,1
    - Dst: RES2FLOAT
      Src: /src/opus/src/opus_decoder.c:1021,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 6
    argNames:
    - st
    - data
    - len
    - pcm
    - frame_size
    - decode_fec
    argTypes:
    - OpusDecoder*
    - unsigned char*
    - opus_int32
    - float*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1025
      start: 993
    functionDepth: 3
    functionLinenumber: 993
    functionLinenumberEnd: 1025
    functionName: opus_decode_float
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 2
    functionsReached:
    - celt_assert
    - opus_decode_native
    - IMIN
    - VARDECL
    - ALLOC
    - RES2FLOAT
    - opus_decoder_get_nb_samples
    linkageType: ''
    returnType: int
    signature: "int opus_decode_float(OpusDecoder *st, const unsigned char *data,\n
      \     opus_int32 len, float *pcm, int frame_size, int decode_fec)"
  - BBCount: 36
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/opus/src/opus_decoder.c:1042,1
    - Dst: va_arg
      Src: /src/opus/src/opus_decoder.c:1048,1
    - Dst: va_arg
      Src: /src/opus/src/opus_decoder.c:1058,1
    - Dst: celt_decoder_ctl
      Src: /src/opus/src/opus_decoder.c:1064,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/src/opus_decoder.c:1064,1
    - Dst: va_arg
      Src: /src/opus/src/opus_decoder.c:1069,1
    - Dst: va_arg
      Src: /src/opus/src/opus_decoder.c:1080,1
    - Dst: va_arg
      Src: /src/opus/src/opus_decoder.c:1090,1
    - Dst: va_arg
      Src: /src/opus/src/opus_decoder.c:1101,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/src/opus_decoder.c:1111,1
    - Dst: celt_decoder_ctl
      Src: /src/opus/src/opus_decoder.c:1115,1
    - Dst: silk_ResetDecoder
      Src: /src/opus/src/opus_decoder.c:1116,1
    - Dst: lpcnet_plc_reset
      Src: /src/opus/src/opus_decoder.c:1120,1
    - Dst: va_arg
      Src: /src/opus/src/opus_decoder.c:1126,1
    - Dst: va_arg
      Src: /src/opus/src/opus_decoder.c:1136,1
    - Dst: celt_decoder_ctl
      Src: /src/opus/src/opus_decoder.c:1142,1
    - Dst: OPUS_GET_PITCH
      Src: /src/opus/src/opus_decoder.c:1142,1
    - Dst: va_arg
      Src: /src/opus/src/opus_decoder.c:1149,1
    - Dst: va_arg
      Src: /src/opus/src/opus_decoder.c:1159,1
    - Dst: va_arg
      Src: /src/opus/src/opus_decoder.c:1169,1
    - Dst: va_arg
      Src: /src/opus/src/opus_decoder.c:1179,1
    - Dst: celt_decoder_ctl
      Src: /src/opus/src/opus_decoder.c:1184,1
    - Dst: OPUS_SET_PHASE_INVERSION_DISABLED
      Src: /src/opus/src/opus_decoder.c:1184,1
    - Dst: va_arg
      Src: /src/opus/src/opus_decoder.c:1189,1
    - Dst: celt_decoder_ctl
      Src: /src/opus/src/opus_decoder.c:1194,1
    - Dst: OPUS_GET_PHASE_INVERSION_DISABLED
      Src: /src/opus/src/opus_decoder.c:1194,1
    - Dst: va_arg
      Src: /src/opus/src/opus_decoder.c:1199,1
    - Dst: va_arg
      Src: /src/opus/src/opus_decoder.c:1209,1
    - Dst: va_arg
      Src: /src/opus/src/opus_decoder.c:1220,1
    - Dst: va_arg
      Src: /src/opus/src/opus_decoder.c:1221,1
    - Dst: lpcnet_plc_load_model
      Src: /src/opus/src/opus_decoder.c:1226,1
    - Dst: silk_LoadOSCEModels
      Src: /src/opus/src/opus_decoder.c:1227,1
    - Dst: va_end
      Src: /src/opus/src/opus_decoder.c:1237,1
    - Dst: va_end
      Src: /src/opus/src/opus_decoder.c:1240,1
    CyclomaticComplexity: 59
    EdgeCount: 59
    ICount: 156
    argCount: 2
    argNames:
    - st
    - request
    argTypes:
    - OpusDecoder*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1242
      start: 1031
    functionDepth: 1
    functionLinenumber: 1031
    functionLinenumberEnd: 1242
    functionName: opus_decoder_ctl
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 6
    functionsReached:
    - OPUS_CLEAR
    - OPUS_GET_PITCH
    - OPUS_SET_PHASE_INVERSION_DISABLED
    - va_arg
    - OPUS_GET_PHASE_INVERSION_DISABLED
    - silk_LoadOSCEModels
    - celt_decoder_ctl
    - silk_ResetDecoder
    - OPUS_SET_COMPLEXITY
    - lpcnet_plc_load_model
    - va_end
    - lpcnet_plc_reset
    - va_start
    linkageType: ''
    returnType: int
    signature: int opus_decoder_ctl(OpusDecoder *st, int request, ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_free
      Src: /src/opus/src/opus_decoder.c:1246,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - st
    argTypes:
    - OpusDecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1247
      start: 1244
    functionDepth: 1
    functionLinenumber: 1244
    functionLinenumberEnd: 1247
    functionName: opus_decoder_destroy
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 8
    functionsReached:
    - opus_free
    linkageType: ''
    returnType: void
    signature: void opus_decoder_destroy(OpusDecoder *st)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - data
    argTypes:
    - unsigned char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1266
      start: 1250
    functionDepth: 0
    functionLinenumber: 1250
    functionLinenumberEnd: 1266
    functionName: opus_packet_get_bandwidth
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int opus_packet_get_bandwidth(const unsigned char *data)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - data
    argTypes:
    - unsigned char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1271
      start: 1268
    functionDepth: 0
    functionLinenumber: 1268
    functionLinenumberEnd: 1271
    functionName: opus_packet_get_nb_channels
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int opus_packet_get_nb_channels(const unsigned char *data)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - packet
    - len
    argTypes:
    - unsigned char[]
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1287
      start: 1273
    functionDepth: 0
    functionLinenumber: 1273
    functionLinenumberEnd: 1287
    functionName: opus_packet_get_nb_frames
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int opus_packet_get_nb_frames(const unsigned char packet[], opus_int32
      len)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: opus_packet_get_nb_frames
      Src: /src/opus/src/opus_decoder.c:1293,1
    - Dst: opus_packet_get_samples_per_frame
      Src: /src/opus/src/opus_decoder.c:1298,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 3
    argNames:
    - packet
    - len
    - Fs
    argTypes:
    - unsigned char[]
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1304
      start: 1289
    functionDepth: 1
    functionLinenumber: 1289
    functionLinenumberEnd: 1304
    functionName: opus_packet_get_nb_samples
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 1
    functionsReached:
    - opus_packet_get_nb_frames
    - opus_packet_get_samples_per_frame
    linkageType: ''
    returnType: int
    signature: "int opus_packet_get_nb_samples(const unsigned char packet[], opus_int32
      len,\n      opus_int32 Fs)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: opus_packet_get_mode
      Src: /src/opus/src/opus_decoder.c:1315,1
    - Dst: opus_packet_get_samples_per_frame
      Src: /src/opus/src/opus_decoder.c:1318,1
    - Dst: opus_packet_get_nb_channels
      Src: /src/opus/src/opus_decoder.c:1321,1
    - Dst: opus_packet_parse
      Src: /src/opus/src/opus_decoder.c:1322,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 2
    argNames:
    - packet
    - len
    argTypes:
    - unsigned char[]
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1331
      start: 1306
    functionDepth: 3
    functionLinenumber: 1306
    functionLinenumberEnd: 1331
    functionName: opus_packet_has_lbrr
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 1
    functionsReached:
    - opus_packet_parse
    - opus_packet_get_mode
    - opus_packet_get_nb_channels
    - opus_packet_get_samples_per_frame
    linkageType: ''
    returnType: int
    signature: int opus_packet_has_lbrr(const unsigned char packet[], opus_int32 len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_packet_get_nb_samples
      Src: /src/opus/src/opus_decoder.c:1336,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - dec
    - packet
    - len
    argTypes:
    - OpusDecoder*
    - unsigned char[]
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1337
      start: 1333
    functionDepth: 2
    functionLinenumber: 1333
    functionLinenumberEnd: 1337
    functionName: opus_decoder_get_nb_samples
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 5
    functionsReached:
    - opus_packet_get_nb_samples
    linkageType: ''
    returnType: int
    signature: "int opus_decoder_get_nb_samples(const OpusDecoder *dec,\n      const
      unsigned char packet[], opus_int32 len)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/src/opus_decoder.c:1351,1
    - Dst: celt_assert
      Src: /src/opus/src/opus_decoder.c:1353,1
    - Dst: celt_assert
      Src: /src/opus/src/opus_decoder.c:1354,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - st
    argTypes:
    - OpusDREDDecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1356
      start: 1349
    functionDepth: 1
    functionLinenumber: 1349
    functionLinenumberEnd: 1356
    functionName: validate_dred_decoder
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 0
    functionsReached:
    - celt_assert
    linkageType: ''
    returnType: void
    signature: void validate_dred_decoder(OpusDREDDecoder *st)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - st
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1358
      start: 1357
    functionDepth: 0
    functionLinenumber: 1357
    functionLinenumberEnd: 1358
    functionName: VALIDATE_DRED_DECODER
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VALIDATE_DRED_DECODER(st)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1366
      start: 1363
    functionDepth: 0
    functionLinenumber: 1363
    functionLinenumberEnd: 1366
    functionName: opus_dred_decoder_get_size
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int opus_dred_decoder_get_size(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: parse_weights
      Src: /src/opus/src/opus_decoder.c:1373,1
    - Dst: init_rdovaedec
      Src: /src/opus/src/opus_decoder.c:1374,1
    - Dst: opus_free
      Src: /src/opus/src/opus_decoder.c:1375,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - dec
    - data
    - len
    argTypes:
    - OpusDREDDecoder*
    - unsigned char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1378
      start: 1369
    functionDepth: 1
    functionLinenumber: 1369
    functionLinenumberEnd: 1378
    functionName: dred_decoder_load_model
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 0
    functionsReached:
    - parse_weights
    - init_rdovaedec
    - opus_free
    linkageType: ''
    returnType: int
    signature: int dred_decoder_load_model(OpusDREDDecoder *dec, const unsigned char
      *data, int len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: init_rdovaedec
      Src: /src/opus/src/opus_decoder.c:1386,1
    - Dst: opus_select_arch
      Src: /src/opus/src/opus_decoder.c:1389,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - dec
    argTypes:
    - OpusDREDDecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1393
      start: 1381
    functionDepth: 0
    functionLinenumber: 1381
    functionLinenumberEnd: 1393
    functionName: opus_dred_decoder_init
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 0
    functionsReached:
    - init_rdovaedec
    - opus_select_arch
    linkageType: ''
    returnType: int
    signature: int opus_dred_decoder_init(OpusDREDDecoder *dec)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: opus_alloc
      Src: /src/opus/src/opus_decoder.c:1399,1
    - Dst: opus_dred_decoder_get_size
      Src: /src/opus/src/opus_decoder.c:1399,1
    - Dst: opus_dred_decoder_init
      Src: /src/opus/src/opus_decoder.c:1406,1
    - Dst: opus_free
      Src: /src/opus/src/opus_decoder.c:1411,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - error
    argTypes:
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1415
      start: 1395
    functionDepth: 1
    functionLinenumber: 1395
    functionLinenumberEnd: 1415
    functionName: opus_dred_decoder_create
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 3
    functionsReached:
    - opus_dred_decoder_init
    - opus_free
    - opus_alloc
    - opus_dred_decoder_get_size
    linkageType: ''
    returnType: OpusDREDDecoder
    signature: OpusDREDDecoder *opus_dred_decoder_create(int *error)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: opus_free
      Src: /src/opus/src/opus_decoder.c:1420,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - dec
    argTypes:
    - OpusDREDDecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1421
      start: 1417
    functionDepth: 1
    functionLinenumber: 1417
    functionLinenumberEnd: 1421
    functionName: opus_dred_decoder_destroy
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 3
    functionsReached:
    - opus_free
    linkageType: ''
    returnType: void
    signature: void opus_dred_decoder_destroy(OpusDREDDecoder *dec)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/opus/src/opus_decoder.c:1429,1
    - Dst: va_arg
      Src: /src/opus/src/opus_decoder.c:1436,1
    - Dst: va_arg
      Src: /src/opus/src/opus_decoder.c:1437,1
    - Dst: dred_decoder_load_model
      Src: /src/opus/src/opus_decoder.c:1442,1
    - Dst: va_end
      Src: /src/opus/src/opus_decoder.c:1451,1
    - Dst: va_end
      Src: /src/opus/src/opus_decoder.c:1455,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 2
    argNames:
    - dred_dec
    - request
    argTypes:
    - OpusDREDDecoder*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1463
      start: 1423
    functionDepth: 2
    functionLinenumber: 1423
    functionLinenumberEnd: 1463
    functionName: opus_dred_decoder_ctl
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 1
    functionsReached:
    - dred_decoder_load_model
    - va_arg
    - va_end
    - va_start
    linkageType: ''
    returnType: int
    signature: int opus_dred_decoder_ctl(OpusDREDDecoder *dred_dec, int request, ...)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: opus_packet_parse_impl
      Src: /src/opus/src/opus_decoder.c:1480,1
    - Dst: opus_packet_get_samples_per_frame
      Src: /src/opus/src/opus_decoder.c:1485,1
    - Dst: opus_extension_iterator_init
      Src: /src/opus/src/opus_decoder.c:1486,1
    - Dst: opus_extension_iterator_find
      Src: /src/opus/src/opus_decoder.c:1488,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 4
    argNames:
    - data
    - len
    - payload
    - dred_frame_offset
    argTypes:
    - unsigned char*
    - opus_int32
    - unsigned char**
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1508
      start: 1466
    functionDepth: 2
    functionLinenumber: 1466
    functionLinenumberEnd: 1508
    functionName: dred_find_payload
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 0
    functionsReached:
    - opus_packet_parse_impl
    - opus_extension_iterator_init
    - opus_extension_iterator_find
    - opus_packet_get_samples_per_frame
    linkageType: ''
    returnType: int
    signature: int dred_find_payload(const unsigned char *data, opus_int32 len, const
      unsigned char **payload, int *dred_frame_offset)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1518
      start: 1511
    functionDepth: 0
    functionLinenumber: 1511
    functionLinenumberEnd: 1518
    functionName: opus_dred_get_size
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int opus_dred_get_size(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: opus_alloc
      Src: /src/opus/src/opus_decoder.c:1524,1
    - Dst: opus_dred_get_size
      Src: /src/opus/src/opus_decoder.c:1524,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - error
    argTypes:
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1537
      start: 1520
    functionDepth: 1
    functionLinenumber: 1520
    functionLinenumberEnd: 1537
    functionName: opus_dred_alloc
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 3
    functionsReached:
    - opus_dred_get_size
    - opus_alloc
    linkageType: ''
    returnType: OpusDRED
    signature: OpusDRED *opus_dred_alloc(int *error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_free
      Src: /src/opus/src/opus_decoder.c:1542,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - dec
    argTypes:
    - OpusDRED*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1546
      start: 1539
    functionDepth: 1
    functionLinenumber: 1539
    functionLinenumberEnd: 1546
    functionName: opus_dred_free
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 3
    functionsReached:
    - opus_free
    linkageType: ''
    returnType: void
    signature: void opus_dred_free(OpusDRED *dec)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: VALIDATE_DRED_DECODER
      Src: /src/opus/src/opus_decoder.c:1554,1
    - Dst: dred_find_payload
      Src: /src/opus/src/opus_decoder.c:1557,1
    - Dst: IMIN
      Src: /src/opus/src/opus_decoder.c:1565,1
    - Dst: dred_ec_decode
      Src: /src/opus/src/opus_decoder.c:1566,1
    - Dst: opus_dred_process
      Src: /src/opus/src/opus_decoder.c:1568,1
    - Dst: IMAX
      Src: /src/opus/src/opus_decoder.c:1569,1
    - Dst: IMAX
      Src: /src/opus/src/opus_decoder.c:1570,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 30
    argCount: 8
    argNames:
    - dred_dec
    - dred
    - data
    - len
    - max_dred_samples
    - sampling_rate
    - dred_end
    - defer_processing
    argTypes:
    - OpusDREDDecoder*
    - OpusDRED*
    - unsigned char*
    - opus_int32
    - opus_int32
    - opus_int32
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1585
      start: 1548
    functionDepth: 3
    functionLinenumber: 1548
    functionLinenumberEnd: 1585
    functionName: opus_dred_parse
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 3
    functionsReached:
    - IMIN
    - VALIDATE_DRED_DECODER
    - dred_ec_decode
    - dred_find_payload
    - IMAX
    - opus_dred_process
    linkageType: ''
    returnType: int
    signature: int opus_dred_parse(OpusDREDDecoder *dred_dec, OpusDRED *dred, const
      unsigned char *data, opus_int32 len, opus_int32 max_dred_samples, opus_int32
      sampling_rate, int *dred_end, int defer_processing)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: VALIDATE_DRED_DECODER
      Src: /src/opus/src/opus_decoder.c:1592,1
    - Dst: OPUS_COPY
      Src: /src/opus/src/opus_decoder.c:1595,1
    - Dst: DRED_rdovae_decode_all
      Src: /src/opus/src/opus_decoder.c:1598,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 17
    argCount: 3
    argNames:
    - dred_dec
    - src
    - dst
    argTypes:
    - OpusDREDDecoder*
    - OpusDRED*
    - OpusDRED*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1607
      start: 1587
    functionDepth: 1
    functionLinenumber: 1587
    functionLinenumberEnd: 1607
    functionName: opus_dred_process
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 2
    functionsReached:
    - DRED_rdovae_decode_all
    - VALIDATE_DRED_DECODER
    - OPUS_COPY
    linkageType: ''
    returnType: int
    signature: int opus_dred_process(OpusDREDDecoder *dred_dec, const OpusDRED *src,
      OpusDRED *dst)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/src/opus_decoder.c:1622,1
    - Dst: ALLOC
      Src: /src/opus/src/opus_decoder.c:1623,1
    - Dst: opus_decode_native
      Src: /src/opus/src/opus_decoder.c:1625,1
    - Dst: RES2INT16
      Src: /src/opus/src/opus_decoder.c:1629,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 5
    argNames:
    - st
    - dred
    - dred_offset
    - pcm
    - frame_size
    argTypes:
    - OpusDecoder*
    - OpusDRED*
    - opus_int32
    - opus_int16*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1641
      start: 1609
    functionDepth: 3
    functionLinenumber: 1609
    functionLinenumberEnd: 1641
    functionName: opus_decoder_dred_decode
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 1
    functionsReached:
    - RES2INT16
    - celt_assert
    - opus_decode_native
    - ALLOC
    linkageType: ''
    returnType: int
    signature: int opus_decoder_dred_decode(OpusDecoder *st, const OpusDRED *dred,
      opus_int32 dred_offset, opus_int16 *pcm, opus_int32 frame_size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/src/opus_decoder.c:1656,1
    - Dst: ALLOC
      Src: /src/opus/src/opus_decoder.c:1657,1
    - Dst: opus_decode_native
      Src: /src/opus/src/opus_decoder.c:1659,1
    - Dst: RES2INT24
      Src: /src/opus/src/opus_decoder.c:1663,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 5
    argNames:
    - st
    - dred
    - dred_offset
    - pcm
    - frame_size
    argTypes:
    - OpusDecoder*
    - OpusDRED*
    - opus_int32
    - opus_int32*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1675
      start: 1643
    functionDepth: 3
    functionLinenumber: 1643
    functionLinenumberEnd: 1675
    functionName: opus_decoder_dred_decode24
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - opus_decode_native
    - ALLOC
    - RES2INT24
    linkageType: ''
    returnType: int
    signature: int opus_decoder_dred_decode24(OpusDecoder *st, const OpusDRED *dred,
      opus_int32 dred_offset, opus_int32 *pcm, opus_int32 frame_size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: opus_decode_native
      Src: /src/opus/src/opus_decoder.c:1682,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 5
    argNames:
    - st
    - dred
    - dred_offset
    - pcm
    - frame_size
    argTypes:
    - OpusDecoder*
    - OpusDRED*
    - opus_int32
    - float*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1691
      start: 1677
    functionDepth: 3
    functionLinenumber: 1677
    functionLinenumberEnd: 1691
    functionName: opus_decoder_dred_decode_float
    functionSourceFile: /src/opus/src/opus_decoder.c
    functionUses: 0
    functionsReached:
    - opus_decode_native
    linkageType: ''
    returnType: int
    signature: int opus_decoder_dred_decode_float(OpusDecoder *st, const OpusDRED
      *dred, opus_int32 dred_offset, float *pcm, opus_int32 frame_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: validate_layout
      Src: /src/opus/src/opus_multistream_decoder.c:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - st
    argTypes:
    - OpusMSDecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionName: validate_ms_decoder
    functionSourceFile: /src/opus/src/opus_multistream_decoder.c
    functionUses: 0
    functionsReached:
    - validate_layout
    linkageType: ''
    returnType: void
    signature: void validate_ms_decoder(OpusMSDecoder *st)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - st
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 48
    functionName: VALIDATE_MS_DECODER
    functionSourceFile: /src/opus/src/opus_multistream_decoder.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VALIDATE_MS_DECODER(st)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: opus_decoder_get_size
      Src: /src/opus/src/opus_multistream_decoder.c:59,1
    - Dst: opus_decoder_get_size
      Src: /src/opus/src/opus_multistream_decoder.c:60,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_decoder.c:61,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_decoder.c:62,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_decoder.c:63,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - nb_streams
    - nb_coupled_streams
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 53
    functionDepth: 2
    functionLinenumber: 53
    functionLinenumberEnd: 64
    functionName: opus_multistream_decoder_get_size
    functionSourceFile: /src/opus/src/opus_multistream_decoder.c
    functionUses: 2
    functionsReached:
    - opus_decoder_get_size
    - align
    linkageType: ''
    returnType: opus_int32
    signature: opus_int32 opus_multistream_decoder_get_size(int nb_streams, int nb_coupled_streams)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: validate_layout
      Src: /src/opus/src/opus_multistream_decoder.c:90,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_decoder.c:93,1
    - Dst: opus_decoder_get_size
      Src: /src/opus/src/opus_multistream_decoder.c:94,1
    - Dst: opus_decoder_get_size
      Src: /src/opus/src/opus_multistream_decoder.c:95,1
    - Dst: opus_decoder_init
      Src: /src/opus/src/opus_multistream_decoder.c:99,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_decoder.c:101,1
    - Dst: opus_decoder_init
      Src: /src/opus/src/opus_multistream_decoder.c:105,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_decoder.c:107,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 26
    argCount: 6
    argNames:
    - st
    - Fs
    - channels
    - streams
    - coupled_streams
    - mapping
    argTypes:
    - OpusMSDecoder*
    - opus_int32
    - int
    - int
    - int
    - unsigned char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 66
    functionDepth: 3
    functionLinenumber: 66
    functionLinenumberEnd: 110
    functionName: opus_multistream_decoder_init
    functionSourceFile: /src/opus/src/opus_multistream_decoder.c
    functionUses: 2
    functionsReached:
    - opus_decoder_get_size
    - opus_decoder_init
    - validate_layout
    - align
    linkageType: ''
    returnType: int
    signature: "int opus_multistream_decoder_init(\n      OpusMSDecoder *st,\n      opus_int32
      Fs,\n      int channels,\n      int streams,\n      int coupled_streams,\n      const
      unsigned char *mapping\n)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: opus_alloc
      Src: /src/opus/src/opus_multistream_decoder.c:131,1
    - Dst: opus_multistream_decoder_get_size
      Src: /src/opus/src/opus_multistream_decoder.c:131,1
    - Dst: opus_multistream_decoder_init
      Src: /src/opus/src/opus_multistream_decoder.c:138,1
    - Dst: opus_free
      Src: /src/opus/src/opus_multistream_decoder.c:143,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 20
    argCount: 6
    argNames:
    - Fs
    - channels
    - streams
    - coupled_streams
    - mapping
    - error
    argTypes:
    - opus_int32
    - int
    - int
    - int
    - unsigned char*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 113
    functionDepth: 4
    functionLinenumber: 113
    functionLinenumberEnd: 147
    functionName: opus_multistream_decoder_create
    functionSourceFile: /src/opus/src/opus_multistream_decoder.c
    functionUses: 4
    functionsReached:
    - opus_multistream_decoder_init
    - opus_free
    - opus_multistream_decoder_get_size
    - opus_alloc
    linkageType: ''
    returnType: OpusMSDecoder
    signature: "OpusMSDecoder *opus_multistream_decoder_create(\n      opus_int32
      Fs,\n      int channels,\n      int streams,\n      int coupled_streams,\n      const
      unsigned char *mapping,\n      int *error\n)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: opus_packet_parse_impl
      Src: /src/opus/src/opus_multistream_decoder.c:164,1
    - Dst: opus_packet_get_nb_samples
      Src: /src/opus/src/opus_multistream_decoder.c:168,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 4
    argNames:
    - data
    - len
    - nb_streams
    - Fs
    argTypes:
    - unsigned char*
    - opus_int32
    - int
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 149
    functionDepth: 2
    functionLinenumber: 149
    functionLinenumberEnd: 176
    functionName: opus_multistream_packet_validate
    functionSourceFile: /src/opus/src/opus_multistream_decoder.c
    functionUses: 0
    functionsReached:
    - opus_packet_parse_impl
    - opus_packet_get_nb_samples
    linkageType: ''
    returnType: int
    signature: "int opus_multistream_packet_validate(const unsigned char *data,\n
      \     opus_int32 len, int nb_streams, opus_int32 Fs)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/src/opus_multistream_decoder.c:196,1
    - Dst: VALIDATE_MS_DECODER
      Src: /src/opus/src/opus_multistream_decoder.c:199,1
    - Dst: MUST_SUCCEED
      Src: /src/opus/src/opus_multistream_decoder.c:206,1
    - Dst: opus_multistream_decoder_ctl
      Src: /src/opus/src/opus_multistream_decoder.c:206,1
    - Dst: OPUS_GET_SAMPLE_RATE
      Src: /src/opus/src/opus_multistream_decoder.c:206,1
    - Dst: IMIN
      Src: /src/opus/src/opus_multistream_decoder.c:207,1
    - Dst: ALLOC
      Src: /src/opus/src/opus_multistream_decoder.c:208,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_decoder.c:209,1
    - Dst: opus_decoder_get_size
      Src: /src/opus/src/opus_multistream_decoder.c:210,1
    - Dst: opus_decoder_get_size
      Src: /src/opus/src/opus_multistream_decoder.c:211,1
    - Dst: opus_multistream_packet_validate
      Src: /src/opus/src/opus_multistream_decoder.c:227,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_decoder.c:245,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_decoder.c:245,1
    - Dst: opus_decode_native
      Src: /src/opus/src/opus_multistream_decoder.c:253,1
    - Dst: get_left_channel
      Src: /src/opus/src/opus_multistream_decoder.c:270,1
    - Dst: get_right_channel
      Src: /src/opus/src/opus_multistream_decoder.c:278,1
    - Dst: get_mono_channel
      Src: /src/opus/src/opus_multistream_decoder.c:288,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 78
    argCount: 9
    argNames:
    - st
    - data
    - len
    - pcm
    - copy_channel_out
    - frame_size
    - decode_fec
    - soft_clip
    - user_data
    argTypes:
    - OpusMSDecoder*
    - unsigned char*
    - opus_int32
    - void*
    - opus_copy_channel_out_func
    - int
    - int
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 307
      start: 178
    functionDepth: 3
    functionLinenumber: 178
    functionLinenumberEnd: 307
    functionName: opus_multistream_decode_native
    functionSourceFile: /src/opus/src/opus_multistream_decoder.c
    functionUses: 3
    functionsReached:
    - opus_decode_native
    - get_mono_channel
    - IMIN
    - OPUS_GET_SAMPLE_RATE
    - get_right_channel
    - align
    - VARDECL
    - VALIDATE_MS_DECODER
    - ALLOC
    - MUST_SUCCEED
    - get_left_channel
    - opus_multistream_packet_validate
    - opus_decoder_get_size
    - opus_multistream_decoder_ctl
    linkageType: ''
    returnType: int
    signature: "int opus_multistream_decode_native(\n      OpusMSDecoder *st,\n      const
      unsigned char *data,\n      opus_int32 len,\n      void *pcm,\n      opus_copy_channel_out_func
      copy_channel_out,\n      int frame_size,\n      int decode_fec,\n      int soft_clip,\n
      \     void *user_data\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: RES2FLOAT
      Src: /src/opus/src/opus_multistream_decoder.c:327,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 7
    argNames:
    - dst
    - dst_stride
    - dst_channel
    - src
    - src_stride
    - frame_size
    - user_data
    argTypes:
    - void*
    - int
    - int
    - opus_res*
    - int
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 310
    functionDepth: 1
    functionLinenumber: 310
    functionLinenumberEnd: 334
    functionName: opus_copy_channel_out_float
    functionSourceFile: /src/opus/src/opus_multistream_decoder.c
    functionUses: 0
    functionsReached:
    - RES2FLOAT
    linkageType: ''
    returnType: void
    signature: "void opus_copy_channel_out_float(\n  void *dst,\n  int dst_stride,\n
      \ int dst_channel,\n  const opus_res *src,\n  int src_stride,\n  int frame_size,\n
      \ void *user_data\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: RES2INT16
      Src: /src/opus/src/opus_multistream_decoder.c:354,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 7
    argNames:
    - dst
    - dst_stride
    - dst_channel
    - src
    - src_stride
    - frame_size
    - user_data
    argTypes:
    - void*
    - int
    - int
    - opus_res*
    - int
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 361
      start: 337
    functionDepth: 1
    functionLinenumber: 337
    functionLinenumberEnd: 361
    functionName: opus_copy_channel_out_short
    functionSourceFile: /src/opus/src/opus_multistream_decoder.c
    functionUses: 0
    functionsReached:
    - RES2INT16
    linkageType: ''
    returnType: void
    signature: "void opus_copy_channel_out_short(\n  void *dst,\n  int dst_stride,\n
      \ int dst_channel,\n  const opus_res *src,\n  int src_stride,\n  int frame_size,\n
      \ void *user_data\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: RES2INT24
      Src: /src/opus/src/opus_multistream_decoder.c:380,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 7
    argNames:
    - dst
    - dst_stride
    - dst_channel
    - src
    - src_stride
    - frame_size
    - user_data
    argTypes:
    - void*
    - int
    - int
    - opus_res*
    - int
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 363
    functionDepth: 1
    functionLinenumber: 363
    functionLinenumberEnd: 387
    functionName: opus_copy_channel_out_int24
    functionSourceFile: /src/opus/src/opus_multistream_decoder.c
    functionUses: 0
    functionsReached:
    - RES2INT24
    linkageType: ''
    returnType: void
    signature: "void opus_copy_channel_out_int24(\n  void *dst,\n  int dst_stride,\n
      \ int dst_channel,\n  const opus_res *src,\n  int src_stride,\n  int frame_size,\n
      \ void *user_data\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_multistream_decode_native
      Src: /src/opus/src/opus_multistream_decoder.c:404,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - st
    - data
    - len
    - pcm
    - frame_size
    - decode_fec
    argTypes:
    - OpusMSDecoder*
    - unsigned char*
    - opus_int32
    - opus_int16*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 406
      start: 395
    functionDepth: 4
    functionLinenumber: 395
    functionLinenumberEnd: 406
    functionName: opus_multistream_decode
    functionSourceFile: /src/opus/src/opus_multistream_decoder.c
    functionUses: 3
    functionsReached:
    - opus_multistream_decode_native
    linkageType: ''
    returnType: int
    signature: "int opus_multistream_decode(\n      OpusMSDecoder *st,\n      const
      unsigned char *data,\n      opus_int32 len,\n      opus_int16 *pcm,\n      int
      frame_size,\n      int decode_fec\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_multistream_decode_native
      Src: /src/opus/src/opus_multistream_decoder.c:417,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - st
    - data
    - len
    - pcm
    - frame_size
    - decode_fec
    argTypes:
    - OpusMSDecoder*
    - unsigned char*
    - opus_int32
    - opus_int32*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 419
      start: 408
    functionDepth: 4
    functionLinenumber: 408
    functionLinenumberEnd: 419
    functionName: opus_multistream_decode24
    functionSourceFile: /src/opus/src/opus_multistream_decoder.c
    functionUses: 0
    functionsReached:
    - opus_multistream_decode_native
    linkageType: ''
    returnType: int
    signature: "int opus_multistream_decode24(\n      OpusMSDecoder *st,\n      const
      unsigned char *data,\n      opus_int32 len,\n      opus_int32 *pcm,\n      int
      frame_size,\n      int decode_fec\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_multistream_decode_native
      Src: /src/opus/src/opus_multistream_decoder.c:425,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 6
    argNames:
    - st
    - data
    - len
    - pcm
    - frame_size
    - decode_fec
    argTypes:
    - OpusMSDecoder*
    - unsigned char*
    - opus_int32
    - float*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 427
      start: 422
    functionDepth: 4
    functionLinenumber: 422
    functionLinenumberEnd: 427
    functionName: opus_multistream_decode_float
    functionSourceFile: /src/opus/src/opus_multistream_decoder.c
    functionUses: 2
    functionsReached:
    - opus_multistream_decode_native
    linkageType: ''
    returnType: int
    signature: "int opus_multistream_decode_float(OpusMSDecoder *st, const unsigned
      char *data,\n      opus_int32 len, float *pcm, int frame_size, int decode_fec)"
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: opus_decoder_get_size
      Src: /src/opus/src/opus_multistream_decoder.c:437,1
    - Dst: opus_decoder_get_size
      Src: /src/opus/src/opus_multistream_decoder.c:438,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_decoder.c:439,1
    - Dst: va_arg
      Src: /src/opus/src/opus_multistream_decoder.c:451,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/src/opus_multistream_decoder.c:453,1
    - Dst: va_arg
      Src: /src/opus/src/opus_multistream_decoder.c:459,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_decoder.c:471,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_decoder.c:473,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/src/opus_multistream_decoder.c:474,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_decoder.c:489,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_decoder.c:491,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/src/opus_multistream_decoder.c:492,1
    - Dst: va_arg
      Src: /src/opus/src/opus_multistream_decoder.c:503,1
    - Dst: va_arg
      Src: /src/opus/src/opus_multistream_decoder.c:506,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_decoder.c:514,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_decoder.c:516,1
    - Dst: va_arg
      Src: /src/opus/src/opus_multistream_decoder.c:527,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_decoder.c:534,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_decoder.c:536,1
    - Dst: opus_decoder_ctl
      Src: /src/opus/src/opus_multistream_decoder.c:537,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 85
    argCount: 3
    argNames:
    - st
    - request
    - ap
    argTypes:
    - OpusMSDecoder*
    - int
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 550
      start: 430
    functionDepth: 2
    functionLinenumber: 430
    functionLinenumberEnd: 550
    functionName: opus_multistream_decoder_ctl_va_list
    functionSourceFile: /src/opus/src/opus_multistream_decoder.c
    functionUses: 1
    functionsReached:
    - opus_decoder_ctl
    - va_arg
    - opus_decoder_get_size
    - align
    linkageType: ''
    returnType: int
    signature: "int opus_multistream_decoder_ctl_va_list(OpusMSDecoder *st, int request,\n
      \                                        va_list ap)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/opus/src/opus_multistream_decoder.c:556,1
    - Dst: opus_multistream_decoder_ctl_va_list
      Src: /src/opus/src/opus_multistream_decoder.c:557,1
    - Dst: va_end
      Src: /src/opus/src/opus_multistream_decoder.c:558,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - st
    - request
    argTypes:
    - OpusMSDecoder*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 560
      start: 552
    functionDepth: 3
    functionLinenumber: 552
    functionLinenumberEnd: 560
    functionName: opus_multistream_decoder_ctl
    functionSourceFile: /src/opus/src/opus_multistream_decoder.c
    functionUses: 3
    functionsReached:
    - va_end
    - opus_multistream_decoder_ctl_va_list
    - va_start
    linkageType: ''
    returnType: int
    signature: int opus_multistream_decoder_ctl(OpusMSDecoder *st, int request, ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_free
      Src: /src/opus/src/opus_multistream_decoder.c:564,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - st
    argTypes:
    - OpusMSDecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 565
      start: 562
    functionDepth: 1
    functionLinenumber: 562
    functionLinenumberEnd: 565
    functionName: opus_multistream_decoder_destroy
    functionSourceFile: /src/opus/src/opus_multistream_decoder.c
    functionUses: 3
    functionsReached:
    - opus_free
    linkageType: ''
    returnType: void
    signature: void opus_multistream_decoder_destroy(OpusMSDecoder *st)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 35
    argCount: 5
    argNames:
    - pdata
    - len
    - pheader_size
    - id_byte
    - trailing_short_len
    argTypes:
    - unsigned char**
    - opus_int32
    - opus_int32*
    - int
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 90
    functionName: skip_extension_payload
    functionSourceFile: /src/opus/src/extensions.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: opus_int32
    signature: "opus_int32 skip_extension_payload(const unsigned char **pdata,\n opus_int32
      len, opus_int32 *pheader_size, int id_byte,\n opus_int32 trailing_short_len)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: skip_extension_payload
      Src: /src/opus/src/extensions.c:112,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 3
    argNames:
    - pdata
    - len
    - pheader_size
    argTypes:
    - unsigned char**
    - opus_int32
    - opus_int32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 118
    functionName: skip_extension
    functionSourceFile: /src/opus/src/extensions.c
    functionUses: 0
    functionsReached:
    - skip_extension_payload
    linkageType: ''
    returnType: opus_int32
    signature: "opus_int32 skip_extension(const unsigned char **pdata, opus_int32
      len,\n opus_int32 *pheader_size)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/src/extensions.c:122,1
    - Dst: celt_assert
      Src: /src/opus/src/extensions.c:123,1
    - Dst: celt_assert
      Src: /src/opus/src/extensions.c:124,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 4
    argNames:
    - iter
    - data
    - len
    - nb_frames
    argTypes:
    - OpusExtensionIterator*
    - unsigned char*
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 120
    functionDepth: 1
    functionLinenumber: 120
    functionLinenumberEnd: 133
    functionName: opus_extension_iterator_init
    functionSourceFile: /src/opus/src/extensions.c
    functionUses: 2
    functionsReached:
    - celt_assert
    linkageType: ''
    returnType: void
    signature: "void opus_extension_iterator_init(OpusExtensionIterator *iter,\n const
      unsigned char *data, opus_int32 len, opus_int32 nb_frames)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - iter
    argTypes:
    - OpusExtensionIterator*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 143
    functionName: opus_extension_iterator_reset
    functionSourceFile: /src/opus/src/extensions.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void opus_extension_iterator_reset(OpusExtensionIterator *iter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - iter
    - frame_max
    argTypes:
    - OpusExtensionIterator*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 152
    functionName: opus_extension_iterator_set_frame_max
    functionSourceFile: /src/opus/src/extensions.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void opus_extension_iterator_set_frame_max(OpusExtensionIterator *iter,\n
      int frame_max)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/src/extensions.c:160,1
    - Dst: skip_extension
      Src: /src/opus/src/extensions.c:166,1
    - Dst: celt_assert
      Src: /src/opus/src/extensions.c:169,1
    - Dst: skip_extension_payload
      Src: /src/opus/src/extensions.c:181,1
    - Dst: celt_assert
      Src: /src/opus/src/extensions.c:187,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 42
    argCount: 2
    argNames:
    - iter
    - ext
    argTypes:
    - OpusExtensionIterator*
    - opus_extension_data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 157
    functionDepth: 2
    functionLinenumber: 157
    functionLinenumberEnd: 220
    functionName: opus_extension_iterator_next_repeat
    functionSourceFile: /src/opus/src/extensions.c
    functionUses: 0
    functionsReached:
    - skip_extension_payload
    - celt_assert
    - skip_extension
    linkageType: ''
    returnType: int
    signature: "int opus_extension_iterator_next_repeat(OpusExtensionIterator *iter,\n
      opus_extension_data *ext)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: opus_extension_iterator_next_repeat
      Src: /src/opus/src/extensions.c:235,1
    - Dst: skip_extension
      Src: /src/opus/src/extensions.c:250,1
    - Dst: celt_assert
      Src: /src/opus/src/extensions.c:255,1
    - Dst: opus_extension_iterator_next_repeat
      Src: /src/opus/src/extensions.c:285,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 66
    argCount: 2
    argNames:
    - iter
    - ext
    argTypes:
    - OpusExtensionIterator*
    - opus_extension_data*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 226
    functionDepth: 3
    functionLinenumber: 226
    functionLinenumberEnd: 309
    functionName: opus_extension_iterator_next
    functionSourceFile: /src/opus/src/extensions.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - opus_extension_iterator_next_repeat
    - skip_extension
    linkageType: ''
    returnType: int
    signature: "int opus_extension_iterator_next(OpusExtensionIterator *iter,\n opus_extension_data
      *ext)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: opus_extension_iterator_next
      Src: /src/opus/src/extensions.c:316,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - iter
    - ext
    - id
    argTypes:
    - OpusExtensionIterator*
    - opus_extension_data*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 311
    functionDepth: 4
    functionLinenumber: 311
    functionLinenumberEnd: 325
    functionName: opus_extension_iterator_find
    functionSourceFile: /src/opus/src/extensions.c
    functionUses: 2
    functionsReached:
    - opus_extension_iterator_next
    linkageType: ''
    returnType: int
    signature: "int opus_extension_iterator_find(OpusExtensionIterator *iter,\n opus_extension_data
      *ext, int id)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_extension_iterator_init
      Src: /src/opus/src/extensions.c:334,1
    - Dst: opus_extension_iterator_next
      Src: /src/opus/src/extensions.c:335,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - data
    - len
    - nb_frames
    argTypes:
    - unsigned char*
    - opus_int32
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 337
      start: 329
    functionDepth: 4
    functionLinenumber: 329
    functionLinenumberEnd: 337
    functionName: opus_packet_extensions_count
    functionSourceFile: /src/opus/src/extensions.c
    functionUses: 3
    functionsReached:
    - opus_extension_iterator_next
    - opus_extension_iterator_init
    linkageType: ''
    returnType: opus_int32
    signature: "opus_int32 opus_packet_extensions_count(const unsigned char *data,\n
      opus_int32 len, int nb_frames)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_extension_iterator_init
      Src: /src/opus/src/extensions.c:346,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/src/extensions.c:347,1
    - Dst: opus_extension_iterator_next
      Src: /src/opus/src/extensions.c:348,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - data
    - len
    - nb_frame_exts
    - nb_frames
    argTypes:
    - unsigned char*
    - opus_int32
    - opus_int32*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 341
    functionDepth: 4
    functionLinenumber: 341
    functionLinenumberEnd: 352
    functionName: opus_packet_extensions_count_ext
    functionSourceFile: /src/opus/src/extensions.c
    functionUses: 2
    functionsReached:
    - opus_extension_iterator_next
    - OPUS_CLEAR
    - opus_extension_iterator_init
    linkageType: ''
    returnType: opus_int32
    signature: "opus_int32 opus_packet_extensions_count_ext(const unsigned char *data,\n
      opus_int32 len, opus_int32 *nb_frame_exts, int nb_frames)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/src/extensions.c:365,1
    - Dst: celt_assert
      Src: /src/opus/src/extensions.c:366,1
    - Dst: opus_extension_iterator_init
      Src: /src/opus/src/extensions.c:367,1
    - Dst: opus_extension_iterator_next
      Src: /src/opus/src/extensions.c:370,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 5
    argNames:
    - data
    - len
    - extensions
    - nb_extensions
    - nb_frames
    argTypes:
    - unsigned char*
    - opus_int32
    - opus_extension_data*
    - opus_int32*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 359
    functionDepth: 4
    functionLinenumber: 359
    functionLinenumberEnd: 379
    functionName: opus_packet_extensions_parse
    functionSourceFile: /src/opus/src/extensions.c
    functionUses: 6
    functionsReached:
    - opus_extension_iterator_next
    - celt_assert
    - opus_extension_iterator_init
    linkageType: ''
    returnType: opus_int32
    signature: "opus_int32 opus_packet_extensions_parse(const unsigned char *data,\n
      opus_int32 len, opus_extension_data *extensions, opus_int32 *nb_extensions,\n
      int nb_frames)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/src/extensions.c:395,1
    - Dst: celt_assert
      Src: /src/opus/src/extensions.c:396,1
    - Dst: celt_assert
      Src: /src/opus/src/extensions.c:397,1
    - Dst: opus_extension_iterator_init
      Src: /src/opus/src/extensions.c:407,1
    - Dst: opus_extension_iterator_next
      Src: /src/opus/src/extensions.c:410,1
    - Dst: celt_assert
      Src: /src/opus/src/extensions.c:416,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 6
    argNames:
    - data
    - len
    - extensions
    - nb_extensions
    - nb_frame_exts
    - nb_frames
    argTypes:
    - unsigned char*
    - opus_int32
    - opus_extension_data*
    - opus_int32*
    - opus_int32*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 421
      start: 386
    functionDepth: 4
    functionLinenumber: 386
    functionLinenumberEnd: 421
    functionName: opus_packet_extensions_parse_ext
    functionSourceFile: /src/opus/src/extensions.c
    functionUses: 2
    functionsReached:
    - opus_extension_iterator_next
    - celt_assert
    - opus_extension_iterator_init
    linkageType: ''
    returnType: opus_int32
    signature: "opus_int32 opus_packet_extensions_parse_ext(const unsigned char *data,\n
      opus_int32 len, opus_extension_data *extensions, opus_int32 *nb_extensions,\n
      const opus_int32 *nb_frame_exts, int nb_frames)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/src/extensions.c:425,1
    - Dst: OPUS_COPY
      Src: /src/opus/src/extensions.c:455,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 35
    argCount: 5
    argNames:
    - data
    - len
    - pos
    - ext
    - last
    argTypes:
    - unsigned char*
    - opus_int32
    - opus_int32
    - opus_extension_data*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 459
      start: 423
    functionDepth: 1
    functionLinenumber: 423
    functionLinenumberEnd: 459
    functionName: write_extension_payload
    functionSourceFile: /src/opus/src/extensions.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - OPUS_COPY
    linkageType: ''
    returnType: int
    signature: "int write_extension_payload(unsigned char *data, opus_int32 len,\n
      opus_int32 pos, const opus_extension_data *ext, int last)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/src/extensions.c:465,1
    - Dst: write_extension_payload
      Src: /src/opus/src/extensions.c:468,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 5
    argNames:
    - data
    - len
    - pos
    - ext
    - last
    argTypes:
    - unsigned char*
    - opus_int32
    - opus_int32
    - opus_extension_data*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 469
      start: 461
    functionDepth: 2
    functionLinenumber: 461
    functionLinenumberEnd: 469
    functionName: write_extension
    functionSourceFile: /src/opus/src/extensions.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - write_extension_payload
    linkageType: ''
    returnType: int
    signature: "int write_extension(unsigned char *data, opus_int32 len, opus_int32
      pos,\n const opus_extension_data *ext, int last)"
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/src/extensions.c:484,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/src/extensions.c:491,1
    - Dst: IMIN
      Src: /src/opus/src/extensions.c:497,1
    - Dst: IMAX
      Src: /src/opus/src/extensions.c:498,1
    - Dst: celt_assert
      Src: /src/opus/src/extensions.c:518,1
    - Dst: write_extension
      Src: /src/opus/src/extensions.c:587,1
    - Dst: write_extension_payload
      Src: /src/opus/src/extensions.c:611,1
    - Dst: celt_assert
      Src: /src/opus/src/extensions.c:624,1
    - Dst: OPUS_MOVE
      Src: /src/opus/src/extensions.c:632,1
    CyclomaticComplexity: 51
    EdgeCount: 51
    ICount: 108
    argCount: 6
    argNames:
    - data
    - len
    - extensions
    - nb_extensions
    - nb_frames
    - pad
    argTypes:
    - unsigned char*
    - opus_int32
    - opus_extension_data*
    - opus_int32
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 639
      start: 471
    functionDepth: 3
    functionLinenumber: 471
    functionLinenumberEnd: 639
    functionName: opus_packet_extensions_generate
    functionSourceFile: /src/opus/src/extensions.c
    functionUses: 11
    functionsReached:
    - celt_assert
    - OPUS_CLEAR
    - write_extension
    - IMIN
    - OPUS_MOVE
    - write_extension_payload
    - IMAX
    linkageType: ''
    returnType: opus_int32
    signature: "opus_int32 opus_packet_extensions_generate(unsigned char *data, opus_int32
      len,\n const opus_extension_data  *extensions, opus_int32 nb_extensions,\n int
      nb_frames, int pad)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: opus_packet_extensions_generate
      Src: /src/opus/src/extensions.c:654,1
    - Dst: printf
      Src: /src/opus/src/extensions.c:657,1
    - Dst: printf
      Src: /src/opus/src/extensions.c:659,1
    - Dst: printf
      Src: /src/opus/src/extensions.c:661,1
    - Dst: printf
      Src: /src/opus/src/extensions.c:662,1
    - Dst: opus_packet_extensions_count
      Src: /src/opus/src/extensions.c:662,1
    - Dst: opus_packet_extensions_parse
      Src: /src/opus/src/extensions.c:663,1
    - Dst: printf
      Src: /src/opus/src/extensions.c:667,1
    - Dst: printf
      Src: /src/opus/src/extensions.c:668,1
    - Dst: printf
      Src: /src/opus/src/extensions.c:669,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 671
      start: 643
    functionDepth: 5
    functionLinenumber: 643
    functionLinenumberEnd: 671
    functionName: main
    functionSourceFile: /src/opus/src/extensions.c
    functionUses: 0
    functionsReached:
    - opus_packet_extensions_count
    - opus_packet_extensions_generate
    - opus_packet_extensions_parse
    - printf
    linkageType: ''
    returnType: int
    signature: int main()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - nb_rows
    - ','
    - row
    - ','
    - col
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 39
    functionName: MATRIX_INDEX
    functionSourceFile: /src/opus/src/mapping_matrix.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MATRIX_INDEX(nb_rows, row, col)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: align
      Src: /src/opus/src/mapping_matrix.c:54,1
    - Dst: align
      Src: /src/opus/src/mapping_matrix.c:54,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - rows
    - cols
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 55
    functionName: mapping_matrix_get_size
    functionSourceFile: /src/opus/src/mapping_matrix.c
    functionUses: 5
    functionsReached:
    - align
    linkageType: ''
    returnType: opus_int32
    signature: opus_int32 mapping_matrix_get_size(int rows, int cols)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: align
      Src: /src/opus/src/mapping_matrix.c:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - matrix
    argTypes:
    - MappingMatrix*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 61
    functionName: mapping_matrix_get_data
    functionSourceFile: /src/opus/src/mapping_matrix.c
    functionUses: 1
    functionsReached:
    - align
    linkageType: ''
    returnType: opus_int16
    signature: opus_int16 *mapping_matrix_get_data(const MappingMatrix *matrix)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/src/mapping_matrix.c:72,1
    - Dst: align
      Src: /src/opus/src/mapping_matrix.c:72,1
    - Dst: align
      Src: /src/opus/src/mapping_matrix.c:72,1
    - Dst: mapping_matrix_get_data
      Src: /src/opus/src/mapping_matrix.c:77,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 6
    argNames:
    - matrix
    - rows
    - cols
    - gain
    - data
    - data_size
    argTypes:
    - MappingMatrix*
    - int
    - int
    - int
    - opus_int16*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 63
    functionDepth: 2
    functionLinenumber: 63
    functionLinenumberEnd: 82
    functionName: mapping_matrix_init
    functionSourceFile: /src/opus/src/mapping_matrix.c
    functionUses: 3
    functionsReached:
    - celt_assert
    - mapping_matrix_get_data
    - align
    linkageType: ''
    returnType: void
    signature: "void mapping_matrix_init(MappingMatrix * const matrix,\n  int rows,
      int cols, int gain, const opus_int16 *data, opus_int32 data_size)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/src/mapping_matrix.c:98,1
    - Dst: mapping_matrix_get_data
      Src: /src/opus/src/mapping_matrix.c:100,1
    - Dst: MATRIX_INDEX
      Src: /src/opus/src/mapping_matrix.c:108,1
    - Dst: MATRIX_INDEX
      Src: /src/opus/src/mapping_matrix.c:109,1
    - Dst: FLOAT2RES
      Src: /src/opus/src/mapping_matrix.c:111,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 7
    argNames:
    - matrix
    - input
    - input_rows
    - output
    - output_row
    - output_rows
    - frame_size
    argTypes:
    - MappingMatrix*
    - float*
    - int
    - opus_res*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 85
    functionDepth: 2
    functionLinenumber: 85
    functionLinenumberEnd: 113
    functionName: mapping_matrix_multiply_channel_in_float
    functionSourceFile: /src/opus/src/mapping_matrix.c
    functionUses: 2
    functionsReached:
    - celt_assert
    - MATRIX_INDEX
    - FLOAT2RES
    - mapping_matrix_get_data
    linkageType: ''
    returnType: void
    signature: "void mapping_matrix_multiply_channel_in_float(\n    const MappingMatrix
      *matrix,\n    const float *input,\n    int input_rows,\n    opus_res *output,\n
      \   int output_row,\n    int output_rows,\n    int frame_size)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/src/mapping_matrix.c:130,1
    - Dst: mapping_matrix_get_data
      Src: /src/opus/src/mapping_matrix.c:132,1
    - Dst: RES2FLOAT
      Src: /src/opus/src/mapping_matrix.c:136,1
    - Dst: MATRIX_INDEX
      Src: /src/opus/src/mapping_matrix.c:140,1
    - Dst: MATRIX_INDEX
      Src: /src/opus/src/mapping_matrix.c:142,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 7
    argNames:
    - matrix
    - input
    - input_row
    - input_rows
    - output
    - output_rows
    - frame_size
    argTypes:
    - MappingMatrix*
    - opus_res*
    - int
    - int
    - float*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 115
    functionDepth: 2
    functionLinenumber: 115
    functionLinenumberEnd: 145
    functionName: mapping_matrix_multiply_channel_out_float
    functionSourceFile: /src/opus/src/mapping_matrix.c
    functionUses: 2
    functionsReached:
    - celt_assert
    - RES2FLOAT
    - mapping_matrix_get_data
    - MATRIX_INDEX
    linkageType: ''
    returnType: void
    signature: "void mapping_matrix_multiply_channel_out_float(\n    const MappingMatrix
      *matrix,\n    const opus_res *input,\n    int input_row,\n    int input_rows,\n
      \   float *output,\n    int output_rows,\n    int frame_size\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/src/mapping_matrix.c:161,1
    - Dst: mapping_matrix_get_data
      Src: /src/opus/src/mapping_matrix.c:163,1
    - Dst: MATRIX_INDEX
      Src: /src/opus/src/mapping_matrix.c:172,1
    - Dst: MATRIX_INDEX
      Src: /src/opus/src/mapping_matrix.c:173,1
    - Dst: MATRIX_INDEX
      Src: /src/opus/src/mapping_matrix.c:176,1
    - Dst: MATRIX_INDEX
      Src: /src/opus/src/mapping_matrix.c:177,1
    - Dst: SHL32
      Src: /src/opus/src/mapping_matrix.c:182,1
    - Dst: SATURATE16
      Src: /src/opus/src/mapping_matrix.c:184,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 7
    argNames:
    - matrix
    - input
    - input_rows
    - output
    - output_row
    - output_rows
    - frame_size
    argTypes:
    - MappingMatrix*
    - opus_int16*
    - int
    - opus_res*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 148
    functionDepth: 2
    functionLinenumber: 148
    functionLinenumberEnd: 190
    functionName: mapping_matrix_multiply_channel_in_short
    functionSourceFile: /src/opus/src/mapping_matrix.c
    functionUses: 2
    functionsReached:
    - celt_assert
    - MATRIX_INDEX
    - SHL32
    - mapping_matrix_get_data
    - SATURATE16
    linkageType: ''
    returnType: void
    signature: "void mapping_matrix_multiply_channel_in_short(\n    const MappingMatrix
      *matrix,\n    const opus_int16 *input,\n    int input_rows,\n    opus_res *output,\n
      \   int output_row,\n    int output_rows,\n    int frame_size)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/src/mapping_matrix.c:206,1
    - Dst: mapping_matrix_get_data
      Src: /src/opus/src/mapping_matrix.c:208,1
    - Dst: RES2INT16
      Src: /src/opus/src/mapping_matrix.c:212,1
    - Dst: MATRIX_INDEX
      Src: /src/opus/src/mapping_matrix.c:216,1
    - Dst: MATRIX_INDEX
      Src: /src/opus/src/mapping_matrix.c:218,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 7
    argNames:
    - matrix
    - input
    - input_row
    - input_rows
    - output
    - output_rows
    - frame_size
    argTypes:
    - MappingMatrix*
    - opus_res*
    - int
    - int
    - opus_int16*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 192
    functionDepth: 2
    functionLinenumber: 192
    functionLinenumberEnd: 221
    functionName: mapping_matrix_multiply_channel_out_short
    functionSourceFile: /src/opus/src/mapping_matrix.c
    functionUses: 2
    functionsReached:
    - RES2INT16
    - celt_assert
    - MATRIX_INDEX
    - mapping_matrix_get_data
    linkageType: ''
    returnType: void
    signature: "void mapping_matrix_multiply_channel_out_short(\n    const MappingMatrix
      *matrix,\n    const opus_res *input,\n    int input_row,\n    int input_rows,\n
      \   opus_int16 *output,\n    int output_rows,\n    int frame_size)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/src/mapping_matrix.c:236,1
    - Dst: mapping_matrix_get_data
      Src: /src/opus/src/mapping_matrix.c:238,1
    - Dst: MATRIX_INDEX
      Src: /src/opus/src/mapping_matrix.c:246,1
    - Dst: MATRIX_INDEX
      Src: /src/opus/src/mapping_matrix.c:247,1
    - Dst: INT24TORES
      Src: /src/opus/src/mapping_matrix.c:250,1
    - Dst: INT24TORES
      Src: /src/opus/src/mapping_matrix.c:252,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 7
    argNames:
    - matrix
    - input
    - input_rows
    - output
    - output_row
    - output_rows
    - frame_size
    argTypes:
    - MappingMatrix*
    - opus_int32*
    - int
    - opus_res*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 223
    functionDepth: 2
    functionLinenumber: 223
    functionLinenumberEnd: 255
    functionName: mapping_matrix_multiply_channel_in_int24
    functionSourceFile: /src/opus/src/mapping_matrix.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - MATRIX_INDEX
    - mapping_matrix_get_data
    - INT24TORES
    linkageType: ''
    returnType: void
    signature: "void mapping_matrix_multiply_channel_in_int24(\n    const MappingMatrix
      *matrix,\n    const opus_int32 *input,\n    int input_rows,\n    opus_res *output,\n
      \   int output_row,\n    int output_rows,\n    int frame_size)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/src/mapping_matrix.c:271,1
    - Dst: mapping_matrix_get_data
      Src: /src/opus/src/mapping_matrix.c:273,1
    - Dst: RES2INT24
      Src: /src/opus/src/mapping_matrix.c:277,1
    - Dst: MATRIX_INDEX
      Src: /src/opus/src/mapping_matrix.c:281,1
    - Dst: MATRIX_INDEX
      Src: /src/opus/src/mapping_matrix.c:283,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 7
    argNames:
    - matrix
    - input
    - input_row
    - input_rows
    - output
    - output_rows
    - frame_size
    argTypes:
    - MappingMatrix*
    - opus_res*
    - int
    - int
    - opus_int32*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 257
    functionDepth: 2
    functionLinenumber: 257
    functionLinenumberEnd: 286
    functionName: mapping_matrix_multiply_channel_out_int24
    functionSourceFile: /src/opus/src/mapping_matrix.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - MATRIX_INDEX
    - mapping_matrix_get_data
    - RES2INT24
    linkageType: ''
    returnType: void
    signature: "void mapping_matrix_multiply_channel_out_int24(\n    const MappingMatrix
      *matrix,\n    const opus_res *input,\n    int input_row,\n    int input_rows,\n
      \   opus_int32 *output,\n    int output_rows,\n    int frame_size)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: opus_encoder_init
      Src: /src/opus/src/opus_multistream_encoder.c:76,1
    - Dst: opus_encoder_init
      Src: /src/opus/src/opus_multistream_encoder.c:77,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_encoder.c:78,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_encoder.c:82,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_encoder.c:84,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - st
    argTypes:
    - OpusMSEncoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 70
    functionDepth: 3
    functionLinenumber: 70
    functionLinenumberEnd: 88
    functionName: ms_get_preemph_mem
    functionSourceFile: /src/opus/src/opus_multistream_encoder.c
    functionUses: 0
    functionsReached:
    - opus_encoder_init
    - align
    linkageType: ''
    returnType: opus_val32
    signature: opus_val32 *ms_get_preemph_mem(OpusMSEncoder *st)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: opus_encoder_init
      Src: /src/opus/src/opus_multistream_encoder.c:96,1
    - Dst: opus_encoder_init
      Src: /src/opus/src/opus_multistream_encoder.c:97,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_encoder.c:98,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_encoder.c:102,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_encoder.c:104,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - st
    argTypes:
    - OpusMSEncoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 90
    functionDepth: 3
    functionLinenumber: 90
    functionLinenumberEnd: 108
    functionName: ms_get_window_mem
    functionSourceFile: /src/opus/src/opus_multistream_encoder.c
    functionUses: 0
    functionsReached:
    - opus_encoder_init
    - align
    linkageType: ''
    returnType: opus_val32
    signature: opus_val32 *ms_get_window_mem(OpusMSEncoder *st)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: isqrt32
      Src: /src/opus/src/opus_multistream_encoder.c:119,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 3
    argNames:
    - nb_channels
    - nb_streams
    - nb_coupled_streams
    argTypes:
    - int
    - int*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 131
    functionName: validate_ambisonics
    functionSourceFile: /src/opus/src/opus_multistream_encoder.c
    functionUses: 0
    functionsReached:
    - isqrt32
    linkageType: ''
    returnType: int
    signature: int validate_ambisonics(int nb_channels, int *nb_streams, int *nb_coupled_streams)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: get_left_channel
      Src: /src/opus/src/opus_multistream_encoder.c:140,1
    - Dst: get_right_channel
      Src: /src/opus/src/opus_multistream_encoder.c:142,1
    - Dst: get_mono_channel
      Src: /src/opus/src/opus_multistream_encoder.c:145,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 1
    argNames:
    - layout
    argTypes:
    - ChannelLayout*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 133
    functionDepth: 1
    functionLinenumber: 133
    functionLinenumberEnd: 150
    functionName: validate_encoder_layout
    functionSourceFile: /src/opus/src/opus_multistream_encoder.c
    functionUses: 0
    functionsReached:
    - get_left_channel
    - get_mono_channel
    - get_right_channel
    linkageType: ''
    returnType: int
    signature: int validate_encoder_layout(const ChannelLayout *layout)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 34
    argCount: 2
    argNames:
    - channels
    - pos
    argTypes:
    - int
    - int[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 189
    functionName: channel_pos
    functionSourceFile: /src/opus/src/opus_multistream_encoder.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void channel_pos(int channels, int pos[8])
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: GCONST
      Src: /src/opus/src/opus_multistream_encoder.c:199,1
    - Dst: GCONST
      Src: /src/opus/src/opus_multistream_encoder.c:199,1
    - Dst: GCONST
      Src: /src/opus/src/opus_multistream_encoder.c:199,1
    - Dst: GCONST
      Src: /src/opus/src/opus_multistream_encoder.c:199,1
    - Dst: GCONST
      Src: /src/opus/src/opus_multistream_encoder.c:200,1
    - Dst: GCONST
      Src: /src/opus/src/opus_multistream_encoder.c:200,1
    - Dst: GCONST
      Src: /src/opus/src/opus_multistream_encoder.c:200,1
    - Dst: GCONST
      Src: /src/opus/src/opus_multistream_encoder.c:200,1
    - Dst: GCONST
      Src: /src/opus/src/opus_multistream_encoder.c:201,1
    - Dst: SUB32
      Src: /src/opus/src/opus_multistream_encoder.c:207,1
    - Dst: SUB32
      Src: /src/opus/src/opus_multistream_encoder.c:210,1
    - Dst: GCONST
      Src: /src/opus/src/opus_multistream_encoder.c:212,1
    - Dst: SHR32
      Src: /src/opus/src/opus_multistream_encoder.c:215,1
    - Dst: VSHR32
      Src: /src/opus/src/opus_multistream_encoder.c:216,1
    - Dst: SHL32
      Src: /src/opus/src/opus_multistream_encoder.c:216,1
    - Dst: floor
      Src: /src/opus/src/opus_multistream_encoder.c:218,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/src/opus_multistream_encoder.c:221,1
    - Dst: SUB32
      Src: /src/opus/src/opus_multistream_encoder.c:221,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - celt_glog
    - celt_glog
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 222
    functionName: logSum
    functionSourceFile: /src/opus/src/opus_multistream_encoder.c
    functionUses: 0
    functionsReached:
    - GCONST
    - MULT16_32_Q15
    - floor
    - SHR32
    - SHL32
    - SUB32
    - VSHR32
    linkageType: ''
    returnType: opus_val16
    signature: opus_val16 logSum(celt_glog a, celt_glog b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: log2
      Src: /src/opus/src/opus_multistream_encoder.c:226,1
    - Dst: pow
      Src: /src/opus/src/opus_multistream_encoder.c:226,1
    - Dst: pow
      Src: /src/opus/src/opus_multistream_encoder.c:226,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_val16
    - opus_val16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 227
    functionName: logSum
    functionSourceFile: /src/opus/src/opus_multistream_encoder.c
    functionUses: 0
    functionsReached:
    - log2
    - pow
    linkageType: ''
    returnType: opus_val16
    signature: opus_val16 logSum(opus_val16 a, opus_val16 b)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/src/opus_multistream_encoder.c:244,1
    - Dst: VARDECL
      Src: /src/opus/src/opus_multistream_encoder.c:245,1
    - Dst: VARDECL
      Src: /src/opus/src/opus_multistream_encoder.c:246,1
    - Dst: resampling_factor
      Src: /src/opus/src/opus_multistream_encoder.c:249,1
    - Dst: ALLOC
      Src: /src/opus/src/opus_multistream_encoder.c:259,1
    - Dst: ALLOC
      Src: /src/opus/src/opus_multistream_encoder.c:260,1
    - Dst: ALLOC
      Src: /src/opus/src/opus_multistream_encoder.c:261,1
    - Dst: channel_pos
      Src: /src/opus/src/opus_multistream_encoder.c:263,1
    - Dst: GCONST
      Src: /src/opus/src/opus_multistream_encoder.c:267,1
    - Dst: celt_assert
      Src: /src/opus/src/opus_multistream_encoder.c:273,1
    - Dst: OPUS_COPY
      Src: /src/opus/src/opus_multistream_encoder.c:274,1
    - Dst: celt_preemphasis
      Src: /src/opus/src/opus_multistream_encoder.c:276,1
    - Dst: celt_inner_prod
      Src: /src/opus/src/opus_multistream_encoder.c:280,1
    - Dst: celt_isnan
      Src: /src/opus/src/opus_multistream_encoder.c:283,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/src/opus_multistream_encoder.c:285,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/src/opus_multistream_encoder.c:290,1
    - Dst: clt_mdct_forward
      Src: /src/opus/src/opus_multistream_encoder.c:294,1
    - Dst: compute_band_energies
      Src: /src/opus/src/opus_multistream_encoder.c:305,1
    - Dst: MAX32
      Src: /src/opus/src/opus_multistream_encoder.c:308,1
    - Dst: amp2Log2
      Src: /src/opus/src/opus_multistream_encoder.c:310,1
    - Dst: MAXG
      Src: /src/opus/src/opus_multistream_encoder.c:313,1
    - Dst: GCONST
      Src: /src/opus/src/opus_multistream_encoder.c:313,1
    - Dst: MAXG
      Src: /src/opus/src/opus_multistream_encoder.c:315,1
    - Dst: GCONST
      Src: /src/opus/src/opus_multistream_encoder.c:315,1
    - Dst: logSum
      Src: /src/opus/src/opus_multistream_encoder.c:319,1
    - Dst: logSum
      Src: /src/opus/src/opus_multistream_encoder.c:323,1
    - Dst: logSum
      Src: /src/opus/src/opus_multistream_encoder.c:328,1
    - Dst: GCONST
      Src: /src/opus/src/opus_multistream_encoder.c:328,1
    - Dst: logSum
      Src: /src/opus/src/opus_multistream_encoder.c:329,1
    - Dst: GCONST
      Src: /src/opus/src/opus_multistream_encoder.c:329,1
    - Dst: printf
      Src: /src/opus/src/opus_multistream_encoder.c:334,1
    - Dst: printf
      Src: /src/opus/src/opus_multistream_encoder.c:338,1
    - Dst: OPUS_COPY
      Src: /src/opus/src/opus_multistream_encoder.c:340,1
    - Dst: MIN32
      Src: /src/opus/src/opus_multistream_encoder.c:343,1
    - Dst: HALF16
      Src: /src/opus/src/opus_multistream_encoder.c:344,1
    - Dst: celt_log2
      Src: /src/opus/src/opus_multistream_encoder.c:344,1
    - Dst: QCONST32
      Src: /src/opus/src/opus_multistream_encoder.c:344,1
    - Dst: printf
      Src: /src/opus/src/opus_multistream_encoder.c:352,1
    - Dst: printf
      Src: /src/opus/src/opus_multistream_encoder.c:369,1
    - Dst: printf
      Src: /src/opus/src/opus_multistream_encoder.c:370,1
    - Dst: printf
      Src: /src/opus/src/opus_multistream_encoder.c:376,1
    - Dst: QCONST32
      Src: /src/opus/src/opus_multistream_encoder.c:376,1
    - Dst: printf
      Src: /src/opus/src/opus_multistream_encoder.c:377,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 96
    argCount: 11
    argNames:
    - celt_mode
    - pcm
    - bandLogE
    - mem
    - preemph_mem
    - len
    - overlap
    - channels
    - rate
    - copy_channel_in
    - arch
    argTypes:
    - CELTMode*
    - void*
    - celt_glog*
    - opus_val32*
    - opus_val32*
    - int
    - int
    - int
    - int
    - opus_copy_channel_in_func
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 381
      start: 230
    functionDepth: 1
    functionLinenumber: 230
    functionLinenumberEnd: 381
    functionName: surround_analysis
    functionSourceFile: /src/opus/src/opus_multistream_encoder.c
    functionUses: 0
    functionsReached:
    - OPUS_CLEAR
    - celt_isnan
    - OPUS_COPY
    - compute_band_energies
    - resampling_factor
    - QCONST32
    - amp2Log2
    - channel_pos
    - VARDECL
    - ALLOC
    - printf
    - celt_assert
    - celt_log2
    - MAX32
    - logSum
    - celt_inner_prod
    - MIN32
    - MAXG
    - GCONST
    - celt_preemphasis
    - HALF16
    - clt_mdct_forward
    linkageType: ''
    returnType: void
    signature: "void surround_analysis(const CELTMode *celt_mode, const void *pcm,
      celt_glog *bandLogE, opus_val32 *mem, opus_val32 *preemph_mem,\n      int len,
      int overlap, int channels, int rate, opus_copy_channel_in_func copy_channel_in,
      int arch\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: opus_encoder_get_size
      Src: /src/opus/src/opus_multistream_encoder.c:389,1
    - Dst: opus_encoder_get_size
      Src: /src/opus/src/opus_multistream_encoder.c:390,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_encoder.c:391,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_encoder.c:392,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_encoder.c:393,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - nb_streams
    - nb_coupled_streams
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 394
      start: 383
    functionDepth: 2
    functionLinenumber: 383
    functionLinenumberEnd: 394
    functionName: opus_multistream_encoder_get_size
    functionSourceFile: /src/opus/src/opus_multistream_encoder.c
    functionUses: 1
    functionsReached:
    - opus_encoder_get_size
    - align
    linkageType: ''
    returnType: opus_int32
    signature: opus_int32 opus_multistream_encoder_get_size(int nb_streams, int nb_coupled_streams)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: validate_ambisonics
      Src: /src/opus/src/opus_multistream_encoder.c:424,1
    - Dst: opus_multistream_encoder_get_size
      Src: /src/opus/src/opus_multistream_encoder.c:428,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 30
    argCount: 2
    argNames:
    - channels
    - mapping_family
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 434
      start: 396
    functionDepth: 3
    functionLinenumber: 396
    functionLinenumberEnd: 434
    functionName: opus_multistream_surround_encoder_get_size
    functionSourceFile: /src/opus/src/opus_multistream_encoder.c
    functionUses: 0
    functionsReached:
    - validate_ambisonics
    - opus_multistream_encoder_get_size
    linkageType: ''
    returnType: opus_int32
    signature: opus_int32 opus_multistream_surround_encoder_get_size(int channels,
      int mapping_family)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: opus_encoder_init
      Src: /src/opus/src/opus_multistream_encoder.c:457,1
    - Dst: opus_encoder_init
      Src: /src/opus/src/opus_multistream_encoder.c:460,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_encoder.c:470,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_encoder.c:470,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_encoder.c:471,1
    - Dst: opus_select_arch
      Src: /src/opus/src/opus_multistream_encoder.c:474,1
    - Dst: validate_layout
      Src: /src/opus/src/opus_multistream_encoder.c:486,1
    - Dst: validate_encoder_layout
      Src: /src/opus/src/opus_multistream_encoder.c:488,1
    - Dst: validate_ambisonics
      Src: /src/opus/src/opus_multistream_encoder.c:491,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_encoder.c:493,1
    - Dst: opus_encoder_init
      Src: /src/opus/src/opus_multistream_encoder.c:496,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_multistream_encoder.c:499,1
    - Dst: OPUS_SET_LFE
      Src: /src/opus/src/opus_multistream_encoder.c:499,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_encoder.c:500,1
    - Dst: opus_encoder_init
      Src: /src/opus/src/opus_multistream_encoder.c:504,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_multistream_encoder.c:507,1
    - Dst: OPUS_SET_LFE
      Src: /src/opus/src/opus_multistream_encoder.c:507,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_encoder.c:508,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/src/opus_multistream_encoder.c:512,1
    - Dst: ms_get_preemph_mem
      Src: /src/opus/src/opus_multistream_encoder.c:512,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/src/opus_multistream_encoder.c:513,1
    - Dst: ms_get_window_mem
      Src: /src/opus/src/opus_multistream_encoder.c:513,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 56
    argCount: 8
    argNames:
    - st
    - Fs
    - channels
    - streams
    - coupled_streams
    - mapping
    - application
    - mapping_type
    argTypes:
    - OpusMSEncoder*
    - opus_int32
    - int
    - int
    - int
    - unsigned char*
    - int
    - MappingType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 517
      start: 436
    functionDepth: 4
    functionLinenumber: 436
    functionLinenumberEnd: 517
    functionName: opus_multistream_encoder_init_impl
    functionSourceFile: /src/opus/src/opus_multistream_encoder.c
    functionUses: 0
    functionsReached:
    - OPUS_CLEAR
    - opus_select_arch
    - ms_get_preemph_mem
    - ms_get_window_mem
    - OPUS_SET_LFE
    - opus_encoder_init
    - align
    - opus_encoder_ctl
    - validate_layout
    - validate_ambisonics
    - validate_encoder_layout
    linkageType: ''
    returnType: int
    signature: "int opus_multistream_encoder_init_impl(\n      OpusMSEncoder *st,\n
      \     opus_int32 Fs,\n      int channels,\n      int streams,\n      int coupled_streams,\n
      \     const unsigned char *mapping,\n      int application,\n      MappingType
      mapping_type\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_multistream_encoder_init_impl
      Src: /src/opus/src/opus_multistream_encoder.c:529,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 7
    argNames:
    - st
    - Fs
    - channels
    - streams
    - coupled_streams
    - mapping
    - application
    argTypes:
    - OpusMSEncoder*
    - opus_int32
    - int
    - int
    - int
    - unsigned char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 532
      start: 519
    functionDepth: 5
    functionLinenumber: 519
    functionLinenumberEnd: 532
    functionName: opus_multistream_encoder_init
    functionSourceFile: /src/opus/src/opus_multistream_encoder.c
    functionUses: 1
    functionsReached:
    - opus_multistream_encoder_init_impl
    linkageType: ''
    returnType: int
    signature: "int opus_multistream_encoder_init(\n      OpusMSEncoder *st,\n      opus_int32
      Fs,\n      int channels,\n      int streams,\n      int coupled_streams,\n      const
      unsigned char *mapping,\n      int application\n)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: validate_ambisonics
      Src: /src/opus/src/opus_multistream_encoder.c:585,1
    - Dst: opus_multistream_encoder_init_impl
      Src: /src/opus/src/opus_multistream_encoder.c:606,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 53
    argCount: 8
    argNames:
    - st
    - Fs
    - channels
    - mapping_family
    - streams
    - coupled_streams
    - mapping
    - application
    argTypes:
    - OpusMSEncoder*
    - opus_int32
    - int
    - int
    - int*
    - int*
    - unsigned char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 609
      start: 534
    functionDepth: 5
    functionLinenumber: 534
    functionLinenumberEnd: 609
    functionName: opus_multistream_surround_encoder_init
    functionSourceFile: /src/opus/src/opus_multistream_encoder.c
    functionUses: 0
    functionsReached:
    - validate_ambisonics
    - opus_multistream_encoder_init_impl
    linkageType: ''
    returnType: int
    signature: "int opus_multistream_surround_encoder_init(\n      OpusMSEncoder *st,\n
      \     opus_int32 Fs,\n      int channels,\n      int mapping_family,\n      int
      *streams,\n      int *coupled_streams,\n      unsigned char *mapping,\n      int
      application\n)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: opus_multistream_encoder_init
      Src: /src/opus/src/opus_multistream_encoder.c:632,1
    - Dst: opus_alloc
      Src: /src/opus/src/opus_multistream_encoder.c:639,1
    - Dst: opus_multistream_encoder_init
      Src: /src/opus/src/opus_multistream_encoder.c:646,1
    - Dst: opus_free
      Src: /src/opus/src/opus_multistream_encoder.c:649,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 26
    argCount: 7
    argNames:
    - Fs
    - channels
    - streams
    - coupled_streams
    - mapping
    - application
    - error
    argTypes:
    - opus_int32
    - int
    - int
    - int
    - unsigned char*
    - int
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 655
      start: 611
    functionDepth: 6
    functionLinenumber: 611
    functionLinenumberEnd: 655
    functionName: opus_multistream_encoder_create
    functionSourceFile: /src/opus/src/opus_multistream_encoder.c
    functionUses: 4
    functionsReached:
    - opus_multistream_encoder_init
    - opus_free
    - opus_alloc
    linkageType: ''
    returnType: OpusMSEncoder
    signature: "OpusMSEncoder *opus_multistream_encoder_create(\n      opus_int32
      Fs,\n      int channels,\n      int streams,\n      int coupled_streams,\n      const
      unsigned char *mapping,\n      int application,\n      int *error\n)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: opus_multistream_surround_encoder_init
      Src: /src/opus/src/opus_multistream_encoder.c:677,1
    - Dst: opus_alloc
      Src: /src/opus/src/opus_multistream_encoder.c:684,1
    - Dst: opus_multistream_surround_encoder_init
      Src: /src/opus/src/opus_multistream_encoder.c:691,1
    - Dst: opus_free
      Src: /src/opus/src/opus_multistream_encoder.c:694,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 8
    argNames:
    - Fs
    - channels
    - mapping_family
    - streams
    - coupled_streams
    - mapping
    - application
    - error
    argTypes:
    - opus_int32
    - int
    - int
    - int*
    - int*
    - unsigned char*
    - int
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 700
      start: 657
    functionDepth: 6
    functionLinenumber: 657
    functionLinenumberEnd: 700
    functionName: opus_multistream_surround_encoder_create
    functionSourceFile: /src/opus/src/opus_multistream_encoder.c
    functionUses: 5
    functionsReached:
    - opus_multistream_surround_encoder_init
    - opus_free
    - opus_alloc
    linkageType: ''
    returnType: OpusMSEncoder
    signature: "OpusMSEncoder *opus_multistream_surround_encoder_create(\n      opus_int32
      Fs,\n      int channels,\n      int mapping_family,\n      int *streams,\n      int
      *coupled_streams,\n      unsigned char *mapping,\n      int application,\n      int
      *error\n)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: IMAX
      Src: /src/opus/src/opus_multistream_encoder.c:729,1
    - Dst: IMIN
      Src: /src/opus/src/opus_multistream_encoder.c:743,1
    - Dst: IMAX
      Src: /src/opus/src/opus_multistream_encoder.c:743,1
    - Dst: IMAX
      Src: /src/opus/src/opus_multistream_encoder.c:748,1
    - Dst: IMIN
      Src: /src/opus/src/opus_multistream_encoder.c:748,1
    - Dst: IMAX
      Src: /src/opus/src/opus_multistream_encoder.c:763,1
    - Dst: IMAX
      Src: /src/opus/src/opus_multistream_encoder.c:765,1
    - Dst: IMAX
      Src: /src/opus/src/opus_multistream_encoder.c:767,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 28
    argCount: 4
    argNames:
    - st
    - rate
    - frame_size
    - Fs
    argTypes:
    - OpusMSEncoder*
    - opus_int32*
    - int
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 769
      start: 702
    functionDepth: 1
    functionLinenumber: 702
    functionLinenumberEnd: 769
    functionName: surround_rate_allocation
    functionSourceFile: /src/opus/src/opus_multistream_encoder.c
    functionUses: 0
    functionsReached:
    - IMIN
    - IMAX
    linkageType: ''
    returnType: void
    signature: "void surround_rate_allocation(\n      OpusMSEncoder *st,\n      opus_int32
      *rate,\n      int frame_size,\n      opus_int32 Fs\n      )"
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 4
    argNames:
    - st
    - rate
    - frame_size
    - Fs
    argTypes:
    - OpusMSEncoder*
    - opus_int32*
    - int
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 803
      start: 771
    functionDepth: 0
    functionLinenumber: 771
    functionLinenumberEnd: 803
    functionName: ambisonics_rate_allocation
    functionSourceFile: /src/opus/src/opus_multistream_encoder.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ambisonics_rate_allocation(\n      OpusMSEncoder *st,\n      opus_int32
      *rate,\n      int frame_size,\n      opus_int32 Fs\n      )"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: align
      Src: /src/opus/src/opus_multistream_encoder.c:816,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_multistream_encoder.c:817,1
    - Dst: OPUS_GET_SAMPLE_RATE
      Src: /src/opus/src/opus_multistream_encoder.c:817,1
    - Dst: ambisonics_rate_allocation
      Src: /src/opus/src/opus_multistream_encoder.c:820,1
    - Dst: surround_rate_allocation
      Src: /src/opus/src/opus_multistream_encoder.c:823,1
    - Dst: IMAX
      Src: /src/opus/src/opus_multistream_encoder.c:828,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 3
    argNames:
    - st
    - rate
    - frame_size
    argTypes:
    - OpusMSEncoder*
    - opus_int32*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 832
      start: 805
    functionDepth: 3
    functionLinenumber: 805
    functionLinenumberEnd: 832
    functionName: rate_allocation
    functionSourceFile: /src/opus/src/opus_multistream_encoder.c
    functionUses: 1
    functionsReached:
    - ambisonics_rate_allocation
    - OPUS_GET_SAMPLE_RATE
    - surround_rate_allocation
    - align
    - opus_encoder_ctl
    - IMAX
    linkageType: ''
    returnType: opus_int32
    signature: "opus_int32 rate_allocation(\n      OpusMSEncoder *st,\n      opus_int32
      *rate,\n      int frame_size\n      )"
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/src/opus_multistream_encoder.c:861,1
    - Dst: VARDECL
      Src: /src/opus/src/opus_multistream_encoder.c:862,1
    - Dst: ms_get_preemph_mem
      Src: /src/opus/src/opus_multistream_encoder.c:878,1
    - Dst: ms_get_window_mem
      Src: /src/opus/src/opus_multistream_encoder.c:879,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_encoder.c:882,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_multistream_encoder.c:883,1
    - Dst: OPUS_GET_SAMPLE_RATE
      Src: /src/opus/src/opus_multistream_encoder.c:883,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_multistream_encoder.c:884,1
    - Dst: OPUS_GET_VBR
      Src: /src/opus/src/opus_multistream_encoder.c:884,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_multistream_encoder.c:886,1
    - Dst: CELT_GET_MODE
      Src: /src/opus/src/opus_multistream_encoder.c:886,1
    - Dst: frame_size_select
      Src: /src/opus/src/opus_multistream_encoder.c:888,1
    - Dst: ALLOC
      Src: /src/opus/src/opus_multistream_encoder.c:905,1
    - Dst: opus_encoder_init
      Src: /src/opus/src/opus_multistream_encoder.c:906,1
    - Dst: opus_encoder_init
      Src: /src/opus/src/opus_multistream_encoder.c:907,1
    - Dst: ALLOC
      Src: /src/opus/src/opus_multistream_encoder.c:909,1
    - Dst: surround_analysis
      Src: /src/opus/src/opus_multistream_encoder.c:912,1
    - Dst: rate_allocation
      Src: /src/opus/src/opus_multistream_encoder.c:916,1
    - Dst: IMIN
      Src: /src/opus/src/opus_multistream_encoder.c:922,1
    - Dst: bitrate_to_bits
      Src: /src/opus/src/opus_multistream_encoder.c:922,1
    - Dst: IMIN
      Src: /src/opus/src/opus_multistream_encoder.c:925,1
    - Dst: IMAX
      Src: /src/opus/src/opus_multistream_encoder.c:925,1
    - Dst: bitrate_to_bits
      Src: /src/opus/src/opus_multistream_encoder.c:926,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_encoder.c:929,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_encoder.c:935,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_encoder.c:937,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_multistream_encoder.c:938,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/src/opus_multistream_encoder.c:938,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_multistream_encoder.c:946,1
    - Dst: OPUS_SET_BANDWIDTH
      Src: /src/opus/src/opus_multistream_encoder.c:946,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_multistream_encoder.c:948,1
    - Dst: OPUS_SET_BANDWIDTH
      Src: /src/opus/src/opus_multistream_encoder.c:948,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_multistream_encoder.c:950,1
    - Dst: OPUS_SET_BANDWIDTH
      Src: /src/opus/src/opus_multistream_encoder.c:950,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_multistream_encoder.c:952,1
    - Dst: OPUS_SET_BANDWIDTH
      Src: /src/opus/src/opus_multistream_encoder.c:952,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_multistream_encoder.c:956,1
    - Dst: OPUS_SET_FORCE_MODE
      Src: /src/opus/src/opus_multistream_encoder.c:956,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_multistream_encoder.c:957,1
    - Dst: OPUS_SET_FORCE_CHANNELS
      Src: /src/opus/src/opus_multistream_encoder.c:957,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_multistream_encoder.c:961,1
    - Dst: OPUS_SET_FORCE_MODE
      Src: /src/opus/src/opus_multistream_encoder.c:961,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_encoder.c:965,1
    - Dst: opus_repacketizer_init
      Src: /src/opus/src/opus_multistream_encoder.c:976,1
    - Dst: get_left_channel
      Src: /src/opus/src/opus_multistream_encoder.c:982,1
    - Dst: get_right_channel
      Src: /src/opus/src/opus_multistream_encoder.c:983,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_encoder.c:988,1
    - Dst: get_mono_channel
      Src: /src/opus/src/opus_multistream_encoder.c:1001,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_encoder.c:1004,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_multistream_encoder.c:1014,1
    - Dst: OPUS_SET_ENERGY_MASK
      Src: /src/opus/src/opus_multistream_encoder.c:1014,1
    - Dst: IMAX
      Src: /src/opus/src/opus_multistream_encoder.c:1018,1
    - Dst: IMIN
      Src: /src/opus/src/opus_multistream_encoder.c:1022,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_multistream_encoder.c:1026,1
    - Dst: OPUS_SET_BITRATE
      Src: /src/opus/src/opus_multistream_encoder.c:1026,1
    - Dst: bits_to_bitrate
      Src: /src/opus/src/opus_multistream_encoder.c:1026,1
    - Dst: opus_encode_native
      Src: /src/opus/src/opus_multistream_encoder.c:1027,1
    - Dst: opus_repacketizer_cat
      Src: /src/opus/src/opus_multistream_encoder.c:1037,1
    - Dst: opus_repacketizer_out_range_impl
      Src: /src/opus/src/opus_multistream_encoder.c:1045,1
    - Dst: opus_repacketizer_get_nb_frames
      Src: /src/opus/src/opus_multistream_encoder.c:1045,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 124
    argCount: 10
    argNames:
    - st
    - copy_channel_in
    - pcm
    - analysis_frame_size
    - data
    - max_data_bytes
    - lsb_depth
    - downmix
    - float_api
    - user_data
    argTypes:
    - OpusMSEncoder*
    - opus_copy_channel_in_func
    - void*
    - int
    - unsigned char*
    - opus_int32
    - int
    - downmix_func
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1053
      start: 841
    functionDepth: 4
    functionLinenumber: 841
    functionLinenumberEnd: 1053
    functionName: opus_multistream_encode_native
    functionSourceFile: /src/opus/src/opus_multistream_encoder.c
    functionUses: 3
    functionsReached:
    - ms_get_preemph_mem
    - bitrate_to_bits
    - opus_repacketizer_get_nb_frames
    - bits_to_bitrate
    - rate_allocation
    - OPUS_SET_BANDWIDTH
    - ms_get_window_mem
    - OPUS_SET_BITRATE
    - surround_analysis
    - VARDECL
    - opus_encoder_ctl
    - frame_size_select
    - ALLOC
    - get_right_channel
    - opus_encode_native
    - opus_repacketizer_init
    - CELT_GET_MODE
    - get_left_channel
    - IMAX
    - get_mono_channel
    - IMIN
    - OPUS_SET_ENERGY_MASK
    - opus_repacketizer_out_range_impl
    - OPUS_GET_SAMPLE_RATE
    - opus_encoder_init
    - align
    - OPUS_GET_VBR
    - OPUS_SET_FORCE_MODE
    - opus_repacketizer_cat
    - OPUS_SET_FORCE_CHANNELS
    linkageType: ''
    returnType: int
    signature: "int opus_multistream_encode_native\n(\n    OpusMSEncoder *st,\n    opus_copy_channel_in_func
      copy_channel_in,\n    const void *pcm,\n    int analysis_frame_size,\n    unsigned
      char *data,\n    opus_int32 max_data_bytes,\n    int lsb_depth,\n    downmix_func
      downmix,\n    int float_api,\n    void *user_data\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FLOAT2RES
      Src: /src/opus/src/opus_multistream_encoder.c:1071,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - dst
    - dst_stride
    - src
    - src_stride
    - src_channel
    - frame_size
    - user_data
    argTypes:
    - opus_res*
    - int
    - void*
    - int
    - int
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1072
      start: 1056
    functionDepth: 1
    functionLinenumber: 1056
    functionLinenumberEnd: 1072
    functionName: opus_copy_channel_in_float
    functionSourceFile: /src/opus/src/opus_multistream_encoder.c
    functionUses: 0
    functionsReached:
    - FLOAT2RES
    linkageType: ''
    returnType: void
    signature: "void opus_copy_channel_in_float(\n  opus_res *dst,\n  int dst_stride,\n
      \ const void *src,\n  int src_stride,\n  int src_channel,\n  int frame_size,\n
      \ void *user_data\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: INT16TORES
      Src: /src/opus/src/opus_multistream_encoder.c:1090,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - dst
    - dst_stride
    - src
    - src_stride
    - src_channel
    - frame_size
    - user_data
    argTypes:
    - opus_res*
    - int
    - void*
    - int
    - int
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1091
      start: 1075
    functionDepth: 1
    functionLinenumber: 1075
    functionLinenumberEnd: 1091
    functionName: opus_copy_channel_in_short
    functionSourceFile: /src/opus/src/opus_multistream_encoder.c
    functionUses: 0
    functionsReached:
    - INT16TORES
    linkageType: ''
    returnType: void
    signature: "void opus_copy_channel_in_short(\n  opus_res *dst,\n  int dst_stride,\n
      \ const void *src,\n  int src_stride,\n  int src_channel,\n  int frame_size,\n
      \ void *user_data\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: INT24TORES
      Src: /src/opus/src/opus_multistream_encoder.c:1108,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 7
    argNames:
    - dst
    - dst_stride
    - src
    - src_stride
    - src_channel
    - frame_size
    - user_data
    argTypes:
    - opus_res*
    - int
    - void*
    - int
    - int
    - int
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1109
      start: 1093
    functionDepth: 1
    functionLinenumber: 1093
    functionLinenumberEnd: 1109
    functionName: opus_copy_channel_in_int24
    functionSourceFile: /src/opus/src/opus_multistream_encoder.c
    functionUses: 0
    functionsReached:
    - INT24TORES
    linkageType: ''
    returnType: void
    signature: "void opus_copy_channel_in_int24(\n  opus_res *dst,\n  int dst_stride,\n
      \ const void *src,\n  int src_stride,\n  int src_channel,\n  int frame_size,\n
      \ void *user_data\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_multistream_encode_native
      Src: /src/opus/src/opus_multistream_encoder.c:1119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - st
    - pcm
    - frame_size
    - data
    - max_data_bytes
    argTypes:
    - OpusMSEncoder*
    - opus_int16*
    - int
    - unsigned char*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1121
      start: 1111
    functionDepth: 5
    functionLinenumber: 1111
    functionLinenumberEnd: 1121
    functionName: opus_multistream_encode
    functionSourceFile: /src/opus/src/opus_multistream_encoder.c
    functionUses: 7
    functionsReached:
    - opus_multistream_encode_native
    linkageType: ''
    returnType: int
    signature: "int opus_multistream_encode(\n    OpusMSEncoder *st,\n    const opus_int16
      *pcm,\n    int frame_size,\n    unsigned char *data,\n    opus_int32 max_data_bytes\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_multistream_encode_native
      Src: /src/opus/src/opus_multistream_encoder.c:1131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - st
    - pcm
    - frame_size
    - data
    - max_data_bytes
    argTypes:
    - OpusMSEncoder*
    - opus_int32*
    - int
    - unsigned char*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1133
      start: 1123
    functionDepth: 5
    functionLinenumber: 1123
    functionLinenumberEnd: 1133
    functionName: opus_multistream_encode24
    functionSourceFile: /src/opus/src/opus_multistream_encoder.c
    functionUses: 0
    functionsReached:
    - opus_multistream_encode_native
    linkageType: ''
    returnType: int
    signature: "int opus_multistream_encode24(\n    OpusMSEncoder *st,\n    const
      opus_int32 *pcm,\n    int frame_size,\n    unsigned char *data,\n    opus_int32
      max_data_bytes\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_multistream_encode_native
      Src: /src/opus/src/opus_multistream_encoder.c:1144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - st
    - pcm
    - frame_size
    - data
    - max_data_bytes
    argTypes:
    - OpusMSEncoder*
    - float*
    - int
    - unsigned char*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1146
      start: 1136
    functionDepth: 5
    functionLinenumber: 1136
    functionLinenumberEnd: 1146
    functionName: opus_multistream_encode_float
    functionSourceFile: /src/opus/src/opus_multistream_encoder.c
    functionUses: 0
    functionsReached:
    - opus_multistream_encode_native
    linkageType: ''
    returnType: int
    signature: "int opus_multistream_encode_float(\n    OpusMSEncoder *st,\n    const
      float *pcm,\n    int frame_size,\n    unsigned char *data,\n    opus_int32 max_data_bytes\n)"
  - BBCount: 58
    BranchProfiles: []
    Callsites:
    - Dst: opus_encoder_init
      Src: /src/opus/src/opus_multistream_encoder.c:1156,1
    - Dst: opus_encoder_init
      Src: /src/opus/src/opus_multistream_encoder.c:1157,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_encoder.c:1158,1
    - Dst: va_arg
      Src: /src/opus/src/opus_multistream_encoder.c:1163,1
    - Dst: IMIN
      Src: /src/opus/src/opus_multistream_encoder.c:1168,1
    - Dst: IMAX
      Src: /src/opus/src/opus_multistream_encoder.c:1168,1
    - Dst: va_arg
      Src: /src/opus/src/opus_multistream_encoder.c:1176,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_encoder.c:1188,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_encoder.c:1190,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_multistream_encoder.c:1191,1
    - Dst: va_arg
      Src: /src/opus/src/opus_multistream_encoder.c:1216,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_multistream_encoder.c:1218,1
    - Dst: va_arg
      Src: /src/opus/src/opus_multistream_encoder.c:1224,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_encoder.c:1236,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_encoder.c:1238,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_multistream_encoder.c:1239,1
    - Dst: va_arg
      Src: /src/opus/src/opus_multistream_encoder.c:1264,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_encoder.c:1271,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_encoder.c:1273,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_multistream_encoder.c:1274,1
    - Dst: va_arg
      Src: /src/opus/src/opus_multistream_encoder.c:1285,1
    - Dst: va_arg
      Src: /src/opus/src/opus_multistream_encoder.c:1288,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_encoder.c:1296,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_encoder.c:1298,1
    - Dst: va_arg
      Src: /src/opus/src/opus_multistream_encoder.c:1305,1
    - Dst: va_arg
      Src: /src/opus/src/opus_multistream_encoder.c:1311,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/src/opus_multistream_encoder.c:1324,1
    - Dst: ms_get_preemph_mem
      Src: /src/opus/src/opus_multistream_encoder.c:1324,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/src/opus_multistream_encoder.c:1325,1
    - Dst: ms_get_window_mem
      Src: /src/opus/src/opus_multistream_encoder.c:1325,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_encoder.c:1332,1
    - Dst: align
      Src: /src/opus/src/opus_multistream_encoder.c:1334,1
    - Dst: opus_encoder_ctl
      Src: /src/opus/src/opus_multistream_encoder.c:1335,1
    CyclomaticComplexity: 43
    EdgeCount: 43
    ICount: 151
    argCount: 3
    argNames:
    - st
    - request
    - ap
    argTypes:
    - OpusMSEncoder*
    - int
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1348
      start: 1149
    functionDepth: 4
    functionLinenumber: 1149
    functionLinenumberEnd: 1348
    functionName: opus_multistream_encoder_ctl_va_list
    functionSourceFile: /src/opus/src/opus_multistream_encoder.c
    functionUses: 1
    functionsReached:
    - OPUS_CLEAR
    - IMIN
    - ms_get_preemph_mem
    - va_arg
    - ms_get_window_mem
    - opus_encoder_init
    - align
    - opus_encoder_ctl
    - IMAX
    linkageType: ''
    returnType: int
    signature: "int opus_multistream_encoder_ctl_va_list(OpusMSEncoder *st, int request,\n
      \                                        va_list ap)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/opus/src/opus_multistream_encoder.c:1354,1
    - Dst: opus_multistream_encoder_ctl_va_list
      Src: /src/opus/src/opus_multistream_encoder.c:1355,1
    - Dst: va_end
      Src: /src/opus/src/opus_multistream_encoder.c:1356,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - st
    - request
    argTypes:
    - OpusMSEncoder*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1358
      start: 1350
    functionDepth: 5
    functionLinenumber: 1350
    functionLinenumberEnd: 1358
    functionName: opus_multistream_encoder_ctl
    functionSourceFile: /src/opus/src/opus_multistream_encoder.c
    functionUses: 7
    functionsReached:
    - opus_multistream_encoder_ctl_va_list
    - va_end
    - va_start
    linkageType: ''
    returnType: int
    signature: int opus_multistream_encoder_ctl(OpusMSEncoder *st, int request, ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_free
      Src: /src/opus/src/opus_multistream_encoder.c:1362,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - st
    argTypes:
    - OpusMSEncoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1363
      start: 1360
    functionDepth: 1
    functionLinenumber: 1360
    functionLinenumberEnd: 1363
    functionName: opus_multistream_encoder_destroy
    functionSourceFile: /src/opus/src/opus_multistream_encoder.c
    functionUses: 7
    functionsReached:
    - opus_free
    linkageType: ''
    returnType: void
    signature: void opus_multistream_encoder_destroy(OpusMSEncoder *st)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 73
    functionName: OPUS_PROJECTION_GET_DEMIXING_MATRIX_GAIN
    functionSourceFile: /src/opus/include/opus_projection.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_PROJECTION_GET_DEMIXING_MATRIX_GAIN(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 81
    functionName: OPUS_PROJECTION_GET_DEMIXING_MATRIX_SIZE
    functionSourceFile: /src/opus/include/opus_projection.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_PROJECTION_GET_DEMIXING_MATRIX_SIZE(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - y
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 91
    functionName: OPUS_PROJECTION_GET_DEMIXING_MATRIX
    functionSourceFile: /src/opus/include/opus_projection.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_PROJECTION_GET_DEMIXING_MATRIX(x,y)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ptr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 48
    functionName: opus_check_encstate_ptr
    functionSourceFile: /src/opus/include/opus_multistream.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: opus_check_encstate_ptr(ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ptr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 49
    functionName: opus_check_decstate_ptr
    functionSourceFile: /src/opus/include/opus_multistream.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: opus_check_decstate_ptr(ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - y
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 87
    functionName: OPUS_MULTISTREAM_GET_ENCODER_STATE
    functionSourceFile: /src/opus/include/opus_multistream.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_MULTISTREAM_GET_ENCODER_STATE(x,y)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - y
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 100
    functionName: OPUS_MULTISTREAM_GET_DECODER_STATE
    functionSourceFile: /src/opus/include/opus_multistream.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_MULTISTREAM_GET_DECODER_STATE(x,y)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _maj
    - ','
    - _min
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 84
    functionName: OPUS_GNUC_PREREQ
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_GNUC_PREREQ(_maj,_min)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _maj
    - ','
    - _min
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 86
    functionName: OPUS_GNUC_PREREQ
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_GNUC_PREREQ(_maj,_min)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 123
    functionName: OPUS_ARG_NONNULL
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_ARG_NONNULL(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 188
    functionName: opus_check_int
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: opus_check_int(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ptr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 193
    functionName: opus_check_int_ptr
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: opus_check_int_ptr(ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ptr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 194
    functionName: opus_check_uint_ptr
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: opus_check_uint_ptr(ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ptr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 195
    functionName: opus_check_uint8_ptr
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: opus_check_uint8_ptr(ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ptr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 196
    functionName: opus_check_val16_ptr
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: opus_check_val16_ptr(ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ptr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 197
    functionName: opus_check_void_ptr
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: opus_check_void_ptr(ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ptr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 199
    functionName: opus_check_int_ptr
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: opus_check_int_ptr(ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ptr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 200
    functionName: opus_check_uint_ptr
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: opus_check_uint_ptr(ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ptr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 201
    functionName: opus_check_uint8_ptr
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: opus_check_uint8_ptr(ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ptr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 202
    functionName: opus_check_val16_ptr
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: opus_check_val16_ptr(ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 203
    functionName: opus_check_void_ptr
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: opus_check_void_ptr(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 280
    functionDepth: 0
    functionLinenumber: 280
    functionLinenumberEnd: 281
    functionName: OPUS_SET_COMPLEXITY
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 21
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_SET_COMPLEXITY(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 286
    functionDepth: 0
    functionLinenumber: 286
    functionLinenumberEnd: 287
    functionName: OPUS_GET_COMPLEXITY
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_GET_COMPLEXITY(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 300
      start: 299
    functionDepth: 0
    functionLinenumber: 299
    functionLinenumberEnd: 300
    functionName: OPUS_SET_BITRATE
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 19
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_SET_BITRATE(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 308
      start: 307
    functionDepth: 0
    functionLinenumber: 307
    functionLinenumberEnd: 308
    functionName: OPUS_GET_BITRATE
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_GET_BITRATE(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 322
    functionDepth: 0
    functionLinenumber: 322
    functionLinenumberEnd: 323
    functionName: OPUS_SET_VBR
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 15
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_SET_VBR(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 333
    functionDepth: 0
    functionLinenumber: 333
    functionLinenumberEnd: 334
    functionName: OPUS_GET_VBR
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_GET_VBR(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 351
    functionDepth: 0
    functionLinenumber: 351
    functionLinenumberEnd: 352
    functionName: OPUS_SET_VBR_CONSTRAINT
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 12
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_SET_VBR_CONSTRAINT(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 361
    functionDepth: 0
    functionLinenumber: 361
    functionLinenumberEnd: 362
    functionName: OPUS_GET_VBR_CONSTRAINT
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_GET_VBR_CONSTRAINT(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 376
    functionDepth: 0
    functionLinenumber: 376
    functionLinenumberEnd: 377
    functionName: OPUS_SET_FORCE_CHANNELS
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 11
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_SET_FORCE_CHANNELS(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 386
    functionDepth: 0
    functionLinenumber: 386
    functionLinenumberEnd: 387
    functionName: OPUS_GET_FORCE_CHANNELS
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_GET_FORCE_CHANNELS(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 405
      start: 404
    functionDepth: 0
    functionLinenumber: 404
    functionLinenumberEnd: 405
    functionName: OPUS_SET_MAX_BANDWIDTH
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_SET_MAX_BANDWIDTH(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 417
    functionDepth: 0
    functionLinenumber: 417
    functionLinenumberEnd: 418
    functionName: OPUS_GET_MAX_BANDWIDTH
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_GET_MAX_BANDWIDTH(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 437
      start: 436
    functionDepth: 0
    functionLinenumber: 436
    functionLinenumberEnd: 437
    functionName: OPUS_SET_BANDWIDTH
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_SET_BANDWIDTH(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 448
    functionDepth: 0
    functionLinenumber: 448
    functionLinenumberEnd: 449
    functionName: OPUS_SET_SIGNAL
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 11
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_SET_SIGNAL(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 459
      start: 458
    functionDepth: 0
    functionLinenumber: 458
    functionLinenumberEnd: 459
    functionName: OPUS_GET_SIGNAL
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_GET_SIGNAL(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 476
      start: 475
    functionDepth: 0
    functionLinenumber: 475
    functionLinenumberEnd: 476
    functionName: OPUS_SET_APPLICATION
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_SET_APPLICATION(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 490
      start: 489
    functionDepth: 0
    functionLinenumber: 489
    functionLinenumberEnd: 490
    functionName: OPUS_GET_APPLICATION
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_GET_APPLICATION(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 505
      start: 504
    functionDepth: 0
    functionLinenumber: 504
    functionLinenumberEnd: 505
    functionName: OPUS_GET_LOOKAHEAD
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_GET_LOOKAHEAD(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 517
      start: 516
    functionDepth: 0
    functionLinenumber: 516
    functionLinenumberEnd: 517
    functionName: OPUS_SET_INBAND_FEC
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 12
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_SET_INBAND_FEC(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 527
      start: 526
    functionDepth: 0
    functionLinenumber: 526
    functionLinenumberEnd: 527
    functionName: OPUS_GET_INBAND_FEC
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_GET_INBAND_FEC(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 536
      start: 535
    functionDepth: 0
    functionLinenumber: 535
    functionLinenumberEnd: 536
    functionName: OPUS_SET_PACKET_LOSS_PERC
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 16
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_SET_PACKET_LOSS_PERC(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 542
      start: 541
    functionDepth: 0
    functionLinenumber: 541
    functionLinenumberEnd: 542
    functionName: OPUS_GET_PACKET_LOSS_PERC
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_GET_PACKET_LOSS_PERC(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 553
      start: 552
    functionDepth: 0
    functionLinenumber: 552
    functionLinenumberEnd: 553
    functionName: OPUS_SET_DTX
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 11
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_SET_DTX(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 562
      start: 561
    functionDepth: 0
    functionLinenumber: 561
    functionLinenumberEnd: 562
    functionName: OPUS_GET_DTX
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_GET_DTX(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 581
      start: 580
    functionDepth: 0
    functionLinenumber: 580
    functionLinenumberEnd: 581
    functionName: OPUS_SET_LSB_DEPTH
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_SET_LSB_DEPTH(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 587
      start: 586
    functionDepth: 0
    functionLinenumber: 586
    functionLinenumberEnd: 587
    functionName: OPUS_GET_LSB_DEPTH
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_GET_LSB_DEPTH(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 611
    functionDepth: 0
    functionLinenumber: 611
    functionLinenumberEnd: 612
    functionName: OPUS_SET_EXPERT_FRAME_DURATION
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_SET_EXPERT_FRAME_DURATION(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 629
      start: 628
    functionDepth: 0
    functionLinenumber: 628
    functionLinenumberEnd: 629
    functionName: OPUS_GET_EXPERT_FRAME_DURATION
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_GET_EXPERT_FRAME_DURATION(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 640
      start: 639
    functionDepth: 0
    functionLinenumber: 639
    functionLinenumberEnd: 640
    functionName: OPUS_SET_PREDICTION_DISABLED
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 11
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_SET_PREDICTION_DISABLED(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 649
      start: 648
    functionDepth: 0
    functionLinenumber: 648
    functionLinenumberEnd: 649
    functionName: OPUS_GET_PREDICTION_DISABLED
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_GET_PREDICTION_DISABLED(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 653
      start: 652
    functionDepth: 0
    functionLinenumber: 652
    functionLinenumberEnd: 653
    functionName: OPUS_SET_DRED_DURATION
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_SET_DRED_DURATION(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 656
      start: 655
    functionDepth: 0
    functionLinenumber: 655
    functionLinenumberEnd: 656
    functionName: OPUS_GET_DRED_DURATION
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_GET_DRED_DURATION(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - data
    - ','
    - len
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 660
      start: 659
    functionDepth: 0
    functionLinenumber: 659
    functionLinenumberEnd: 660
    functionName: OPUS_SET_DNN_BLOB
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_SET_DNN_BLOB(data, len)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 665
      start: 664
    functionDepth: 0
    functionLinenumber: 664
    functionLinenumberEnd: 665
    functionName: OPUS_SET_QEXT
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_SET_QEXT(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 668
      start: 667
    functionDepth: 0
    functionLinenumber: 667
    functionLinenumberEnd: 668
    functionName: OPUS_GET_QEXT
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_GET_QEXT(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 721
      start: 720
    functionDepth: 0
    functionLinenumber: 720
    functionLinenumberEnd: 721
    functionName: OPUS_GET_FINAL_RANGE
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_GET_FINAL_RANGE(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 735
      start: 734
    functionDepth: 0
    functionLinenumber: 734
    functionLinenumberEnd: 735
    functionName: OPUS_GET_BANDWIDTH
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_GET_BANDWIDTH(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 743
      start: 742
    functionDepth: 0
    functionLinenumber: 742
    functionLinenumberEnd: 743
    functionName: OPUS_GET_SAMPLE_RATE
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_GET_SAMPLE_RATE(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 758
      start: 757
    functionDepth: 0
    functionLinenumber: 757
    functionLinenumberEnd: 758
    functionName: OPUS_SET_PHASE_INVERSION_DISABLED
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_SET_PHASE_INVERSION_DISABLED(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 767
      start: 766
    functionDepth: 0
    functionLinenumber: 766
    functionLinenumberEnd: 767
    functionName: OPUS_GET_PHASE_INVERSION_DISABLED
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_GET_PHASE_INVERSION_DISABLED(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 777
      start: 776
    functionDepth: 0
    functionLinenumber: 776
    functionLinenumberEnd: 777
    functionName: OPUS_GET_IN_DTX
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_GET_IN_DTX(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 796
      start: 795
    functionDepth: 0
    functionLinenumber: 795
    functionLinenumberEnd: 796
    functionName: OPUS_SET_GAIN
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_SET_GAIN(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 801
      start: 800
    functionDepth: 0
    functionLinenumber: 800
    functionLinenumberEnd: 801
    functionName: OPUS_GET_GAIN
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_GET_GAIN(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 806
      start: 805
    functionDepth: 0
    functionLinenumber: 805
    functionLinenumberEnd: 806
    functionName: OPUS_GET_LAST_PACKET_DURATION
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_GET_LAST_PACKET_DURATION(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 818
      start: 817
    functionDepth: 0
    functionLinenumber: 817
    functionLinenumberEnd: 818
    functionName: OPUS_GET_PITCH
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_GET_PITCH(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 825
      start: 824
    functionDepth: 0
    functionLinenumber: 824
    functionLinenumberEnd: 825
    functionName: OPUS_SET_OSCE_BWE
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_SET_OSCE_BWE(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 830
      start: 829
    functionDepth: 0
    functionLinenumber: 829
    functionLinenumberEnd: 830
    functionName: OPUS_GET_OSCE_BWE
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_GET_OSCE_BWE(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 835
      start: 834
    functionDepth: 0
    functionLinenumber: 834
    functionLinenumberEnd: 835
    functionName: OPUS_SET_IGNORE_EXTENSIONS
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_SET_IGNORE_EXTENSIONS(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 838
      start: 837
    functionDepth: 0
    functionLinenumber: 837
    functionLinenumberEnd: 838
    functionName: OPUS_GET_IGNORE_EXTENSIONS
    functionSourceFile: /src/opus/include/opus_defines.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_GET_IGNORE_EXTENSIONS(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_memset
      Src: /src/opus/silk/VAD.c:53,1
    - Dst: silk_max_32
      Src: /src/opus/silk/VAD.c:58,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/VAD.c:58,1
    - Dst: silk_MUL
      Src: /src/opus/silk/VAD.c:63,1
    - Dst: silk_DIV32
      Src: /src/opus/silk/VAD.c:64,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - psSilk_VAD
    argTypes:
    - silk_VAD_state*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 74
    functionName: silk_VAD_Init
    functionSourceFile: /src/opus/silk/VAD.c
    functionUses: 0
    functionsReached:
    - silk_memset
    - silk_DIV32
    - silk_max_32
    - silk_DIV32_16
    - silk_MUL
    linkageType: ''
    returnType: opus_int
    signature: "opus_int silk_VAD_Init(                                         /*
      O    Return value, 0 if success                  */\n    silk_VAD_state              *psSilk_VAD
      \                    /* I/O  Pointer to Silk VAD state                   */\n)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/silk/VAD.c:93,1
    - Dst: silk_assert
      Src: /src/opus/silk/VAD.c:103,1
    - Dst: celt_assert
      Src: /src/opus/silk/VAD.c:104,1
    - Dst: celt_assert
      Src: /src/opus/silk/VAD.c:105,1
    - Dst: celt_assert
      Src: /src/opus/silk/VAD.c:106,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/VAD.c:106,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/VAD.c:111,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/VAD.c:112,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/VAD.c:113,1
    - Dst: ALLOC
      Src: /src/opus/silk/VAD.c:127,1
    - Dst: silk_ana_filt_bank_1
      Src: /src/opus/silk/VAD.c:130,1
    - Dst: silk_ana_filt_bank_1
      Src: /src/opus/silk/VAD.c:134,1
    - Dst: silk_ana_filt_bank_1
      Src: /src/opus/silk/VAD.c:138,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/VAD.c:144,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/VAD.c:147,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/VAD.c:158,1
    - Dst: silk_min_int
      Src: /src/opus/silk/VAD.c:158,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/VAD.c:161,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/VAD.c:172,1
    - Dst: silk_SMLABB
      Src: /src/opus/silk/VAD.c:174,1
    - Dst: silk_assert
      Src: /src/opus/silk/VAD.c:177,1
    - Dst: silk_ADD_POS_SAT32
      Src: /src/opus/silk/VAD.c:182,1
    - Dst: silk_ADD_POS_SAT32
      Src: /src/opus/silk/VAD.c:185,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/VAD.c:185,1
    - Dst: silk_VAD_GetNoiseLevels
      Src: /src/opus/silk/VAD.c:196,1
    - Dst: silk_DIV32
      Src: /src/opus/silk/VAD.c:208,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/VAD.c:208,1
    - Dst: silk_DIV32
      Src: /src/opus/silk/VAD.c:210,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/VAD.c:210,1
    - Dst: silk_lin2log
      Src: /src/opus/silk/VAD.c:214,1
    - Dst: silk_SMLABB
      Src: /src/opus/silk/VAD.c:217,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/VAD.c:222,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/VAD.c:222,1
    - Dst: silk_SQRT_APPROX
      Src: /src/opus/silk/VAD.c:222,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/VAD.c:224,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/VAD.c:231,1
    - Dst: silk_SQRT_APPROX
      Src: /src/opus/silk/VAD.c:234,1
    - Dst: silk_sigm_Q15
      Src: /src/opus/silk/VAD.c:239,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/VAD.c:239,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/VAD.c:244,1
    - Dst: silk_sigm_Q15
      Src: /src/opus/silk/VAD.c:244,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/VAD.c:252,1
    - Dst: silk_RSHIFT32
      Src: /src/opus/silk/VAD.c:256,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/VAD.c:260,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/VAD.c:262,1
    - Dst: silk_SQRT_APPROX
      Src: /src/opus/silk/VAD.c:265,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/VAD.c:266,1
    - Dst: silk_min_int
      Src: /src/opus/silk/VAD.c:270,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/VAD.c:270,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/VAD.c:276,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/VAD.c:276,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/VAD.c:284,1
    - Dst: silk_lin2log
      Src: /src/opus/silk/VAD.c:288,1
    - Dst: silk_sigm_Q15
      Src: /src/opus/silk/VAD.c:290,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/VAD.c:290,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 99
    argCount: 2
    argNames:
    - psEncC
    - pIn
    argTypes:
    - silk_encoder_state*
    - opus_int16[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 295
    functionName: silk_VAD_GetSA_Q8_c
    functionSourceFile: /src/opus/silk/VAD.c
    functionUses: 0
    functionsReached:
    - silk_VAD_GetNoiseLevels
    - silk_DIV32
    - silk_SMULWB
    - silk_SMLAWB
    - silk_sigm_Q15
    - silk_SQRT_APPROX
    - silk_assert
    - silk_RSHIFT
    - silk_ana_filt_bank_1
    - VARDECL
    - ALLOC
    - silk_lin2log
    - celt_assert
    - silk_LSHIFT
    - silk_DIV32_16
    - silk_RSHIFT32
    - silk_min_int
    - silk_SMLABB
    - silk_ADD_POS_SAT32
    - silk_LSHIFT32
    linkageType: ''
    returnType: opus_int
    signature: "opus_int silk_VAD_GetSA_Q8_c(                                   /*
      O    Return value, 0 if success                  */\n    silk_encoder_state
      \         *psEncC,                        /* I/O  Encoder state                               */\n
      \   const opus_int16            pIn[]                           /* I    PCM
      input                                   */\n)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/VAD.c:314,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/VAD.c:314,1
    - Dst: silk_assert
      Src: /src/opus/silk/VAD.c:324,1
    - Dst: silk_ADD_POS_SAT32
      Src: /src/opus/silk/VAD.c:327,1
    - Dst: silk_assert
      Src: /src/opus/silk/VAD.c:328,1
    - Dst: silk_DIV32
      Src: /src/opus/silk/VAD.c:331,1
    - Dst: silk_assert
      Src: /src/opus/silk/VAD.c:332,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/VAD.c:335,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/VAD.c:340,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/VAD.c:340,1
    - Dst: silk_max_int
      Src: /src/opus/silk/VAD.c:344,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/VAD.c:347,1
    - Dst: silk_assert
      Src: /src/opus/silk/VAD.c:348,1
    - Dst: silk_DIV32
      Src: /src/opus/silk/VAD.c:351,1
    - Dst: silk_assert
      Src: /src/opus/silk/VAD.c:352,1
    - Dst: silk_min
      Src: /src/opus/silk/VAD.c:355,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 30
    argCount: 2
    argNames:
    - pX
    - psSilk_VAD
    argTypes:
    - opus_int32[]
    - silk_VAD_state*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 303
    functionDepth: 1
    functionLinenumber: 303
    functionLinenumberEnd: 360
    functionName: silk_VAD_GetNoiseLevels
    functionSourceFile: /src/opus/silk/VAD.c
    functionUses: 1
    functionsReached:
    - silk_min
    - silk_LSHIFT
    - silk_DIV32
    - silk_RSHIFT
    - silk_assert
    - silk_SMULWB
    - silk_SMULWW
    - silk_max_int
    - silk_SMLAWB
    - silk_ADD_POS_SAT32
    - silk_DIV32_16
    linkageType: ''
    returnType: void
    signature: "void silk_VAD_GetNoiseLevels(\n    const opus_int32            pX[
      VAD_N_BANDS ],  /* I    subband energies                            */\n    silk_VAD_state
      \             *psSilk_VAD         /* I/O  Pointer to Silk VAD state                   */\n)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/silk/encode_indices.c:59,1
    - Dst: celt_assert
      Src: /src/opus/silk/encode_indices.c:60,1
    - Dst: ec_enc_icdf
      Src: /src/opus/silk/encode_indices.c:62,1
    - Dst: ec_enc_icdf
      Src: /src/opus/silk/encode_indices.c:64,1
    - Dst: silk_assert
      Src: /src/opus/silk/encode_indices.c:73,1
    - Dst: ec_enc_icdf
      Src: /src/opus/silk/encode_indices.c:74,1
    - Dst: silk_assert
      Src: /src/opus/silk/encode_indices.c:77,1
    - Dst: ec_enc_icdf
      Src: /src/opus/silk/encode_indices.c:78,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/encode_indices.c:78,1
    - Dst: ec_enc_icdf
      Src: /src/opus/silk/encode_indices.c:79,1
    - Dst: silk_assert
      Src: /src/opus/silk/encode_indices.c:84,1
    - Dst: ec_enc_icdf
      Src: /src/opus/silk/encode_indices.c:85,1
    - Dst: ec_enc_icdf
      Src: /src/opus/silk/encode_indices.c:91,1
    - Dst: silk_NLSF_unpack
      Src: /src/opus/silk/encode_indices.c:92,1
    - Dst: celt_assert
      Src: /src/opus/silk/encode_indices.c:93,1
    - Dst: ec_enc_icdf
      Src: /src/opus/silk/encode_indices.c:96,1
    - Dst: ec_enc_icdf
      Src: /src/opus/silk/encode_indices.c:97,1
    - Dst: ec_enc_icdf
      Src: /src/opus/silk/encode_indices.c:99,1
    - Dst: ec_enc_icdf
      Src: /src/opus/silk/encode_indices.c:100,1
    - Dst: ec_enc_icdf
      Src: /src/opus/silk/encode_indices.c:102,1
    - Dst: silk_assert
      Src: /src/opus/silk/encode_indices.c:108,1
    - Dst: ec_enc_icdf
      Src: /src/opus/silk/encode_indices.c:109,1
    - Dst: silk_assert
      Src: /src/opus/silk/encode_indices.c:128,1
    - Dst: ec_enc_icdf
      Src: /src/opus/silk/encode_indices.c:129,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/encode_indices.c:134,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/encode_indices.c:134,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/encode_indices.c:135,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/encode_indices.c:135,1
    - Dst: silk_assert
      Src: /src/opus/silk/encode_indices.c:136,1
    - Dst: silk_assert
      Src: /src/opus/silk/encode_indices.c:137,1
    - Dst: ec_enc_icdf
      Src: /src/opus/silk/encode_indices.c:138,1
    - Dst: ec_enc_icdf
      Src: /src/opus/silk/encode_indices.c:139,1
    - Dst: silk_assert
      Src: /src/opus/silk/encode_indices.c:144,1
    - Dst: silk_assert
      Src: /src/opus/silk/encode_indices.c:145,1
    - Dst: ec_enc_icdf
      Src: /src/opus/silk/encode_indices.c:149,1
    - Dst: silk_assert
      Src: /src/opus/silk/encode_indices.c:155,1
    - Dst: ec_enc_icdf
      Src: /src/opus/silk/encode_indices.c:156,1
    - Dst: silk_assert
      Src: /src/opus/silk/encode_indices.c:160,1
    - Dst: ec_enc_icdf
      Src: /src/opus/silk/encode_indices.c:161,1
    - Dst: silk_assert
      Src: /src/opus/silk/encode_indices.c:168,1
    - Dst: ec_enc_icdf
      Src: /src/opus/silk/encode_indices.c:169,1
    - Dst: silk_assert
      Src: /src/opus/silk/encode_indices.c:171,1
    - Dst: silk_assert
      Src: /src/opus/silk/encode_indices.c:179,1
    - Dst: ec_enc_icdf
      Src: /src/opus/silk/encode_indices.c:180,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 85
    argCount: 5
    argNames:
    - psEncC
    - psRangeEnc
    - FrameIndex
    - encode_LBRR
    - condCoding
    argTypes:
    - silk_encoder_state*
    - ec_enc*
    - opus_int
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 181
    functionName: silk_encode_indices
    functionSourceFile: /src/opus/silk/encode_indices.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - silk_NLSF_unpack
    - silk_assert
    - silk_RSHIFT
    - silk_SMULBB
    - ec_enc_icdf
    - silk_DIV32_16
    linkageType: ''
    returnType: void
    signature: "void silk_encode_indices(\n    silk_encoder_state          *psEncC,
      \                       /* I/O  Encoder state                               */\n
      \   ec_enc                      *psRangeEnc,                    /* I/O  Compressor
      data structure                   */\n    opus_int                    FrameIndex,
      \                    /* I    Frame number                                */\n
      \   opus_int                    encode_LBRR,                    /* I    Flag
      indicating LBRR data is being encoded  */\n    opus_int                    condCoding
      \                     /* I    The type of conditional coding to use       */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/silk/NLSF_VQ_weights_laroia.c:51,1
    - Dst: celt_assert
      Src: /src/opus/silk/NLSF_VQ_weights_laroia.c:52,1
    - Dst: silk_max_int
      Src: /src/opus/silk/NLSF_VQ_weights_laroia.c:55,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/NLSF_VQ_weights_laroia.c:56,1
    - Dst: silk_max_int
      Src: /src/opus/silk/NLSF_VQ_weights_laroia.c:57,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/NLSF_VQ_weights_laroia.c:58,1
    - Dst: silk_min_int
      Src: /src/opus/silk/NLSF_VQ_weights_laroia.c:59,1
    - Dst: silk_assert
      Src: /src/opus/silk/NLSF_VQ_weights_laroia.c:60,1
    - Dst: silk_max_int
      Src: /src/opus/silk/NLSF_VQ_weights_laroia.c:64,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/NLSF_VQ_weights_laroia.c:65,1
    - Dst: silk_min_int
      Src: /src/opus/silk/NLSF_VQ_weights_laroia.c:66,1
    - Dst: silk_assert
      Src: /src/opus/silk/NLSF_VQ_weights_laroia.c:67,1
    - Dst: silk_max_int
      Src: /src/opus/silk/NLSF_VQ_weights_laroia.c:69,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/NLSF_VQ_weights_laroia.c:70,1
    - Dst: silk_min_int
      Src: /src/opus/silk/NLSF_VQ_weights_laroia.c:71,1
    - Dst: silk_assert
      Src: /src/opus/silk/NLSF_VQ_weights_laroia.c:72,1
    - Dst: silk_max_int
      Src: /src/opus/silk/NLSF_VQ_weights_laroia.c:76,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/NLSF_VQ_weights_laroia.c:77,1
    - Dst: silk_min_int
      Src: /src/opus/silk/NLSF_VQ_weights_laroia.c:78,1
    - Dst: silk_assert
      Src: /src/opus/silk/NLSF_VQ_weights_laroia.c:79,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 23
    argCount: 3
    argNames:
    - pNLSFW_Q_OUT
    - pNLSF_Q15
    - D
    argTypes:
    - opus_int16*
    - opus_int16*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 80
    functionName: silk_NLSF_VQ_weights_laroia
    functionSourceFile: /src/opus/silk/NLSF_VQ_weights_laroia.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - silk_assert
    - silk_max_int
    - silk_min_int
    - silk_DIV32_16
    linkageType: ''
    returnType: void
    signature: "void silk_NLSF_VQ_weights_laroia(\n    opus_int16                  *pNLSFW_Q_OUT,
      \     /* O     Pointer to input vector weights [D]                        */\n
      \   const opus_int16            *pNLSF_Q15,         /* I     Pointer to input
      vector         [D]                        */\n    const opus_int              D
      \                  /* I     Input vector dimension (even)                              */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ec_dec_icdf
      Src: /src/opus/silk/stereo_decode_pred.c:44,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/stereo_decode_pred.c:45,1
    - Dst: ec_dec_icdf
      Src: /src/opus/silk/stereo_decode_pred.c:48,1
    - Dst: ec_dec_icdf
      Src: /src/opus/silk/stereo_decode_pred.c:49,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/stereo_decode_pred.c:56,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/stereo_decode_pred.c:57,1
    - Dst: silk_SMLABB
      Src: /src/opus/silk/stereo_decode_pred.c:58,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 2
    argNames:
    - psRangeDec
    - pred_Q13
    argTypes:
    - ec_dec*
    - opus_int32[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 63
    functionName: silk_stereo_decode_pred
    functionSourceFile: /src/opus/silk/stereo_decode_pred.c
    functionUses: 0
    functionsReached:
    - silk_SMULWB
    - silk_SMLABB
    - SILK_FIX_CONST
    - silk_DIV32_16
    - ec_dec_icdf
    linkageType: ''
    returnType: void
    signature: "void silk_stereo_decode_pred(\n    ec_dec                      *psRangeDec,
      \                   /* I/O  Compressor data structure                   */\n
      \   opus_int32                  pred_Q13[]                      /* O    Predictors
      \                                 */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ec_dec_icdf
      Src: /src/opus/silk/stereo_decode_pred.c:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - psRangeDec
    - decode_only_mid
    argTypes:
    - ec_dec*
    - opus_int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 73
    functionName: silk_stereo_decode_mid_only
    functionSourceFile: /src/opus/silk/stereo_decode_pred.c
    functionUses: 0
    functionsReached:
    - ec_dec_icdf
    linkageType: ''
    returnType: void
    signature: "void silk_stereo_decode_mid_only(\n    ec_dec                      *psRangeDec,
      \                   /* I/O  Compressor data structure                   */\n
      \   opus_int                    *decode_only_mid                /* O    Flag
      that only mid channel has been coded   */\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: silk_CLZ32
      Src: /src/opus/silk/sum_sqr_shift.c:48,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/sum_sqr_shift.c:52,1
    - Dst: silk_SMLABB_ovflw
      Src: /src/opus/silk/sum_sqr_shift.c:53,1
    - Dst: silk_ADD_RSHIFT_uint
      Src: /src/opus/silk/sum_sqr_shift.c:54,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/sum_sqr_shift.c:58,1
    - Dst: silk_ADD_RSHIFT_uint
      Src: /src/opus/silk/sum_sqr_shift.c:59,1
    - Dst: silk_assert
      Src: /src/opus/silk/sum_sqr_shift.c:61,1
    - Dst: silk_max_32
      Src: /src/opus/silk/sum_sqr_shift.c:64,1
    - Dst: silk_CLZ32
      Src: /src/opus/silk/sum_sqr_shift.c:64,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/sum_sqr_shift.c:67,1
    - Dst: silk_SMLABB_ovflw
      Src: /src/opus/silk/sum_sqr_shift.c:68,1
    - Dst: silk_ADD_RSHIFT_uint
      Src: /src/opus/silk/sum_sqr_shift.c:69,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/sum_sqr_shift.c:73,1
    - Dst: silk_ADD_RSHIFT_uint
      Src: /src/opus/silk/sum_sqr_shift.c:74,1
    - Dst: silk_assert
      Src: /src/opus/silk/sum_sqr_shift.c:77,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 4
    argNames:
    - energy
    - shift
    - x
    - len
    argTypes:
    - opus_int32*
    - opus_int*
    - opus_int16*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 82
    functionName: silk_sum_sqr_shift
    functionSourceFile: /src/opus/silk/sum_sqr_shift.c
    functionUses: 0
    functionsReached:
    - silk_CLZ32
    - silk_assert
    - silk_SMULBB
    - silk_max_32
    - silk_ADD_RSHIFT_uint
    - silk_SMLABB_ovflw
    linkageType: ''
    returnType: void
    signature: "void silk_sum_sqr_shift(\n    opus_int32                  *energy,
      \           /* O   Energy of x, after shifting to the right                     */\n
      \   opus_int                    *shift,             /* O   Number of bits right
      shift applied to energy                 */\n    const opus_int16            *x,
      \                /* I   Input vector                                                 */\n
      \   opus_int                    len                 /* I   Length of input vector
      \                                      */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/CNG.c:48,1
    - Dst: silk_RAND
      Src: /src/opus/silk/CNG.c:53,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/CNG.c:54,1
    - Dst: silk_assert
      Src: /src/opus/silk/CNG.c:55,1
    - Dst: silk_assert
      Src: /src/opus/silk/CNG.c:56,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 4
    argNames:
    - exc_Q14
    - exc_buf_Q14
    - length
    - rand_seed
    argTypes:
    - opus_int32[]
    - opus_int32[]
    - opus_int
    - opus_int32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 60
    functionName: silk_CNG_exc
    functionSourceFile: /src/opus/silk/CNG.c
    functionUses: 0
    functionsReached:
    - silk_RAND
    - silk_RSHIFT
    - silk_assert
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_CNG_exc(\n    opus_int32                       exc_Q14[],
      \         /* O    CNG excitation signal Q10                   */\n    opus_int32
      \                      exc_buf_Q14[],      /* I    Random samples buffer Q10
      \                  */\n    opus_int                         length,             /*
      I    Length                                      */\n    opus_int32                       *rand_seed
      \         /* I/O  Seed to random index generator              */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/CNG.c:68,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - psDec
    argTypes:
    - silk_decoder_state*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 76
    functionName: silk_CNG_Reset
    functionSourceFile: /src/opus/silk/CNG.c
    functionUses: 0
    functionsReached:
    - silk_DIV32_16
    linkageType: ''
    returnType: void
    signature: "void silk_CNG_Reset(\n    silk_decoder_state          *psDec                          /*
      I/O  Decoder state                               */\n)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: silk_CNG_Reset
      Src: /src/opus/silk/CNG.c:94,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/CNG.c:103,1
    - Dst: silk_memmove
      Src: /src/opus/silk/CNG.c:115,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/CNG.c:116,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/CNG.c:120,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/CNG.c:122,1
    - Dst: VARDECL
      Src: /src/opus/silk/CNG.c:130,1
    - Dst: ALLOC
      Src: /src/opus/silk/CNG.c:131,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/CNG.c:134,1
    - Dst: silk_SMULTT
      Src: /src/opus/silk/CNG.c:136,1
    - Dst: silk_SUB_LSHIFT32
      Src: /src/opus/silk/CNG.c:137,1
    - Dst: silk_SMULTT
      Src: /src/opus/silk/CNG.c:137,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/CNG.c:138,1
    - Dst: silk_SQRT_APPROX
      Src: /src/opus/silk/CNG.c:138,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/CNG.c:140,1
    - Dst: silk_SUB_LSHIFT32
      Src: /src/opus/silk/CNG.c:141,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/CNG.c:141,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/CNG.c:142,1
    - Dst: silk_SQRT_APPROX
      Src: /src/opus/silk/CNG.c:142,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/CNG.c:144,1
    - Dst: silk_CNG_exc
      Src: /src/opus/silk/CNG.c:146,1
    - Dst: silk_NLSF2A
      Src: /src/opus/silk/CNG.c:149,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/CNG.c:152,1
    - Dst: celt_assert
      Src: /src/opus/silk/CNG.c:153,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/CNG.c:156,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/CNG.c:157,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/CNG.c:158,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/CNG.c:159,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/CNG.c:160,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/CNG.c:161,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/CNG.c:162,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/CNG.c:163,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/CNG.c:164,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/CNG.c:165,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/CNG.c:166,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/CNG.c:168,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/CNG.c:169,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/CNG.c:170,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/CNG.c:171,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/CNG.c:172,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/CNG.c:173,1
    - Dst: silk_ADD_SAT32
      Src: /src/opus/silk/CNG.c:177,1
    - Dst: silk_LSHIFT_SAT32
      Src: /src/opus/silk/CNG.c:177,1
    - Dst: silk_ADD_SAT16
      Src: /src/opus/silk/CNG.c:180,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/CNG.c:180,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/CNG.c:180,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/CNG.c:180,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/CNG.c:183,1
    - Dst: silk_memset
      Src: /src/opus/silk/CNG.c:185,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 73
    argCount: 4
    argNames:
    - psDec
    - psDecCtrl
    - frame
    - length
    argTypes:
    - silk_decoder_state*
    - silk_decoder_control*
    - opus_int16[]
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 79
    functionDepth: 2
    functionLinenumber: 79
    functionLinenumberEnd: 188
    functionName: silk_CNG
    functionSourceFile: /src/opus/silk/CNG.c
    functionUses: 0
    functionsReached:
    - silk_CNG_exc
    - silk_SMULWB
    - silk_SUB_LSHIFT32
    - silk_CNG_Reset
    - silk_SMLAWB
    - silk_ADD_SAT32
    - silk_SQRT_APPROX
    - silk_ADD_SAT16
    - silk_SMULTT
    - silk_RSHIFT
    - silk_RSHIFT_ROUND
    - silk_SAT16
    - VARDECL
    - ALLOC
    - celt_assert
    - silk_memset
    - silk_NLSF2A
    - silk_memmove
    - silk_memcpy
    - silk_SMULWW
    - silk_LSHIFT32
    - silk_LSHIFT_SAT32
    linkageType: ''
    returnType: void
    signature: "void silk_CNG(\n    silk_decoder_state          *psDec,                         /*
      I/O  Decoder state                               */\n    silk_decoder_control
      \       *psDecCtrl,                     /* I/O  Decoder control                             */\n
      \   opus_int16                  frame[],                        /* I/O  Signal
      \                                     */\n    opus_int                    length
      \                         /* I    Length of residual                          */\n)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: silk_SMULBB
      Src: /src/opus/silk/control_audio_bandwidth.c:51,1
    - Dst: silk_min
      Src: /src/opus/silk/control_audio_bandwidth.c:54,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/control_audio_bandwidth.c:55,1
    - Dst: silk_min
      Src: /src/opus/silk/control_audio_bandwidth.c:59,1
    - Dst: silk_max
      Src: /src/opus/silk/control_audio_bandwidth.c:60,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/control_audio_bandwidth.c:61,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/control_audio_bandwidth.c:70,1
    - Dst: silk_memset
      Src: /src/opus/silk/control_audio_bandwidth.c:78,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/control_audio_bandwidth.c:99,1
    - Dst: silk_memset
      Src: /src/opus/silk/control_audio_bandwidth.c:110,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 59
    argCount: 2
    argNames:
    - psEncC
    - encControl
    argTypes:
    - silk_encoder_state*
    - silk_EncControlStruct*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 132
    functionName: silk_control_audio_bandwidth
    functionSourceFile: /src/opus/silk/control_audio_bandwidth.c
    functionUses: 0
    functionsReached:
    - silk_min
    - silk_memset
    - silk_SMULBB
    - silk_DIV32_16
    - silk_max
    linkageType: ''
    returnType: opus_int
    signature: "opus_int silk_control_audio_bandwidth(\n    silk_encoder_state          *psEncC,
      \                       /* I/O  Pointer to Silk encoder state               */\n
      \   silk_EncControlStruct       *encControl                     /* I    Control
      structure                           */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - COND
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 58
    functionName: silk_assert
    functionSourceFile: /src/opus/silk/typedef.h
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_assert(COND)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - str
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 64
    functionName: silk_fatal
    functionSourceFile: /src/opus/silk/typedef.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_fatal(str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/typedef.h:69,1
    - Dst: _set_abort_behavior
      Src: /src/opus/silk/typedef.h:71,1
    - Dst: abort
      Src: /src/opus/silk/typedef.h:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - str
    - file
    - line
    argTypes:
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 74
    functionName: _silk_fatal
    functionSourceFile: /src/opus/silk/typedef.h
    functionUses: 0
    functionsReached:
    - _set_abort_behavior
    - abort
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE _silk_fatal(const char *str, const char *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - COND
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 76
    functionName: silk_assert
    functionSourceFile: /src/opus/silk/typedef.h
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_assert(COND)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - COND
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 78
    functionName: silk_assert
    functionSourceFile: /src/opus/silk/typedef.h
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_assert(COND)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_CLZ_FRAC
      Src: /src/opus/silk/lin2log.c:41,1
    - Dst: silk_ADD_LSHIFT32
      Src: /src/opus/silk/lin2log.c:44,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/lin2log.c:44,1
    - Dst: silk_MUL
      Src: /src/opus/silk/lin2log.c:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - inLin
    argTypes:
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 45
    functionName: silk_lin2log
    functionSourceFile: /src/opus/silk/lin2log.c
    functionUses: 4
    functionsReached:
    - silk_CLZ_FRAC
    - silk_SMLAWB
    - silk_ADD_LSHIFT32
    - silk_MUL
    linkageType: ''
    returnType: opus_int32
    signature: "opus_int32 silk_lin2log(\n    const opus_int32            inLin               /*
      I  input in linear scale                                         */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/silk/interpolate.c:45,1
    - Dst: celt_assert
      Src: /src/opus/silk/interpolate.c:46,1
    - Dst: silk_ADD_RSHIFT
      Src: /src/opus/silk/interpolate.c:49,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/interpolate.c:49,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 5
    argNames:
    - xi
    - x0
    - x1
    - ifact_Q2
    - d
    argTypes:
    - opus_int16[]
    - opus_int16[]
    - opus_int16[]
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 51
    functionName: silk_interpolate
    functionSourceFile: /src/opus/silk/interpolate.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - silk_ADD_RSHIFT
    - silk_SMULBB
    linkageType: ''
    returnType: void
    signature: "void silk_interpolate(\n    opus_int16                  xi[ MAX_LPC_ORDER
      ],            /* O    interpolated vector                         */\n    const
      opus_int16            x0[ MAX_LPC_ORDER ],            /* I    first vector                                */\n
      \   const opus_int16            x1[ MAX_LPC_ORDER ],            /* I    second
      vector                               */\n    const opus_int              ifact_Q2,
      \                      /* I    interp. factor, weight on 2nd vector        */\n
      \   const opus_int              d                               /* I    number
      of parameters                        */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/A2NLSF.c:58,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - p
    - dd
    argTypes:
    - opus_int32*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 60
    functionName: silk_A2NLSF_trans_poly
    functionSourceFile: /src/opus/silk/A2NLSF.c
    functionUses: 0
    functionsReached:
    - silk_LSHIFT
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_A2NLSF_trans_poly(\n    opus_int32          *p,                     /*
      I/O    Polynomial                                */\n    const opus_int      dd
      \                     /* I      Polynomial order (= filter order / 2 )    */\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/A2NLSF.c:73,1
    - Dst: opus_likely
      Src: /src/opus/silk/A2NLSF.c:75,1
    - Dst: silk_SMLAWW
      Src: /src/opus/silk/A2NLSF.c:77,1
    - Dst: silk_SMLAWW
      Src: /src/opus/silk/A2NLSF.c:78,1
    - Dst: silk_SMLAWW
      Src: /src/opus/silk/A2NLSF.c:79,1
    - Dst: silk_SMLAWW
      Src: /src/opus/silk/A2NLSF.c:80,1
    - Dst: silk_SMLAWW
      Src: /src/opus/silk/A2NLSF.c:81,1
    - Dst: silk_SMLAWW
      Src: /src/opus/silk/A2NLSF.c:82,1
    - Dst: silk_SMLAWW
      Src: /src/opus/silk/A2NLSF.c:83,1
    - Dst: silk_SMLAWW
      Src: /src/opus/silk/A2NLSF.c:84,1
    - Dst: silk_SMLAWW
      Src: /src/opus/silk/A2NLSF.c:89,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 3
    argNames:
    - p
    - x
    - dd
    argTypes:
    - opus_int32*
    - opus_int32
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 93
    functionName: silk_A2NLSF_eval_poly
    functionSourceFile: /src/opus/silk/A2NLSF.c
    functionUses: 0
    functionsReached:
    - opus_likely
    - silk_LSHIFT
    - silk_SMLAWW
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_A2NLSF_eval_poly( /* return the polynomial evaluation,
      in Q16     */\n    opus_int32          *p,                     /* I    Polynomial,
      Q16                         */\n    const opus_int32    x,                      /*
      I    Evaluation point, Q12                   */\n    const opus_int      dd
      \                     /* I    Order                                   */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/A2NLSF.c:105,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/A2NLSF.c:106,1
    - Dst: silk_A2NLSF_trans_poly
      Src: /src/opus/silk/A2NLSF.c:121,1
    - Dst: silk_A2NLSF_trans_poly
      Src: /src/opus/silk/A2NLSF.c:122,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 4
    argNames:
    - a_Q16
    - P
    - Q
    - dd
    argTypes:
    - opus_int32*
    - opus_int32*
    - opus_int32*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 95
    functionDepth: 2
    functionLinenumber: 95
    functionLinenumberEnd: 123
    functionName: silk_A2NLSF_init
    functionSourceFile: /src/opus/silk/A2NLSF.c
    functionUses: 0
    functionsReached:
    - silk_A2NLSF_trans_poly
    - silk_LSHIFT
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_A2NLSF_init(\n     const opus_int32    *a_Q16,\n
      \    opus_int32          *P,\n     opus_int32          *Q,\n     const opus_int
      \     dd\n)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/A2NLSF.c:146,1
    - Dst: silk_A2NLSF_init
      Src: /src/opus/silk/A2NLSF.c:148,1
    - Dst: silk_A2NLSF_eval_poly
      Src: /src/opus/silk/A2NLSF.c:154,1
    - Dst: silk_A2NLSF_eval_poly
      Src: /src/opus/silk/A2NLSF.c:160,1
    - Dst: silk_A2NLSF_eval_poly
      Src: /src/opus/silk/A2NLSF.c:171,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/A2NLSF.c:186,1
    - Dst: silk_A2NLSF_eval_poly
      Src: /src/opus/silk/A2NLSF.c:187,1
    - Dst: silk_ADD_RSHIFT
      Src: /src/opus/silk/A2NLSF.c:198,1
    - Dst: silk_abs
      Src: /src/opus/silk/A2NLSF.c:203,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/A2NLSF.c:206,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/A2NLSF.c:206,1
    - Dst: silk_DIV32
      Src: /src/opus/silk/A2NLSF.c:208,1
    - Dst: silk_DIV32
      Src: /src/opus/silk/A2NLSF.c:212,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/A2NLSF.c:212,1
    - Dst: silk_min_32
      Src: /src/opus/silk/A2NLSF.c:214,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/A2NLSF.c:214,1
    - Dst: silk_assert
      Src: /src/opus/silk/A2NLSF.c:216,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/A2NLSF.c:228,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/A2NLSF.c:240,1
    - Dst: silk_ADD16
      Src: /src/opus/silk/A2NLSF.c:242,1
    - Dst: silk_bwexpander_32
      Src: /src/opus/silk/A2NLSF.c:248,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/A2NLSF.c:248,1
    - Dst: silk_A2NLSF_init
      Src: /src/opus/silk/A2NLSF.c:250,1
    - Dst: silk_A2NLSF_eval_poly
      Src: /src/opus/silk/A2NLSF.c:253,1
    - Dst: silk_A2NLSF_eval_poly
      Src: /src/opus/silk/A2NLSF.c:258,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 90
    argCount: 3
    argNames:
    - NLSF
    - a_Q16
    - d
    argTypes:
    - opus_int16*
    - opus_int32*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 267
      start: 127
    functionDepth: 3
    functionLinenumber: 127
    functionLinenumberEnd: 267
    functionName: silk_A2NLSF
    functionSourceFile: /src/opus/silk/A2NLSF.c
    functionUses: 0
    functionsReached:
    - silk_abs
    - silk_ADD_RSHIFT
    - silk_A2NLSF_init
    - silk_LSHIFT
    - silk_DIV32
    - silk_RSHIFT
    - silk_assert
    - silk_ADD16
    - silk_min_32
    - silk_A2NLSF_eval_poly
    - silk_bwexpander_32
    - silk_DIV32_16
    - silk_RSHIFT_ROUND
    linkageType: ''
    returnType: void
    signature: "void silk_A2NLSF(\n    opus_int16                  *NLSF,              /*
      O    Normalized Line Spectral Frequencies in Q15 (0..2^15-1) [d] */\n    opus_int32
      \                 *a_Q16,             /* I/O  Monic whitening filter coefficients
      in Q16 [d]              */\n    const opus_int              d                   /*
      I    Filter order (must be even)                                 */\n)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/silk/NSQ_del_dec.c:136,1
    - Dst: VARDECL
      Src: /src/opus/silk/NSQ_del_dec.c:137,1
    - Dst: VARDECL
      Src: /src/opus/silk/NSQ_del_dec.c:141,1
    - Dst: VARDECL
      Src: /src/opus/silk/NSQ_del_dec.c:142,1
    - Dst: VARDECL
      Src: /src/opus/silk/NSQ_del_dec.c:143,1
    - Dst: silk_assert
      Src: /src/opus/silk/NSQ_del_dec.c:150,1
    - Dst: ALLOC
      Src: /src/opus/silk/NSQ_del_dec.c:153,1
    - Dst: silk_memset
      Src: /src/opus/silk/NSQ_del_dec.c:154,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/NSQ_del_dec.c:163,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/NSQ_del_dec.c:164,1
    - Dst: silk_min_int
      Src: /src/opus/silk/NSQ_del_dec.c:170,1
    - Dst: silk_min_int
      Src: /src/opus/silk/NSQ_del_dec.c:175,1
    - Dst: silk_min_int
      Src: /src/opus/silk/NSQ_del_dec.c:179,1
    - Dst: ALLOC
      Src: /src/opus/silk/NSQ_del_dec.c:189,1
    - Dst: ALLOC
      Src: /src/opus/silk/NSQ_del_dec.c:190,1
    - Dst: ALLOC
      Src: /src/opus/silk/NSQ_del_dec.c:191,1
    - Dst: ALLOC
      Src: /src/opus/silk/NSQ_del_dec.c:192,1
    - Dst: silk_assert
      Src: /src/opus/silk/NSQ_del_dec.c:204,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/NSQ_del_dec.c:205,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/NSQ_del_dec.c:206,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/NSQ_del_dec.c:206,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/NSQ_del_dec.c:214,1
    - Dst: silk_assert
      Src: /src/opus/silk/NSQ_del_dec.c:229,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/NSQ_del_dec.c:239,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/NSQ_del_dec.c:240,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/NSQ_del_dec.c:240,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/NSQ_del_dec.c:241,1
    - Dst: celt_assert
      Src: /src/opus/silk/NSQ_del_dec.c:250,1
    - Dst: silk_LPC_analysis_filter
      Src: /src/opus/silk/NSQ_del_dec.c:252,1
    - Dst: silk_nsq_del_dec_scale_states
      Src: /src/opus/silk/NSQ_del_dec.c:260,1
    - Dst: silk_noise_shape_quantizer_del_dec
      Src: /src/opus/silk/NSQ_del_dec.c:263,1
    - Dst: silk_RSHIFT32
      Src: /src/opus/silk/NSQ_del_dec.c:287,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/NSQ_del_dec.c:292,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/NSQ_del_dec.c:293,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/NSQ_del_dec.c:293,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/NSQ_del_dec.c:294,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/NSQ_del_dec.c:297,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/NSQ_del_dec.c:298,1
    - Dst: silk_memmove
      Src: /src/opus/silk/NSQ_del_dec.c:306,1
    - Dst: silk_memmove
      Src: /src/opus/silk/NSQ_del_dec.c:307,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 126
    argCount: 15
    argNames:
    - psEncC
    - NSQ
    - psIndices
    - x16
    - pulses
    - PredCoef_Q12
    - LTPCoef_Q14
    - AR_Q13
    - HarmShapeGain_Q14
    - Tilt_Q14
    - LF_shp_Q14
    - Gains_Q16
    - pitchL
    - Lambda_Q10
    - LTP_scale_Q14
    argTypes:
    - silk_encoder_state*
    - silk_nsq_state*
    - SideInfoIndices*
    - opus_int16[]
    - opus_int8[]
    - opus_int16*
    - opus_int16[]
    - opus_int16[]
    - opus_int[]
    - opus_int[]
    - opus_int32[]
    - opus_int32[]
    - opus_int[]
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 309
    functionName: silk_NSQ_del_dec_c
    functionSourceFile: /src/opus/silk/NSQ_del_dec.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - silk_LPC_analysis_filter
    - silk_memcpy
    - silk_LSHIFT
    - silk_memset
    - silk_SMULWW
    - silk_assert
    - silk_RSHIFT
    - silk_SAT16
    - VARDECL
    - ALLOC
    - silk_nsq_del_dec_scale_states
    - silk_memmove
    - silk_RSHIFT32
    - silk_min_int
    - silk_noise_shape_quantizer_del_dec
    - silk_RSHIFT_ROUND
    linkageType: ''
    returnType: void
    signature: "void silk_NSQ_del_dec_c(\n    const silk_encoder_state    *psEncC,
      \                                     /* I    Encoder State                   */\n
      \   silk_nsq_state              *NSQ,                                         /*
      I/O  NSQ state                       */\n    SideInfoIndices             *psIndices,
      \                                  /* I/O  Quantization Indices            */\n
      \   const opus_int16            x16[],                                        /*
      I    Input                           */\n    opus_int8                   pulses[],
      \                                    /* O    Quantized pulse signal          */\n
      \   const opus_int16            *PredCoef_Q12,                                /*
      I    Short term prediction coefs     */\n    const opus_int16            LTPCoef_Q14[
      LTP_ORDER * MAX_NB_SUBFR ],      /* I    Long term prediction coefs      */\n
      \   const opus_int16            AR_Q13[ MAX_NB_SUBFR * MAX_SHAPE_LPC_ORDER ],
      /* I    Noise shaping coefs             */\n    const opus_int              HarmShapeGain_Q14[
      MAX_NB_SUBFR ],            /* I    Long term shaping coefs         */\n    const
      opus_int              Tilt_Q14[ MAX_NB_SUBFR ],                     /* I    Spectral
      tilt                   */\n    const opus_int32            LF_shp_Q14[ MAX_NB_SUBFR
      ],                   /* I    Low frequency shaping coefs     */\n    const opus_int32
      \           Gains_Q16[ MAX_NB_SUBFR ],                    /* I    Quantization
      step sizes         */\n    const opus_int              pitchL[ MAX_NB_SUBFR
      ],                       /* I    Pitch lags                      */\n    const
      opus_int              Lambda_Q10,                                   /* I    Rate/distortion
      tradeoff        */\n    const opus_int              LTP_scale_Q14                                 /*
      I    LTP state scaling               */\n)"
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/silk/NSQ_del_dec.c:356,1
    - Dst: celt_assert
      Src: /src/opus/silk/NSQ_del_dec.c:361,1
    - Dst: ALLOC
      Src: /src/opus/silk/NSQ_del_dec.c:362,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/NSQ_del_dec.c:366,1
    - Dst: silk_short_prediction_create_arch_coef
      Src: /src/opus/silk/NSQ_del_dec.c:369,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ_del_dec.c:380,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ_del_dec.c:381,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ_del_dec.c:382,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ_del_dec.c:383,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ_del_dec.c:384,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/NSQ_del_dec.c:385,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/NSQ_del_dec.c:394,1
    - Dst: silk_ADD_SAT32
      Src: /src/opus/silk/NSQ_del_dec.c:394,1
    - Dst: silk_SMLAWT
      Src: /src/opus/silk/NSQ_del_dec.c:395,1
    - Dst: silk_SUB_LSHIFT32
      Src: /src/opus/silk/NSQ_del_dec.c:396,1
    - Dst: silk_RAND
      Src: /src/opus/silk/NSQ_del_dec.c:410,1
    - Dst: silk_noise_shape_quantizer_short_prediction
      Src: /src/opus/silk/NSQ_del_dec.c:415,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/NSQ_del_dec.c:416,1
    - Dst: celt_assert
      Src: /src/opus/silk/NSQ_del_dec.c:419,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ_del_dec.c:421,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ_del_dec.c:423,1
    - Dst: silk_SUB32_ovflw
      Src: /src/opus/silk/NSQ_del_dec.c:423,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/NSQ_del_dec.c:425,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ_del_dec.c:426,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ_del_dec.c:430,1
    - Dst: silk_SUB32_ovflw
      Src: /src/opus/silk/NSQ_del_dec.c:430,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ_del_dec.c:432,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ_del_dec.c:434,1
    - Dst: silk_SUB32_ovflw
      Src: /src/opus/silk/NSQ_del_dec.c:434,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ_del_dec.c:436,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ_del_dec.c:439,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/NSQ_del_dec.c:441,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ_del_dec.c:442,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/NSQ_del_dec.c:443,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/NSQ_del_dec.c:445,1
    - Dst: silk_SMLAWT
      Src: /src/opus/silk/NSQ_del_dec.c:446,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/NSQ_del_dec.c:447,1
    - Dst: silk_ADD_SAT32
      Src: /src/opus/silk/NSQ_del_dec.c:451,1
    - Dst: silk_ADD32_ovflw
      Src: /src/opus/silk/NSQ_del_dec.c:452,1
    - Dst: silk_SUB_SAT32
      Src: /src/opus/silk/NSQ_del_dec.c:453,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/NSQ_del_dec.c:454,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/NSQ_del_dec.c:456,1
    - Dst: silk_LIMIT_32
      Src: /src/opus/silk/NSQ_del_dec.c:462,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/NSQ_del_dec.c:465,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/NSQ_del_dec.c:466,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/NSQ_del_dec.c:471,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/NSQ_del_dec.c:473,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/NSQ_del_dec.c:481,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/NSQ_del_dec.c:481,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/NSQ_del_dec.c:482,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/NSQ_del_dec.c:483,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/NSQ_del_dec.c:484,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/NSQ_del_dec.c:485,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/NSQ_del_dec.c:488,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/NSQ_del_dec.c:489,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/NSQ_del_dec.c:490,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/NSQ_del_dec.c:493,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/NSQ_del_dec.c:494,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/NSQ_del_dec.c:495,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/NSQ_del_dec.c:497,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/NSQ_del_dec.c:497,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/NSQ_del_dec.c:498,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/NSQ_del_dec.c:499,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/NSQ_del_dec.c:500,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/NSQ_del_dec.c:501,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/NSQ_del_dec.c:503,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/NSQ_del_dec.c:504,1
    - Dst: silk_SMLABB
      Src: /src/opus/silk/NSQ_del_dec.c:504,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/NSQ_del_dec.c:505,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/NSQ_del_dec.c:506,1
    - Dst: silk_SMLABB
      Src: /src/opus/silk/NSQ_del_dec.c:506,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/NSQ_del_dec.c:509,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/NSQ_del_dec.c:510,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/NSQ_del_dec.c:514,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/NSQ_del_dec.c:515,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/NSQ_del_dec.c:523,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/NSQ_del_dec.c:529,1
    - Dst: silk_ADD32_ovflw
      Src: /src/opus/silk/NSQ_del_dec.c:530,1
    - Dst: silk_SUB32_ovflw
      Src: /src/opus/silk/NSQ_del_dec.c:533,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/NSQ_del_dec.c:533,1
    - Dst: silk_SUB32_ovflw
      Src: /src/opus/silk/NSQ_del_dec.c:534,1
    - Dst: silk_SUB_SAT32
      Src: /src/opus/silk/NSQ_del_dec.c:535,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/NSQ_del_dec.c:543,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/NSQ_del_dec.c:549,1
    - Dst: silk_ADD32_ovflw
      Src: /src/opus/silk/NSQ_del_dec.c:550,1
    - Dst: silk_SUB32_ovflw
      Src: /src/opus/silk/NSQ_del_dec.c:553,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/NSQ_del_dec.c:553,1
    - Dst: silk_SUB32_ovflw
      Src: /src/opus/silk/NSQ_del_dec.c:554,1
    - Dst: silk_SUB_SAT32
      Src: /src/opus/silk/NSQ_del_dec.c:555,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/NSQ_del_dec.c:579,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/NSQ_del_dec.c:580,1
    - Dst: silk_assert
      Src: /src/opus/silk/NSQ_del_dec.c:581,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/NSQ_del_dec.c:605,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/NSQ_del_dec.c:607,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/NSQ_del_dec.c:613,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/NSQ_del_dec.c:614,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/NSQ_del_dec.c:614,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/NSQ_del_dec.c:615,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/NSQ_del_dec.c:631,1
    - Dst: silk_ADD32_ovflw
      Src: /src/opus/silk/NSQ_del_dec.c:633,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/NSQ_del_dec.c:633,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/NSQ_del_dec.c:642,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 216
    argCount: 27
    argNames:
    - NSQ
    - psDelDec
    - signalType
    - x_Q10
    - pulses
    - xq
    - sLTP_Q15
    - delayedGain_Q10
    - a_Q12
    - b_Q14
    - AR_shp_Q13
    - lag
    - HarmShapeFIRPacked_Q14
    - Tilt_Q14
    - LF_shp_Q14
    - Gain_Q16
    - Lambda_Q10
    - offset_Q10
    - length
    - subfr
    - shapingLPCOrder
    - predictLPCOrder
    - warping_Q16
    - nStatesDelayedDecision
    - smpl_buf_idx
    - decisionDelay
    - arch
    argTypes:
    - silk_nsq_state*
    - NSQ_del_dec_struct[]
    - opus_int
    - opus_int32[]
    - opus_int8[]
    - opus_int16[]
    - opus_int32[]
    - opus_int32[]
    - opus_int16[]
    - opus_int16[]
    - opus_int16[]
    - opus_int
    - opus_int32
    - opus_int
    - opus_int32
    - opus_int32
    - opus_int
    - opus_int
    - opus_int
    - opus_int
    - opus_int
    - opus_int
    - opus_int
    - opus_int
    - opus_int*
    - opus_int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 645
      start: 315
    functionDepth: 1
    functionLinenumber: 315
    functionLinenumberEnd: 645
    functionName: silk_noise_shape_quantizer_del_dec
    functionSourceFile: /src/opus/silk/NSQ_del_dec.c
    functionUses: 1
    functionsReached:
    - silk_SMULWB
    - silk_ADD32
    - silk_SMULBB
    - silk_SUB_LSHIFT32
    - silk_SUB32
    - silk_SMLAWB
    - silk_LIMIT_32
    - silk_ADD_SAT32
    - silk_SUB32_ovflw
    - silk_RSHIFT
    - silk_assert
    - silk_SMLAWT
    - silk_SAT16
    - VARDECL
    - ALLOC
    - silk_SUB_SAT32
    - celt_assert
    - silk_LSHIFT32
    - silk_LSHIFT
    - silk_noise_shape_quantizer_short_prediction
    - silk_ADD32_ovflw
    - silk_memcpy
    - silk_short_prediction_create_arch_coef
    - silk_RAND
    - silk_SMULWW
    - silk_SMLABB
    - silk_RSHIFT_ROUND
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_noise_shape_quantizer_del_dec(\n    silk_nsq_state
      \     *NSQ,                   /* I/O  NSQ state                           */\n
      \   NSQ_del_dec_struct  psDelDec[],             /* I/O  Delayed decision states
      \            */\n    opus_int            signalType,             /* I    Signal
      type                         */\n    const opus_int32    x_Q10[],                /*
      I                                        */\n    opus_int8           pulses[],
      \              /* O                                        */\n    opus_int16
      \         xq[],                   /* O                                        */\n
      \   opus_int32          sLTP_Q15[],             /* I/O  LTP filter state                    */\n
      \   opus_int32          delayedGain_Q10[],      /* I/O  Gain delay buffer                   */\n
      \   const opus_int16    a_Q12[],                /* I    Short term prediction
      coefs         */\n    const opus_int16    b_Q14[],                /* I    Long
      term prediction coefs          */\n    const opus_int16    AR_shp_Q13[],           /*
      I    Noise shaping coefs                 */\n    opus_int            lag,                    /*
      I    Pitch lag                           */\n    opus_int32          HarmShapeFIRPacked_Q14,
      /* I                                        */\n    opus_int            Tilt_Q14,
      \              /* I    Spectral tilt                       */\n    opus_int32
      \         LF_shp_Q14,             /* I                                        */\n
      \   opus_int32          Gain_Q16,               /* I                                        */\n
      \   opus_int            Lambda_Q10,             /* I                                        */\n
      \   opus_int            offset_Q10,             /* I                                        */\n
      \   opus_int            length,                 /* I    Input length                        */\n
      \   opus_int            subfr,                  /* I    Subframe number                     */\n
      \   opus_int            shapingLPCOrder,        /* I    Shaping LPC filter order
      \           */\n    opus_int            predictLPCOrder,        /* I    Prediction
      filter order             */\n    opus_int            warping_Q16,            /*
      I                                        */\n    opus_int            nStatesDelayedDecision,
      /* I    Number of states in decision tree   */\n    opus_int            *smpl_buf_idx,
      \         /* I/O  Index to newest samples in buffers  */\n    opus_int            decisionDelay,
      \         /* I                                        */\n    int                 arch
      \                   /* I                                        */\n)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: silk_INVERSE32_varQ
      Src: /src/opus/silk/NSQ_del_dec.c:670,1
    - Dst: silk_max
      Src: /src/opus/silk/NSQ_del_dec.c:670,1
    - Dst: silk_assert
      Src: /src/opus/silk/NSQ_del_dec.c:671,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/NSQ_del_dec.c:674,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/NSQ_del_dec.c:676,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/NSQ_del_dec.c:683,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/NSQ_del_dec.c:683,1
    - Dst: silk_assert
      Src: /src/opus/silk/NSQ_del_dec.c:686,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/NSQ_del_dec.c:687,1
    - Dst: silk_DIV32_varQ
      Src: /src/opus/silk/NSQ_del_dec.c:693,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/NSQ_del_dec.c:697,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/NSQ_del_dec.c:703,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/NSQ_del_dec.c:711,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/NSQ_del_dec.c:712,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/NSQ_del_dec.c:716,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/NSQ_del_dec.c:719,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/NSQ_del_dec.c:722,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/NSQ_del_dec.c:723,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 44
    argCount: 14
    argNames:
    - psEncC
    - NSQ
    - psDelDec
    - x16
    - x_sc_Q10
    - sLTP
    - sLTP_Q15
    - subfr
    - nStatesDelayedDecision
    - LTP_scale_Q14
    - Gains_Q16
    - pitchL
    - signal_type
    - decisionDelay
    argTypes:
    - silk_encoder_state*
    - silk_nsq_state*
    - NSQ_del_dec_struct[]
    - opus_int16[]
    - opus_int32[]
    - opus_int16[]
    - opus_int32[]
    - opus_int
    - opus_int
    - opus_int
    - opus_int32[]
    - opus_int[]
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 730
      start: 648
    functionDepth: 1
    functionLinenumber: 648
    functionLinenumberEnd: 730
    functionName: silk_nsq_del_dec_scale_states
    functionSourceFile: /src/opus/silk/NSQ_del_dec.c
    functionUses: 1
    functionsReached:
    - silk_DIV32_varQ
    - silk_LSHIFT
    - silk_SMULWW
    - silk_assert
    - silk_SMULWB
    - silk_RSHIFT_ROUND
    - silk_INVERSE32_varQ
    - silk_max
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_nsq_del_dec_scale_states(\n    const silk_encoder_state
      *psEncC,               /* I    Encoder State                       */\n    silk_nsq_state
      \     *NSQ,                       /* I/O  NSQ state                           */\n
      \   NSQ_del_dec_struct  psDelDec[],                 /* I/O  Delayed decision
      states             */\n    const opus_int16    x16[],                      /*
      I    Input                               */\n    opus_int32          x_sc_Q10[],
      \                /* O    Input scaled with 1/Gain in Q10     */\n    const opus_int16
      \   sLTP[],                     /* I    Re-whitened LTP state in Q0         */\n
      \   opus_int32          sLTP_Q15[],                 /* O    LTP state matching
      scaled input     */\n    opus_int            subfr,                      /*
      I    Subframe number                     */\n    opus_int            nStatesDelayedDecision,
      \    /* I    Number of del dec states            */\n    const opus_int      LTP_scale_Q14,
      \             /* I    LTP state scaling                   */\n    const opus_int32
      \   Gains_Q16[ MAX_NB_SUBFR ],  /* I                                        */\n
      \   const opus_int      pitchL[ MAX_NB_SUBFR ],     /* I    Pitch lag                           */\n
      \   const opus_int      signal_type,                /* I    Signal type                         */\n
      \   const opus_int      decisionDelay               /* I    Decision delay                      */\n)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/log2lin.c:48,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/log2lin.c:48,1
    - Dst: silk_ADD_RSHIFT32
      Src: /src/opus/silk/log2lin.c:52,1
    - Dst: silk_MUL
      Src: /src/opus/silk/log2lin.c:52,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/log2lin.c:52,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/log2lin.c:52,1
    - Dst: silk_MLA
      Src: /src/opus/silk/log2lin.c:55,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/log2lin.c:55,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/log2lin.c:55,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/log2lin.c:55,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 1
    argNames:
    - inLog_Q7
    argTypes:
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 58
    functionName: silk_log2lin
    functionSourceFile: /src/opus/silk/log2lin.c
    functionUses: 1
    functionsReached:
    - silk_ADD_RSHIFT32
    - silk_LSHIFT
    - silk_RSHIFT
    - silk_SMULBB
    - silk_SMLAWB
    - silk_MUL
    - silk_MLA
    linkageType: ''
    returnType: opus_int32
    signature: "opus_int32 silk_log2lin(\n    const opus_int32            inLog_Q7
      \           /* I  input on log scale                                            */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a32
    - ','
    - b32
    - ','
    - Q
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 39
    functionName: MUL32_FRAC_Q
    functionSourceFile: /src/opus/silk/LPC_inv_pred_gain.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MUL32_FRAC_Q(a32, b32, Q)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/LPC_inv_pred_gain.c:50,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/LPC_inv_pred_gain.c:58,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/LPC_inv_pred_gain.c:61,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/LPC_inv_pred_gain.c:61,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/LPC_inv_pred_gain.c:61,1
    - Dst: silk_assert
      Src: /src/opus/silk/LPC_inv_pred_gain.c:62,1
    - Dst: silk_assert
      Src: /src/opus/silk/LPC_inv_pred_gain.c:63,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/LPC_inv_pred_gain.c:67,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/LPC_inv_pred_gain.c:67,1
    - Dst: silk_assert
      Src: /src/opus/silk/LPC_inv_pred_gain.c:68,1
    - Dst: silk_assert
      Src: /src/opus/silk/LPC_inv_pred_gain.c:69,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/LPC_inv_pred_gain.c:70,1
    - Dst: silk_CLZ32
      Src: /src/opus/silk/LPC_inv_pred_gain.c:75,1
    - Dst: silk_abs
      Src: /src/opus/silk/LPC_inv_pred_gain.c:75,1
    - Dst: silk_INVERSE32_varQ
      Src: /src/opus/silk/LPC_inv_pred_gain.c:76,1
    - Dst: silk_RSHIFT_ROUND64
      Src: /src/opus/silk/LPC_inv_pred_gain.c:83,1
    - Dst: silk_SMULL
      Src: /src/opus/silk/LPC_inv_pred_gain.c:83,1
    - Dst: silk_SUB_SAT32
      Src: /src/opus/silk/LPC_inv_pred_gain.c:83,1
    - Dst: MUL32_FRAC_Q
      Src: /src/opus/silk/LPC_inv_pred_gain.c:84,1
    - Dst: silk_RSHIFT_ROUND64
      Src: /src/opus/silk/LPC_inv_pred_gain.c:89,1
    - Dst: silk_SMULL
      Src: /src/opus/silk/LPC_inv_pred_gain.c:89,1
    - Dst: silk_SUB_SAT32
      Src: /src/opus/silk/LPC_inv_pred_gain.c:89,1
    - Dst: MUL32_FRAC_Q
      Src: /src/opus/silk/LPC_inv_pred_gain.c:90,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/LPC_inv_pred_gain.c:104,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/LPC_inv_pred_gain.c:107,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/LPC_inv_pred_gain.c:107,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/LPC_inv_pred_gain.c:107,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/LPC_inv_pred_gain.c:111,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/LPC_inv_pred_gain.c:111,1
    - Dst: silk_assert
      Src: /src/opus/silk/LPC_inv_pred_gain.c:112,1
    - Dst: silk_assert
      Src: /src/opus/silk/LPC_inv_pred_gain.c:113,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/LPC_inv_pred_gain.c:114,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 45
    argCount: 2
    argNames:
    - A_QA
    - order
    argTypes:
    - opus_int32[]
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 119
    functionName: LPC_inverse_pred_gain_QA_c
    functionSourceFile: /src/opus/silk/LPC_inv_pred_gain.c
    functionUses: 0
    functionsReached:
    - silk_abs
    - MUL32_FRAC_Q
    - silk_LSHIFT
    - silk_CLZ32
    - silk_SMULL
    - silk_RSHIFT_ROUND64
    - silk_assert
    - silk_SUB32
    - silk_SMMUL
    - silk_SUB_SAT32
    - SILK_FIX_CONST
    - silk_INVERSE32_varQ
    linkageType: ''
    returnType: opus_int32
    signature: "opus_int32 LPC_inverse_pred_gain_QA_c(               /* O   Returns
      inverse prediction gain in energy domain, Q30    */\n    opus_int32           A_QA[
      SILK_MAX_ORDER_LPC ],        /* I   Prediction coefficients                                  */\n
      \   const opus_int       order                              /* I   Prediction
      order                                         */\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/LPC_inv_pred_gain.c:134,1
    - Dst: LPC_inverse_pred_gain_QA_c
      Src: /src/opus/silk/LPC_inv_pred_gain.c:140,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - A_Q12
    - order
    argTypes:
    - opus_int16*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 122
    functionDepth: 2
    functionLinenumber: 122
    functionLinenumberEnd: 141
    functionName: silk_LPC_inverse_pred_gain_c
    functionSourceFile: /src/opus/silk/LPC_inv_pred_gain.c
    functionUses: 0
    functionsReached:
    - LPC_inverse_pred_gain_QA_c
    - silk_LSHIFT32
    linkageType: ''
    returnType: opus_int32
    signature: "opus_int32 silk_LPC_inverse_pred_gain_c(            /* O   Returns
      inverse prediction gain in energy domain, Q30        */\n    const opus_int16
      \           *A_Q12,             /* I   Prediction coefficients, Q12 [order]
      \                        */\n    const opus_int              order               /*
      I   Prediction order                                             */\n)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ec_dec_icdf
      Src: /src/opus/silk/decode_pulses.c:53,1
    - Dst: silk_assert
      Src: /src/opus/silk/decode_pulses.c:56,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/decode_pulses.c:57,1
    - Dst: celt_assert
      Src: /src/opus/silk/decode_pulses.c:59,1
    - Dst: ec_dec_icdf
      Src: /src/opus/silk/decode_pulses.c:69,1
    - Dst: ec_dec_icdf
      Src: /src/opus/silk/decode_pulses.c:75,1
    - Dst: silk_shell_decoder
      Src: /src/opus/silk/decode_pulses.c:85,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/decode_pulses.c:85,1
    - Dst: silk_memset
      Src: /src/opus/silk/decode_pulses.c:87,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/decode_pulses.c:87,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/decode_pulses.c:97,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/decode_pulses.c:101,1
    - Dst: ec_dec_icdf
      Src: /src/opus/silk/decode_pulses.c:102,1
    - Dst: silk_decode_signs
      Src: /src/opus/silk/decode_pulses.c:114,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 40
    argCount: 5
    argNames:
    - psRangeDec
    - pulses
    - signalType
    - quantOffsetType
    - frame_length
    argTypes:
    - ec_dec*
    - opus_int16[]
    - opus_int
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 115
    functionName: silk_decode_pulses
    functionSourceFile: /src/opus/silk/decode_pulses.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - silk_LSHIFT
    - silk_memset
    - silk_RSHIFT
    - silk_assert
    - silk_SMULBB
    - silk_decode_signs
    - silk_shell_decoder
    - ec_dec_icdf
    linkageType: ''
    returnType: void
    signature: "void silk_decode_pulses(\n    ec_dec                      *psRangeDec,
      \                   /* I/O  Compressor data structure                   */\n
      \   opus_int16                  pulses[],                       /* O    Excitation
      signal                           */\n    const opus_int              signalType,
      \                    /* I    Sigtype                                     */\n
      \   const opus_int              quantOffsetType,                /* I    quantOffsetType
      \                            */\n    const opus_int              frame_length
      \                   /* I    Frame length                                */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_RSHIFT32
      Src: /src/opus/silk/resampler_down2.c:43,1
    - Dst: celt_assert
      Src: /src/opus/silk/resampler_down2.c:46,1
    - Dst: celt_assert
      Src: /src/opus/silk/resampler_down2.c:47,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/resampler_down2.c:52,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/resampler_down2.c:55,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_down2.c:56,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_down2.c:57,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_down2.c:58,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/resampler_down2.c:61,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/resampler_down2.c:64,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/resampler_down2.c:65,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_down2.c:66,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_down2.c:67,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_down2.c:68,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/resampler_down2.c:71,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/resampler_down2.c:71,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 4
    argNames:
    - S
    - out
    - in
    - inLen
    argTypes:
    - opus_int32*
    - opus_int16*
    - opus_int16*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 73
    functionName: silk_resampler_down2
    functionSourceFile: /src/opus/silk/resampler_down2.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - silk_LSHIFT
    - silk_ADD32
    - silk_SMULWB
    - silk_SAT16
    - silk_SUB32
    - silk_SMLAWB
    - silk_RSHIFT32
    - silk_RSHIFT_ROUND
    linkageType: ''
    returnType: void
    signature: "void silk_resampler_down2(\n    opus_int32                  *S,                 /*
      I/O  State vector [ 2 ]                                          */\n    opus_int16
      \                 *out,               /* O    Output signal [ floor(len/2) ]
      \                             */\n    const opus_int16            *in,                /*
      I    Input signal [ len ]                                        */\n    opus_int32
      \                 inLen               /* I    Number of input samples                                     */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/PLC.c:65,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/PLC.c:66,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/PLC.c:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - psDec
    argTypes:
    - silk_decoder_state*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 70
    functionName: silk_PLC_Reset
    functionSourceFile: /src/opus/silk/PLC.c
    functionUses: 0
    functionsReached:
    - SILK_FIX_CONST
    - silk_LSHIFT
    linkageType: ''
    returnType: void
    signature: "void silk_PLC_Reset(\n    silk_decoder_state                  *psDec
      \             /* I/O Decoder state        */\n)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: silk_PLC_Reset
      Src: /src/opus/silk/PLC.c:85,1
    - Dst: silk_PLC_conceal
      Src: /src/opus/silk/PLC.c:93,1
    - Dst: silk_PLC_update
      Src: /src/opus/silk/PLC.c:104,1
    - Dst: lpcnet_plc_update
      Src: /src/opus/silk/PLC.c:109,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 6
    argNames:
    - psDec
    - psDecCtrl
    - frame
    - lost
    - LPCNetPLCState                      *lpcnet
    - arch
    argTypes:
    - silk_decoder_state*
    - silk_decoder_control*
    - opus_int16[]
    - opus_int
    - ENABLE_DEEP_PLC
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 72
    functionDepth: 2
    functionLinenumber: 72
    functionLinenumberEnd: 114
    functionName: silk_PLC
    functionSourceFile: /src/opus/silk/PLC.c
    functionUses: 0
    functionsReached:
    - silk_PLC_Reset
    - silk_PLC_conceal
    - lpcnet_plc_update
    - silk_PLC_update
    linkageType: ''
    returnType: void
    signature: "void silk_PLC(\n    silk_decoder_state                  *psDec,             /*
      I/O Decoder state        */\n    silk_decoder_control                *psDecCtrl,
      \        /* I/O Decoder control      */\n    opus_int16                          frame[],
      \           /* I/O  signal              */\n    opus_int                            lost,
      \              /* I Loss flag              */\n#ifdef ENABLE_DEEP_PLC\n    LPCNetPLCState
      \                     *lpcnet,\n#endif\n    int                                 arch
      \               /* I Run-time architecture  */\n)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: silk_memcpy
      Src: /src/opus/silk/PLC.c:145,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/PLC.c:146,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/PLC.c:149,1
    - Dst: silk_memset
      Src: /src/opus/silk/PLC.c:153,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/PLC.c:161,1
    - Dst: silk_DIV32
      Src: /src/opus/silk/PLC.c:162,1
    - Dst: silk_max
      Src: /src/opus/silk/PLC.c:162,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/PLC.c:164,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/PLC.c:164,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/PLC.c:170,1
    - Dst: silk_DIV32
      Src: /src/opus/silk/PLC.c:171,1
    - Dst: silk_max
      Src: /src/opus/silk/PLC.c:171,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/PLC.c:173,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/PLC.c:173,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/PLC.c:177,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/PLC.c:177,1
    - Dst: silk_memset
      Src: /src/opus/silk/PLC.c:178,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/PLC.c:182,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/PLC.c:186,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 44
    argCount: 2
    argNames:
    - psDec
    - psDecCtrl
    argTypes:
    - silk_decoder_state*
    - silk_decoder_control*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 190
    functionName: silk_PLC_update
    functionSourceFile: /src/opus/silk/PLC.c
    functionUses: 1
    functionsReached:
    - silk_memcpy
    - silk_LSHIFT
    - silk_memset
    - silk_DIV32
    - silk_RSHIFT
    - silk_SMULBB
    - silk_max
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_PLC_update(\n    silk_decoder_state                  *psDec,
      \            /* I/O Decoder state        */\n    silk_decoder_control                *psDecCtrl
      \         /* I/O Decoder control      */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/silk/PLC.c:196,1
    - Dst: ALLOC
      Src: /src/opus/silk/PLC.c:199,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/PLC.c:205,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/PLC.c:205,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/PLC.c:206,1
    - Dst: silk_sum_sqr_shift
      Src: /src/opus/silk/PLC.c:211,1
    - Dst: silk_sum_sqr_shift
      Src: /src/opus/silk/PLC.c:212,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 8
    argNames:
    - energy1
    - shift1
    - energy2
    - shift2
    - exc_Q14
    - prevGain_Q10
    - subfr_length
    - nb_subfr
    argTypes:
    - opus_int32*
    - opus_int*
    - opus_int32*
    - opus_int*
    - opus_int32*
    - opus_int32*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 192
    functionDepth: 2
    functionLinenumber: 192
    functionLinenumberEnd: 214
    functionName: silk_PLC_energy
    functionSourceFile: /src/opus/silk/PLC.c
    functionUses: 0
    functionsReached:
    - silk_SMULWW
    - silk_RSHIFT
    - silk_SAT16
    - VARDECL
    - ALLOC
    - silk_sum_sqr_shift
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_PLC_energy(opus_int32 *energy1, opus_int *shift1,
      opus_int32 *energy2, opus_int *shift2,\n      const opus_int32 *exc_Q14, const
      opus_int32 *prevGain_Q10, int subfr_length, int nb_subfr)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/silk/PLC.c:238,1
    - Dst: VARDECL
      Src: /src/opus/silk/PLC.c:240,1
    - Dst: ALLOC
      Src: /src/opus/silk/PLC.c:245,1
    - Dst: ALLOC
      Src: /src/opus/silk/PLC.c:250,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/PLC.c:253,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/PLC.c:254,1
    - Dst: silk_memset
      Src: /src/opus/silk/PLC.c:257,1
    - Dst: silk_PLC_energy
      Src: /src/opus/silk/PLC.c:260,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/PLC.c:262,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/PLC.c:262,1
    - Dst: silk_max_int
      Src: /src/opus/silk/PLC.c:264,1
    - Dst: silk_max_int
      Src: /src/opus/silk/PLC.c:267,1
    - Dst: silk_min_int
      Src: /src/opus/silk/PLC.c:275,1
    - Dst: silk_min_int
      Src: /src/opus/silk/PLC.c:277,1
    - Dst: silk_min_int
      Src: /src/opus/silk/PLC.c:279,1
    - Dst: silk_bwexpander
      Src: /src/opus/silk/PLC.c:283,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/PLC.c:283,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/PLC.c:286,1
    - Dst: silk_max_16
      Src: /src/opus/silk/PLC.c:297,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/PLC.c:298,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/PLC.c:298,1
    - Dst: silk_LPC_inverse_pred_gain
      Src: /src/opus/silk/PLC.c:303,1
    - Dst: silk_min_32
      Src: /src/opus/silk/PLC.c:305,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/PLC.c:305,1
    - Dst: silk_max_32
      Src: /src/opus/silk/PLC.c:306,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/PLC.c:306,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/PLC.c:307,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/PLC.c:309,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/PLC.c:309,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/PLC.c:314,1
    - Dst: celt_assert
      Src: /src/opus/silk/PLC.c:319,1
    - Dst: silk_LPC_analysis_filter
      Src: /src/opus/silk/PLC.c:320,1
    - Dst: silk_INVERSE32_varQ
      Src: /src/opus/silk/PLC.c:322,1
    - Dst: silk_min
      Src: /src/opus/silk/PLC.c:323,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/PLC.c:325,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/PLC.c:338,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/PLC.c:339,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/PLC.c:340,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/PLC.c:341,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/PLC.c:342,1
    - Dst: silk_RAND
      Src: /src/opus/silk/PLC.c:346,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/PLC.c:347,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/PLC.c:348,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/PLC.c:348,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/PLC.c:354,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/PLC.c:354,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/PLC.c:357,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/PLC.c:357,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/PLC.c:360,1
    - Dst: silk_min_32
      Src: /src/opus/silk/PLC.c:361,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/PLC.c:361,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/PLC.c:361,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/PLC.c:362,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/PLC.c:371,1
    - Dst: celt_assert
      Src: /src/opus/silk/PLC.c:373,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/PLC.c:377,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/PLC.c:378,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/PLC.c:379,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/PLC.c:380,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/PLC.c:381,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/PLC.c:382,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/PLC.c:383,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/PLC.c:384,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/PLC.c:385,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/PLC.c:386,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/PLC.c:387,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/PLC.c:389,1
    - Dst: silk_ADD_SAT32
      Src: /src/opus/silk/PLC.c:393,1
    - Dst: silk_LSHIFT_SAT32
      Src: /src/opus/silk/PLC.c:394,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/PLC.c:397,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/PLC.c:397,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/PLC.c:397,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/PLC.c:397,1
    - Dst: lpcnet_plc_conceal
      Src: /src/opus/silk/PLC.c:404,1
    - Dst: floor
      Src: /src/opus/silk/PLC.c:408,1
    - Dst: lpcnet_plc_update
      Src: /src/opus/silk/PLC.c:412,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/PLC.c:419,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 120
    argCount: 5
    argNames:
    - psDec
    - psDecCtrl
    - frame
    - LPCNetPLCState                      *lpcnet
    - arch
    argTypes:
    - silk_decoder_state*
    - silk_decoder_control*
    - opus_int16[]
    - ENABLE_DEEP_PLC
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 430
      start: 216
    functionDepth: 3
    functionLinenumber: 216
    functionLinenumberEnd: 430
    functionName: silk_PLC_conceal
    functionSourceFile: /src/opus/silk/PLC.c
    functionUses: 1
    functionsReached:
    - silk_LPC_inverse_pred_gain
    - silk_SMULBB
    - silk_SMULWB
    - silk_SMLAWB
    - silk_min_32
    - silk_ADD_SAT32
    - lpcnet_plc_conceal
    - silk_min
    - silk_RSHIFT
    - silk_max_int
    - silk_SAT16
    - floor
    - VARDECL
    - ALLOC
    - celt_assert
    - silk_LPC_analysis_filter
    - silk_LSHIFT32
    - silk_LSHIFT
    - silk_PLC_energy
    - silk_memset
    - silk_max_32
    - SILK_FIX_CONST
    - silk_memcpy
    - silk_RAND
    - silk_SMULWW
    - lpcnet_plc_update
    - silk_max_16
    - silk_min_int
    - silk_bwexpander
    - silk_INVERSE32_varQ
    - silk_RSHIFT_ROUND
    - silk_LSHIFT_SAT32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_PLC_conceal(\n    silk_decoder_state                  *psDec,
      \            /* I/O Decoder state        */\n    silk_decoder_control                *psDecCtrl,
      \        /* I/O Decoder control      */\n    opus_int16                          frame[],
      \           /* O LPC residual signal    */\n#ifdef ENABLE_DEEP_PLC\n    LPCNetPLCState
      \                     *lpcnet,\n#endif\n    int                                 arch
      \               /* I Run-time architecture  */\n)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: silk_sum_sqr_shift
      Src: /src/opus/silk/PLC.c:446,1
    - Dst: silk_sum_sqr_shift
      Src: /src/opus/silk/PLC.c:452,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/PLC.c:456,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/PLC.c:458,1
    - Dst: silk_CLZ32
      Src: /src/opus/silk/PLC.c:466,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/PLC.c:468,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/PLC.c:469,1
    - Dst: silk_max_32
      Src: /src/opus/silk/PLC.c:469,1
    - Dst: silk_DIV32
      Src: /src/opus/silk/PLC.c:471,1
    - Dst: silk_max
      Src: /src/opus/silk/PLC.c:471,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/PLC.c:473,1
    - Dst: silk_SQRT_APPROX
      Src: /src/opus/silk/PLC.c:473,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/PLC.c:474,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/PLC.c:476,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/PLC.c:482,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 37
    argCount: 3
    argNames:
    - psDec
    - frame
    - length
    argTypes:
    - silk_decoder_state*
    - opus_int16[]
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 493
      start: 433
    functionDepth: 2
    functionLinenumber: 433
    functionLinenumberEnd: 493
    functionName: silk_PLC_glue_frames
    functionSourceFile: /src/opus/silk/PLC.c
    functionUses: 0
    functionsReached:
    - silk_LSHIFT
    - silk_CLZ32
    - silk_DIV32
    - silk_RSHIFT
    - silk_SMULWB
    - silk_max_32
    - silk_sum_sqr_shift
    - silk_DIV32_16
    - silk_max
    - silk_SQRT_APPROX
    linkageType: ''
    returnType: void
    signature: "void silk_PLC_glue_frames(\n    silk_decoder_state                  *psDec,
      \            /* I/O decoder state        */\n    opus_int16                          frame[],
      \           /* I/O signal               */\n    opus_int                            length
      \             /* I length of signal       */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 27
    argNames:
    - (
    - ind
    - ','
    - res_nrg_Q15
    - ','
    - rate_dist_Q8
    - ','
    - gain_Q7
    - ','
    - XX_Q17
    - ','
    - xX_Q17
    - ','
    - cb_Q7
    - ','
    - cb_gain_Q7
    - ','
    - cl_Q5
    - ','
    - subfr_len
    - ','
    - max_gain_Q7
    - ','
    - L
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 243
    functionName: silk_VQ_WMat_EC
    functionSourceFile: /src/opus/silk/main.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_VQ_WMat_EC(ind, res_nrg_Q15, rate_dist_Q8, gain_Q7, XX_Q17, xX_Q17,
      cb_Q7, cb_gain_Q7, cl_Q5, subfr_len, max_gain_Q7, L, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 33
    argNames:
    - (
    - psEncC
    - ','
    - NSQ
    - ','
    - psIndices
    - ','
    - x16
    - ','
    - pulses
    - ','
    - PredCoef_Q12
    - ','
    - LTPCoef_Q14
    - ','
    - AR_Q13
    - ','
    - HarmShapeGain_Q14
    - ','
    - Tilt_Q14
    - ','
    - LF_shp_Q14
    - ','
    - Gains_Q16
    - ','
    - pitchL
    - ','
    - Lambda_Q10
    - ','
    - LTP_scale_Q14
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 268
    functionDepth: 0
    functionLinenumber: 268
    functionLinenumberEnd: 272
    functionName: silk_NSQ
    functionSourceFile: /src/opus/silk/main.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: "silk_NSQ(psEncC, NSQ, psIndices, x16, pulses, PredCoef_Q12, LTPCoef_Q14,
      AR_Q13, \\\n                   HarmShapeGain_Q14, Tilt_Q14, LF_shp_Q14, Gains_Q16,
      pitchL, Lambda_Q10, LTP_scale_Q14, arch)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 33
    argNames:
    - (
    - psEncC
    - ','
    - NSQ
    - ','
    - psIndices
    - ','
    - x16
    - ','
    - pulses
    - ','
    - PredCoef_Q12
    - ','
    - LTPCoef_Q14
    - ','
    - AR_Q13
    - ','
    - HarmShapeGain_Q14
    - ','
    - Tilt_Q14
    - ','
    - LF_shp_Q14
    - ','
    - Gains_Q16
    - ','
    - pitchL
    - ','
    - Lambda_Q10
    - ','
    - LTP_scale_Q14
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 294
    functionDepth: 0
    functionLinenumber: 294
    functionLinenumberEnd: 298
    functionName: silk_NSQ_del_dec
    functionSourceFile: /src/opus/silk/main.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: "silk_NSQ_del_dec(psEncC, NSQ, psIndices, x16, pulses, PredCoef_Q12,
      LTPCoef_Q14, AR_Q13, \\\n                           HarmShapeGain_Q14, Tilt_Q14,
      LF_shp_Q14, Gains_Q16, pitchL, Lambda_Q10, LTP_scale_Q14, arch)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - psEnC
    - ','
    - pIn
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 315
    functionDepth: 0
    functionLinenumber: 315
    functionLinenumberEnd: 316
    functionName: silk_VAD_GetSA_Q8
    functionSourceFile: /src/opus/silk/main.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_VAD_GetSA_Q8(psEnC, pIn, arch)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/NLSF_del_dec_quant.c:65,1
    - Dst: silk_ADD16
      Src: /src/opus/silk/NLSF_del_dec_quant.c:66,1
    - Dst: silk_SUB16
      Src: /src/opus/silk/NLSF_del_dec_quant.c:68,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/NLSF_del_dec_quant.c:68,1
    - Dst: silk_SUB16
      Src: /src/opus/silk/NLSF_del_dec_quant.c:69,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/NLSF_del_dec_quant.c:69,1
    - Dst: silk_SUB16
      Src: /src/opus/silk/NLSF_del_dec_quant.c:71,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/NLSF_del_dec_quant.c:71,1
    - Dst: silk_ADD16
      Src: /src/opus/silk/NLSF_del_dec_quant.c:73,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/NLSF_del_dec_quant.c:73,1
    - Dst: silk_ADD16
      Src: /src/opus/silk/NLSF_del_dec_quant.c:75,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/NLSF_del_dec_quant.c:75,1
    - Dst: silk_ADD16
      Src: /src/opus/silk/NLSF_del_dec_quant.c:76,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/NLSF_del_dec_quant.c:76,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/NLSF_del_dec_quant.c:78,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/NLSF_del_dec_quant.c:78,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/NLSF_del_dec_quant.c:79,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/NLSF_del_dec_quant.c:79,1
    - Dst: silk_assert
      Src: /src/opus/silk/NLSF_del_dec_quant.c:82,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/NLSF_del_dec_quant.c:91,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/NLSF_del_dec_quant.c:91,1
    - Dst: silk_SUB16
      Src: /src/opus/silk/NLSF_del_dec_quant.c:92,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/NLSF_del_dec_quant.c:93,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/NLSF_del_dec_quant.c:93,1
    - Dst: silk_LIMIT
      Src: /src/opus/silk/NLSF_del_dec_quant.c:94,1
    - Dst: silk_ADD16
      Src: /src/opus/silk/NLSF_del_dec_quant.c:101,1
    - Dst: silk_ADD16
      Src: /src/opus/silk/NLSF_del_dec_quant.c:102,1
    - Dst: silk_SMLABB
      Src: /src/opus/silk/NLSF_del_dec_quant.c:112,1
    - Dst: silk_ADD16
      Src: /src/opus/silk/NLSF_del_dec_quant.c:113,1
    - Dst: silk_SMLABB
      Src: /src/opus/silk/NLSF_del_dec_quant.c:120,1
    - Dst: silk_SUB16
      Src: /src/opus/silk/NLSF_del_dec_quant.c:121,1
    - Dst: silk_SUB16
      Src: /src/opus/silk/NLSF_del_dec_quant.c:128,1
    - Dst: silk_SMLABB
      Src: /src/opus/silk/NLSF_del_dec_quant.c:129,1
    - Dst: silk_MLA
      Src: /src/opus/silk/NLSF_del_dec_quant.c:129,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/NLSF_del_dec_quant.c:129,1
    - Dst: silk_SUB16
      Src: /src/opus/silk/NLSF_del_dec_quant.c:130,1
    - Dst: silk_SMLABB
      Src: /src/opus/silk/NLSF_del_dec_quant.c:131,1
    - Dst: silk_MLA
      Src: /src/opus/silk/NLSF_del_dec_quant.c:131,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/NLSF_del_dec_quant.c:131,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/NLSF_del_dec_quant.c:139,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/NLSF_del_dec_quant.c:188,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/NLSF_del_dec_quant.c:192,1
    - Dst: silk_assert
      Src: /src/opus/silk/NLSF_del_dec_quant.c:208,1
    - Dst: silk_assert
      Src: /src/opus/silk/NLSF_del_dec_quant.c:209,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/NLSF_del_dec_quant.c:211,1
    - Dst: silk_assert
      Src: /src/opus/silk/NLSF_del_dec_quant.c:212,1
    - Dst: silk_assert
      Src: /src/opus/silk/NLSF_del_dec_quant.c:213,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 138
    argCount: 10
    argNames:
    - indices
    - x_Q10
    - w_Q5
    - pred_coef_Q8
    - ec_ix
    - ec_rates_Q5
    - quant_step_size_Q16
    - inv_quant_step_size_Q6
    - mu_Q20
    - order
    argTypes:
    - opus_int8[]
    - opus_int16[]
    - opus_int16[]
    - opus_uint8[]
    - opus_int16[]
    - opus_uint8[]
    - opus_int
    - opus_int16
    - opus_int32
    - opus_int16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 215
    functionName: silk_NLSF_del_dec_quant
    functionSourceFile: /src/opus/silk/NLSF_del_dec_quant.c
    functionUses: 0
    functionsReached:
    - silk_memcpy
    - silk_LSHIFT
    - silk_LIMIT
    - silk_RSHIFT
    - silk_SMULBB
    - silk_ADD16
    - silk_SUB16
    - silk_assert
    - silk_SMLABB
    - SILK_FIX_CONST
    - silk_MLA
    linkageType: ''
    returnType: opus_int32
    signature: "opus_int32 silk_NLSF_del_dec_quant(                             /*
      O    Returns RD value in Q25                     */\n    opus_int8                   indices[],
      \                     /* O    Quantization indices [ order ]              */\n
      \   const opus_int16            x_Q10[],                        /* I    Input
      [ order ]                             */\n    const opus_int16            w_Q5[],
      \                        /* I    Weights [ order ]                           */\n
      \   const opus_uint8            pred_coef_Q8[],                 /* I    Backward
      predictor coefs [ order ]          */\n    const opus_int16            ec_ix[],
      \                       /* I    Indices to entropy coding tables [ order ]  */\n
      \   const opus_uint8            ec_rates_Q5[],                  /* I    Rates
      []                                    */\n    const opus_int              quant_step_size_Q16,
      \           /* I    Quantization step size                      */\n    const
      opus_int16            inv_quant_step_size_Q6,         /* I    Inverse quantization
      step size              */\n    const opus_int32            mu_Q20,                         /*
      I    R/D tradeoff                                */\n    const opus_int16            order
      \                          /* I    Number of input values                      */\n)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: silk_assert
      Src: /src/opus/silk/process_NLSFs.c:49,1
    - Dst: silk_assert
      Src: /src/opus/silk/process_NLSFs.c:50,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/process_NLSFs.c:50,1
    - Dst: celt_assert
      Src: /src/opus/silk/process_NLSFs.c:51,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/process_NLSFs.c:57,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/process_NLSFs.c:57,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/process_NLSFs.c:57,1
    - Dst: silk_ADD_RSHIFT
      Src: /src/opus/silk/process_NLSFs.c:60,1
    - Dst: celt_assert
      Src: /src/opus/silk/process_NLSFs.c:63,1
    - Dst: silk_assert
      Src: /src/opus/silk/process_NLSFs.c:64,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/process_NLSFs.c:64,1
    - Dst: silk_NLSF_VQ_weights_laroia
      Src: /src/opus/silk/process_NLSFs.c:67,1
    - Dst: silk_interpolate
      Src: /src/opus/silk/process_NLSFs.c:73,1
    - Dst: silk_NLSF_VQ_weights_laroia
      Src: /src/opus/silk/process_NLSFs.c:77,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/process_NLSFs.c:80,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/process_NLSFs.c:80,1
    - Dst: silk_ADD16
      Src: /src/opus/silk/process_NLSFs.c:82,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/process_NLSFs.c:82,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/process_NLSFs.c:82,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/process_NLSFs.c:83,1
    - Dst: silk_assert
      Src: /src/opus/silk/process_NLSFs.c:84,1
    - Dst: silk_NLSF_encode
      Src: /src/opus/silk/process_NLSFs.c:88,1
    - Dst: silk_NLSF2A
      Src: /src/opus/silk/process_NLSFs.c:92,1
    - Dst: silk_interpolate
      Src: /src/opus/silk/process_NLSFs.c:96,1
    - Dst: silk_NLSF2A
      Src: /src/opus/silk/process_NLSFs.c:100,1
    - Dst: celt_assert
      Src: /src/opus/silk/process_NLSFs.c:104,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/process_NLSFs.c:105,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 30
    argCount: 4
    argNames:
    - psEncC
    - PredCoef_Q12
    - pNLSF_Q15
    - prev_NLSFq_Q15
    argTypes:
    - silk_encoder_state*
    - opus_int16[][]
    - opus_int16[]
    - opus_int16[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 35
    functionDepth: 2
    functionLinenumber: 35
    functionLinenumberEnd: 107
    functionName: silk_process_NLSFs
    functionSourceFile: /src/opus/silk/process_NLSFs.c
    functionUses: 0
    functionsReached:
    - silk_NLSF_VQ_weights_laroia
    - celt_assert
    - silk_ADD_RSHIFT
    - silk_memcpy
    - silk_LSHIFT
    - silk_assert
    - silk_SMULBB
    - silk_interpolate
    - silk_ADD16
    - silk_RSHIFT
    - silk_NLSF2A
    - silk_SMLAWB
    - SILK_FIX_CONST
    - silk_NLSF_encode
    linkageType: ''
    returnType: void
    signature: "void silk_process_NLSFs(\n    silk_encoder_state          *psEncC,
      \                           /* I/O  Encoder state                               */\n
      \   opus_int16                  PredCoef_Q12[ 2 ][ MAX_LPC_ORDER ], /* O    Prediction
      coefficients                     */\n    opus_int16                  pNLSF_Q15[
      \        MAX_LPC_ORDER ], /* I/O  Normalized LSFs (quant out) (0 - (2^15-1))
      \ */\n    const opus_int16            prev_NLSFq_Q15[    MAX_LPC_ORDER ]  /*
      I    Previous Normalized LSFs (0 - (2^15-1))     */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_assert
      Src: /src/opus/silk/resampler_private_up2_HQ.c:48,1
    - Dst: silk_assert
      Src: /src/opus/silk/resampler_private_up2_HQ.c:49,1
    - Dst: silk_assert
      Src: /src/opus/silk/resampler_private_up2_HQ.c:50,1
    - Dst: silk_assert
      Src: /src/opus/silk/resampler_private_up2_HQ.c:51,1
    - Dst: silk_assert
      Src: /src/opus/silk/resampler_private_up2_HQ.c:52,1
    - Dst: silk_assert
      Src: /src/opus/silk/resampler_private_up2_HQ.c:53,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/resampler_private_up2_HQ.c:58,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/resampler_private_up2_HQ.c:61,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/resampler_private_up2_HQ.c:62,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_up2_HQ.c:63,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_up2_HQ.c:64,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/resampler_private_up2_HQ.c:67,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/resampler_private_up2_HQ.c:68,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_up2_HQ.c:69,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_up2_HQ.c:70,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/resampler_private_up2_HQ.c:73,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_up2_HQ.c:74,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_up2_HQ.c:75,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_up2_HQ.c:76,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/resampler_private_up2_HQ.c:79,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/resampler_private_up2_HQ.c:79,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/resampler_private_up2_HQ.c:82,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/resampler_private_up2_HQ.c:83,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_up2_HQ.c:84,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_up2_HQ.c:85,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/resampler_private_up2_HQ.c:88,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/resampler_private_up2_HQ.c:89,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_up2_HQ.c:90,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_up2_HQ.c:91,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/resampler_private_up2_HQ.c:94,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_up2_HQ.c:95,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_up2_HQ.c:96,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_up2_HQ.c:97,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/resampler_private_up2_HQ.c:100,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/resampler_private_up2_HQ.c:100,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 36
    argCount: 4
    argNames:
    - S
    - out
    - in
    - len
    argTypes:
    - opus_int32*
    - opus_int16*
    - opus_int16*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 102
    functionName: silk_resampler_private_up2_HQ
    functionSourceFile: /src/opus/silk/resampler_private_up2_HQ.c
    functionUses: 0
    functionsReached:
    - silk_LSHIFT
    - silk_assert
    - silk_SMULWB
    - silk_ADD32
    - silk_SAT16
    - silk_SUB32
    - silk_SMLAWB
    - silk_RSHIFT_ROUND
    linkageType: ''
    returnType: void
    signature: "void silk_resampler_private_up2_HQ(\n    opus_int32                      *S,
      \            /* I/O  Resampler state [ 6 ]       */\n    opus_int16                      *out,
      \          /* O    Output signal [ 2 * len ]   */\n    const opus_int16                *in,
      \           /* I    Input signal [ len ]        */\n    opus_int32                      len
      \            /* I    Number of input samples     */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_resampler_private_up2_HQ
      Src: /src/opus/silk/resampler_private_up2_HQ.c:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - SS
    - out
    - in
    - len
    argTypes:
    - void*
    - opus_int16*
    - opus_int16*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 104
    functionDepth: 2
    functionLinenumber: 104
    functionLinenumberEnd: 113
    functionName: silk_resampler_private_up2_HQ_wrapper
    functionSourceFile: /src/opus/silk/resampler_private_up2_HQ.c
    functionUses: 0
    functionsReached:
    - silk_resampler_private_up2_HQ
    linkageType: ''
    returnType: void
    signature: "void silk_resampler_private_up2_HQ_wrapper(\n    void                            *SS,
      \           /* I/O  Resampler state (unused)    */\n    opus_int16                      *out,
      \          /* O    Output signal [ 2 * len ]   */\n    const opus_int16                *in,
      \           /* I    Input signal [ len ]        */\n    opus_int32                      len
      \            /* I    Number of input samples     */\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - encSizeBytes
    - channels
    argTypes:
    - opus_int*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 74
    functionName: silk_Get_Encoder_Size
    functionSourceFile: /src/opus/silk/enc_API.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: opus_int
    signature: "opus_int silk_Get_Encoder_Size(                         /* O    Returns
      error code                              */\n    opus_int                        *encSizeBytes,
      \     /* O    Number of bytes in SILK encoder state           */\n    opus_int
      \                        channels           /* I    Number of channels                              */\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: silk_memset
      Src: /src/opus/silk/enc_API.c:92,1
    - Dst: silk_init_encoder
      Src: /src/opus/silk/enc_API.c:94,1
    - Dst: celt_assert
      Src: /src/opus/silk/enc_API.c:95,1
    - Dst: silk_QueryEncoder
      Src: /src/opus/silk/enc_API.c:103,1
    - Dst: celt_assert
      Src: /src/opus/silk/enc_API.c:104,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 4
    argNames:
    - encState
    - channels
    - arch
    - encStatus
    argTypes:
    - void*
    - int
    - int
    - silk_EncControlStruct*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 108
    functionName: silk_InitEncoder
    functionSourceFile: /src/opus/silk/enc_API.c
    functionUses: 2
    functionsReached:
    - celt_assert
    - silk_memset
    - silk_init_encoder
    - silk_QueryEncoder
    linkageType: ''
    returnType: opus_int
    signature: "opus_int silk_InitEncoder(                              /* O    Returns
      error code                              */\n    void                            *encState,
      \         /* I/O  State                                           */\n    int
      \                             channels,          /* I    Number of channels
      \                             */\n    int                              arch,
      \             /* I    Run-time architecture                           */\n    silk_EncControlStruct
      \          *encStatus          /* O    Encoder Status                                  */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_SMULBB
      Src: /src/opus/silk/enc_API.c:137,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 19
    argCount: 2
    argNames:
    - encState
    - encStatus
    argTypes:
    - void*
    - silk_EncControlStruct*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 142
    functionName: silk_QueryEncoder
    functionSourceFile: /src/opus/silk/enc_API.c
    functionUses: 1
    functionsReached:
    - silk_SMULBB
    linkageType: ''
    returnType: opus_int
    signature: "opus_int silk_QueryEncoder(                      /* O    Returns error
      code                              */\n    const void                      *encState,
      \         /* I    State                                           */\n    silk_EncControlStruct
      \          *encStatus          /* O    Encoder Status                                  */\n)"
  - BBCount: 50
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/silk/enc_API.c:167,1
    - Dst: celt_assert
      Src: /src/opus/silk/enc_API.c:171,1
    - Dst: check_control_input
      Src: /src/opus/silk/enc_API.c:182,1
    - Dst: celt_assert
      Src: /src/opus/silk/enc_API.c:183,1
    - Dst: silk_init_encoder
      Src: /src/opus/silk/enc_API.c:192,1
    - Dst: silk_memset
      Src: /src/opus/silk/enc_API.c:193,1
    - Dst: silk_memset
      Src: /src/opus/silk/enc_API.c:194,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/enc_API.c:200,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/enc_API.c:202,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/enc_API.c:203,1
    - Dst: silk_DIV32
      Src: /src/opus/silk/enc_API.c:212,1
    - Dst: celt_assert
      Src: /src/opus/silk/enc_API.c:219,1
    - Dst: silk_init_encoder
      Src: /src/opus/silk/enc_API.c:230,1
    - Dst: celt_assert
      Src: /src/opus/silk/enc_API.c:235,1
    - Dst: celt_assert
      Src: /src/opus/silk/enc_API.c:248,1
    - Dst: celt_assert
      Src: /src/opus/silk/enc_API.c:254,1
    - Dst: silk_control_encoder
      Src: /src/opus/silk/enc_API.c:263,1
    - Dst: silk_assert
      Src: /src/opus/silk/enc_API.c:264,1
    - Dst: celt_assert
      Src: /src/opus/silk/enc_API.c:275,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/enc_API.c:281,1
    - Dst: ALLOC
      Src: /src/opus/silk/enc_API.c:284,1
    - Dst: silk_min
      Src: /src/opus/silk/enc_API.c:288,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/enc_API.c:289,1
    - Dst: RES2INT16
      Src: /src/opus/silk/enc_API.c:294,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/enc_API.c:298,1
    - Dst: silk_resampler
      Src: /src/opus/silk/enc_API.c:301,1
    - Dst: silk_min
      Src: /src/opus/silk/enc_API.c:306,1
    - Dst: RES2INT16
      Src: /src/opus/silk/enc_API.c:308,1
    - Dst: silk_resampler
      Src: /src/opus/silk/enc_API.c:310,1
    - Dst: RES2INT16
      Src: /src/opus/silk/enc_API.c:317,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/enc_API.c:318,1
    - Dst: silk_resampler
      Src: /src/opus/silk/enc_API.c:320,1
    - Dst: silk_resampler
      Src: /src/opus/silk/enc_API.c:324,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/enc_API.c:328,1
    - Dst: celt_assert
      Src: /src/opus/silk/enc_API.c:334,1
    - Dst: RES2INT16
      Src: /src/opus/silk/enc_API.c:336,1
    - Dst: silk_resampler
      Src: /src/opus/silk/enc_API.c:338,1
    - Dst: celt_assert
      Src: /src/opus/silk/enc_API.c:352,1
    - Dst: celt_assert
      Src: /src/opus/silk/enc_API.c:353,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/enc_API.c:359,1
    - Dst: ec_enc_icdf
      Src: /src/opus/silk/enc_API.c:360,1
    - Dst: ec_tell
      Src: /src/opus/silk/enc_API.c:361,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/enc_API.c:368,1
    - Dst: ec_enc_icdf
      Src: /src/opus/silk/enc_API.c:372,1
    - Dst: silk_stereo_encode_pred
      Src: /src/opus/silk/enc_API.c:383,1
    - Dst: silk_stereo_encode_mid_only
      Src: /src/opus/silk/enc_API.c:386,1
    - Dst: silk_encode_indices
      Src: /src/opus/silk/enc_API.c:395,1
    - Dst: silk_encode_pulses
      Src: /src/opus/silk/enc_API.c:396,1
    - Dst: silk_memset
      Src: /src/opus/silk/enc_API.c:404,1
    - Dst: ec_tell
      Src: /src/opus/silk/enc_API.c:406,1
    - Dst: silk_HP_variable_cutoff
      Src: /src/opus/silk/enc_API.c:409,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/enc_API.c:412,1
    - Dst: silk_MUL
      Src: /src/opus/silk/enc_API.c:412,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/enc_API.c:428,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/enc_API.c:431,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/enc_API.c:433,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/enc_API.c:436,1
    - Dst: silk_MUL
      Src: /src/opus/silk/enc_API.c:436,1
    - Dst: ec_tell
      Src: /src/opus/silk/enc_API.c:439,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/enc_API.c:440,1
    - Dst: silk_MUL
      Src: /src/opus/silk/enc_API.c:440,1
    - Dst: silk_LIMIT
      Src: /src/opus/silk/enc_API.c:443,1
    - Dst: silk_stereo_LR_to_MS
      Src: /src/opus/silk/enc_API.c:447,1
    - Dst: silk_memset
      Src: /src/opus/silk/enc_API.c:454,1
    - Dst: silk_memset
      Src: /src/opus/silk/enc_API.c:455,1
    - Dst: silk_memset
      Src: /src/opus/silk/enc_API.c:456,1
    - Dst: silk_memset
      Src: /src/opus/silk/enc_API.c:457,1
    - Dst: silk_encode_do_VAD_Fxx
      Src: /src/opus/silk/enc_API.c:465,1
    - Dst: silk_stereo_encode_pred
      Src: /src/opus/silk/enc_API.c:470,1
    - Dst: silk_stereo_encode_mid_only
      Src: /src/opus/silk/enc_API.c:472,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/enc_API.c:477,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/enc_API.c:478,1
    - Dst: silk_encode_do_VAD_Fxx
      Src: /src/opus/silk/enc_API.c:480,1
    - Dst: silk_control_SNR
      Src: /src/opus/silk/enc_API.c:513,1
    - Dst: silk_encode_frame_Fxx
      Src: /src/opus/silk/enc_API.c:525,1
    - Dst: silk_assert
      Src: /src/opus/silk/enc_API.c:526,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/enc_API.c:540,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/enc_API.c:543,1
    - Dst: ec_enc_patch_initial_bits
      Src: /src/opus/silk/enc_API.c:547,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/enc_API.c:556,1
    - Dst: silk_MUL
      Src: /src/opus/silk/enc_API.c:556,1
    - Dst: silk_LIMIT
      Src: /src/opus/silk/enc_API.c:557,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/enc_API.c:560,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/enc_API.c:560,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/enc_API.c:561,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/enc_API.c:584,1
    CyclomaticComplexity: 96
    EdgeCount: 96
    ICount: 328
    argCount: 8
    argNames:
    - encState
    - encControl
    - samplesIn
    - nSamplesIn
    - psRangeEnc
    - nBytesOut
    - prefillFlag
    - activity
    argTypes:
    - void*
    - silk_EncControlStruct*
    - opus_res*
    - opus_int
    - ec_enc*
    - opus_int32*
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 601
      start: 150
    functionDepth: 2
    functionLinenumber: 150
    functionLinenumberEnd: 601
    functionName: silk_Encode
    functionSourceFile: /src/opus/silk/enc_API.c
    functionUses: 1
    functionsReached:
    - silk_stereo_encode_mid_only
    - silk_HP_variable_cutoff
    - silk_stereo_LR_to_MS
    - silk_DIV32
    - check_control_input
    - silk_SMULBB
    - silk_encode_frame_Fxx
    - silk_SMLAWB
    - ec_tell
    - silk_min
    - silk_encode_pulses
    - ec_enc_patch_initial_bits
    - silk_assert
    - silk_RSHIFT
    - silk_encode_indices
    - silk_resampler
    - VARDECL
    - ALLOC
    - ec_enc_icdf
    - silk_control_SNR
    - silk_MUL
    - celt_assert
    - silk_LSHIFT
    - silk_memset
    - silk_encode_do_VAD_Fxx
    - SILK_FIX_CONST
    - silk_DIV32_16
    - silk_init_encoder
    - silk_stereo_encode_pred
    - RES2INT16
    - silk_memcpy
    - silk_LIMIT
    - silk_control_encoder
    - silk_RSHIFT_ROUND
    linkageType: ''
    returnType: opus_int
    signature: "opus_int silk_Encode(                                   /* O    Returns
      error code                              */\n    void                            *encState,
      \         /* I/O  State                                           */\n    silk_EncControlStruct
      \          *encControl,        /* I    Control status                                  */\n
      \   const opus_res                  *samplesIn,         /* I    Speech sample
      input vector                      */\n    opus_int                        nSamplesIn,
      \        /* I    Number of samples in input vector               */\n    ec_enc
      \                         *psRangeEnc,        /* I/O  Compressor data structure
      \                      */\n    opus_int32                      *nBytesOut,         /*
      I/O  Number of bytes in payload (input: Max bytes)   */\n    const opus_int
      \                 prefillFlag,        /* I    Flag to indicate prefilling buffers
      no coding   */\n    opus_int                        activity            /* I
      \   Decision of Opus voice activity detector        */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_memcpy
      Src: /src/opus/silk/stereo_MS_to_LR.c:48,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/stereo_MS_to_LR.c:49,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/stereo_MS_to_LR.c:50,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/stereo_MS_to_LR.c:51,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/stereo_MS_to_LR.c:56,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/stereo_MS_to_LR.c:57,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/stereo_MS_to_LR.c:57,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/stereo_MS_to_LR.c:58,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/stereo_MS_to_LR.c:58,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/stereo_MS_to_LR.c:62,1
    - Dst: silk_ADD_LSHIFT32
      Src: /src/opus/silk/stereo_MS_to_LR.c:62,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/stereo_MS_to_LR.c:63,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/stereo_MS_to_LR.c:63,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/stereo_MS_to_LR.c:64,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/stereo_MS_to_LR.c:64,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/stereo_MS_to_LR.c:65,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/stereo_MS_to_LR.c:65,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/stereo_MS_to_LR.c:70,1
    - Dst: silk_ADD_LSHIFT32
      Src: /src/opus/silk/stereo_MS_to_LR.c:70,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/stereo_MS_to_LR.c:71,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/stereo_MS_to_LR.c:71,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/stereo_MS_to_LR.c:72,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/stereo_MS_to_LR.c:72,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/stereo_MS_to_LR.c:73,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/stereo_MS_to_LR.c:73,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/stereo_MS_to_LR.c:82,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/stereo_MS_to_LR.c:83,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 34
    argCount: 6
    argNames:
    - state
    - x1
    - x2
    - pred_Q13
    - fs_kHz
    - frame_length
    argTypes:
    - stereo_dec_state*
    - opus_int16[]
    - opus_int16[]
    - opus_int32[]
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 85
    functionName: silk_stereo_MS_to_LR
    functionSourceFile: /src/opus/silk/stereo_MS_to_LR.c
    functionUses: 0
    functionsReached:
    - silk_memcpy
    - silk_ADD_LSHIFT32
    - silk_LSHIFT
    - silk_SMULBB
    - silk_SAT16
    - silk_SMLAWB
    - silk_DIV32_16
    - silk_RSHIFT_ROUND
    linkageType: ''
    returnType: void
    signature: "void silk_stereo_MS_to_LR(\n    stereo_dec_state            *state,
      \                        /* I/O  State                                       */\n
      \   opus_int16                  x1[],                           /* I/O  Left
      input signal, becomes mid signal       */\n    opus_int16                  x2[],
      \                          /* I/O  Right input signal, becomes side signal     */\n
      \   const opus_int32            pred_Q13[],                     /* I    Predictors
      \                                 */\n    opus_int                    fs_kHz,
      \                        /* I    Samples rate (kHz)                          */\n
      \   opus_int                    frame_length                    /* I    Number
      of samples                           */\n)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: silk_gains_dequant
      Src: /src/opus/silk/decode_parameters.c:46,1
    - Dst: silk_NLSF_decode
      Src: /src/opus/silk/decode_parameters.c:52,1
    - Dst: silk_NLSF2A
      Src: /src/opus/silk/decode_parameters.c:55,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/decode_parameters.c:67,1
    - Dst: silk_MUL
      Src: /src/opus/silk/decode_parameters.c:67,1
    - Dst: silk_NLSF2A
      Src: /src/opus/silk/decode_parameters.c:72,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/decode_parameters.c:75,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/decode_parameters.c:78,1
    - Dst: silk_bwexpander
      Src: /src/opus/silk/decode_parameters.c:82,1
    - Dst: silk_bwexpander
      Src: /src/opus/silk/decode_parameters.c:83,1
    - Dst: silk_decode_pitch
      Src: /src/opus/silk/decode_parameters.c:92,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/decode_parameters.c:100,1
    - Dst: silk_memset
      Src: /src/opus/silk/decode_parameters.c:110,1
    - Dst: silk_memset
      Src: /src/opus/silk/decode_parameters.c:111,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 37
    argCount: 3
    argNames:
    - psDec
    - psDecCtrl
    - condCoding
    argTypes:
    - silk_decoder_state*
    - silk_decoder_control*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 115
    functionName: silk_decode_parameters
    functionSourceFile: /src/opus/silk/decode_parameters.c
    functionUses: 0
    functionsReached:
    - silk_memcpy
    - silk_LSHIFT
    - silk_memset
    - silk_NLSF_decode
    - silk_RSHIFT
    - silk_NLSF2A
    - silk_gains_dequant
    - silk_decode_pitch
    - silk_bwexpander
    - silk_MUL
    linkageType: ''
    returnType: void
    signature: "void silk_decode_parameters(\n    silk_decoder_state          *psDec,
      \                        /* I/O  State                                       */\n
      \   silk_decoder_control        *psDecCtrl,                     /* I/O  Decoder
      control                             */\n    opus_int                    condCoding
      \                     /* I    The type of conditional coding to use       */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/silk/LPC_analysis_filter.c:67,1
    - Dst: celt_assert
      Src: /src/opus/silk/LPC_analysis_filter.c:68,1
    - Dst: celt_assert
      Src: /src/opus/silk/LPC_analysis_filter.c:69,1
    - Dst: celt_assert
      Src: /src/opus/silk/LPC_analysis_filter.c:72,1
    - Dst: celt_fir
      Src: /src/opus/silk/LPC_analysis_filter.c:76,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/LPC_analysis_filter.c:85,1
    - Dst: silk_SMLABB_ovflw
      Src: /src/opus/silk/LPC_analysis_filter.c:88,1
    - Dst: silk_SMLABB_ovflw
      Src: /src/opus/silk/LPC_analysis_filter.c:89,1
    - Dst: silk_SMLABB_ovflw
      Src: /src/opus/silk/LPC_analysis_filter.c:90,1
    - Dst: silk_SMLABB_ovflw
      Src: /src/opus/silk/LPC_analysis_filter.c:91,1
    - Dst: silk_SMLABB_ovflw
      Src: /src/opus/silk/LPC_analysis_filter.c:92,1
    - Dst: silk_SMLABB_ovflw
      Src: /src/opus/silk/LPC_analysis_filter.c:94,1
    - Dst: silk_SMLABB_ovflw
      Src: /src/opus/silk/LPC_analysis_filter.c:95,1
    - Dst: silk_SUB32_ovflw
      Src: /src/opus/silk/LPC_analysis_filter.c:99,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/LPC_analysis_filter.c:99,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/LPC_analysis_filter.c:102,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/LPC_analysis_filter.c:105,1
    - Dst: silk_memset
      Src: /src/opus/silk/LPC_analysis_filter.c:109,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 30
    argCount: 6
    argNames:
    - out
    - in
    - B
    - len
    - d
    - arch
    argTypes:
    - opus_int16*
    - opus_int16*
    - opus_int16*
    - opus_int32
    - opus_int32
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 111
    functionName: silk_LPC_analysis_filter
    functionSourceFile: /src/opus/silk/LPC_analysis_filter.c
    functionUses: 2
    functionsReached:
    - celt_assert
    - celt_fir
    - silk_SUB32_ovflw
    - silk_LSHIFT
    - silk_memset
    - silk_SMULBB
    - silk_SAT16
    - silk_RSHIFT_ROUND
    - silk_SMLABB_ovflw
    linkageType: ''
    returnType: void
    signature: "void silk_LPC_analysis_filter(\n    opus_int16                  *out,
      \              /* O    Output signal                                               */\n
      \   const opus_int16            *in,                /* I    Input signal                                                */\n
      \   const opus_int16            *B,                 /* I    MA prediction coefficients,
      Q12 [order]                     */\n    const opus_int32            len,                /*
      I    Signal length                                               */\n    const
      opus_int32            d,                  /* I    Filter order                                                */\n
      \   int                         arch                /* I    Run-time architecture
      \                                      */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QueryPerformanceCounter
      Src: /src/opus/silk/debug.c:56,1
    - Dst: QueryPerformanceFrequency
      Src: /src/opus/silk/debug.c:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 59
    functionName: silk_GetHighResolutionTime
    functionSourceFile: /src/opus/silk/debug.c
    functionUses: 0
    functionsReached:
    - QueryPerformanceCounter
    - QueryPerformanceFrequency
    linkageType: ''
    returnType: unsigned long
    signature: unsigned long silk_GetHighResolutionTime(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: gettimeofday
      Src: /src/opus/silk/debug.c:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 66
    functionName: GetHighResolutionTime
    functionSourceFile: /src/opus/silk/debug.c
    functionUses: 0
    functionsReached:
    - gettimeofday
    linkageType: ''
    returnType: unsigned long
    signature: unsigned long GetHighResolutionTime(void)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: QueryPerformanceCounter
      Src: /src/opus/silk/debug.c:96,1
    - Dst: QueryPerformanceCounter
      Src: /src/opus/silk/debug.c:97,1
    - Dst: QueryPerformanceFrequency
      Src: /src/opus/silk/debug.c:102,1
    - Dst: fopen
      Src: /src/opus/silk/debug.c:110,1
    - Dst: fprintf
      Src: /src/opus/silk/debug.c:111,1
    - Dst: fprintf
      Src: /src/opus/silk/debug.c:114,1
    - Dst: fprintf
      Src: /src/opus/silk/debug.c:116,1
    - Dst: fprintf
      Src: /src/opus/silk/debug.c:118,1
    - Dst: fprintf
      Src: /src/opus/silk/debug.c:120,1
    - Dst: fprintf
      Src: /src/opus/silk/debug.c:122,1
    - Dst: fprintf
      Src: /src/opus/silk/debug.c:125,1
    - Dst: silk_max_64
      Src: /src/opus/silk/debug.c:125,1
    - Dst: fprintf
      Src: /src/opus/silk/debug.c:126,1
    - Dst: fprintf
      Src: /src/opus/silk/debug.c:127,1
    - Dst: silk_max_64
      Src: /src/opus/silk/debug.c:127,1
    - Dst: fprintf
      Src: /src/opus/silk/debug.c:128,1
    - Dst: fprintf
      Src: /src/opus/silk/debug.c:130,1
    - Dst: fclose
      Src: /src/opus/silk/debug.c:131,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 42
    argCount: 1
    argNames:
    - file_name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 133
    functionName: silk_TimerSave
    functionSourceFile: /src/opus/silk/debug.c
    functionUses: 1
    functionsReached:
    - QueryPerformanceFrequency
    - silk_max_64
    - fclose
    - QueryPerformanceCounter
    - fprintf
    - fopen
    linkageType: ''
    returnType: void
    signature: void silk_TimerSave(char *file_name)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: fopen
      Src: /src/opus/silk/debug.c:142,1
    - Dst: fprintf
      Src: /src/opus/silk/debug.c:143,1
    - Dst: fprintf
      Src: /src/opus/silk/debug.c:147,1
    - Dst: fprintf
      Src: /src/opus/silk/debug.c:149,1
    - Dst: fprintf
      Src: /src/opus/silk/debug.c:151,1
    - Dst: fprintf
      Src: /src/opus/silk/debug.c:153,1
    - Dst: fprintf
      Src: /src/opus/silk/debug.c:155,1
    - Dst: fprintf
      Src: /src/opus/silk/debug.c:157,1
    - Dst: fprintf
      Src: /src/opus/silk/debug.c:158,1
    - Dst: fprintf
      Src: /src/opus/silk/debug.c:159,1
    - Dst: fprintf
      Src: /src/opus/silk/debug.c:160,1
    - Dst: fprintf
      Src: /src/opus/silk/debug.c:162,1
    - Dst: fclose
      Src: /src/opus/silk/debug.c:163,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 1
    argNames:
    - file_name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 165
    functionName: silk_TimerSave
    functionSourceFile: /src/opus/silk/debug.c
    functionUses: 1
    functionsReached:
    - fclose
    - fopen
    - fprintf
    linkageType: ''
    returnType: void
    signature: void silk_TimerSave(char *file_name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/quant_LTP_gains.c:67,1
    - Dst: silk_log2lin
      Src: /src/opus/silk/quant_LTP_gains.c:82,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/quant_LTP_gains.c:82,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/quant_LTP_gains.c:83,1
    - Dst: silk_VQ_WMat_EC
      Src: /src/opus/silk/quant_LTP_gains.c:84,1
    - Dst: silk_ADD_POS_SAT32
      Src: /src/opus/silk/quant_LTP_gains.c:100,1
    - Dst: silk_ADD_POS_SAT32
      Src: /src/opus/silk/quant_LTP_gains.c:101,1
    - Dst: silk_max
      Src: /src/opus/silk/quant_LTP_gains.c:102,1
    - Dst: silk_lin2log
      Src: /src/opus/silk/quant_LTP_gains.c:103,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/quant_LTP_gains.c:103,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/quant_LTP_gains.c:112,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/quant_LTP_gains.c:120,1
    - Dst: silk_RSHIFT32
      Src: /src/opus/silk/quant_LTP_gains.c:125,1
    - Dst: silk_RSHIFT32
      Src: /src/opus/silk/quant_LTP_gains.c:127,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/quant_LTP_gains.c:131,1
    - Dst: silk_lin2log
      Src: /src/opus/silk/quant_LTP_gains.c:131,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 42
    argCount: 10
    argNames:
    - B_Q14
    - cbk_index
    - periodicity_index
    - sum_log_gain_Q7
    - pred_gain_dB_Q7
    - XX_Q17
    - xX_Q17
    - subfr_len
    - nb_subfr
    - arch
    argTypes:
    - opus_int16[]
    - opus_int8[]
    - opus_int8*
    - opus_int32*
    - opus_int*
    - opus_int32[]
    - opus_int32[]
    - opus_int
    - opus_int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 35
    functionDepth: 2
    functionLinenumber: 35
    functionLinenumberEnd: 132
    functionName: silk_quant_LTP_gains
    functionSourceFile: /src/opus/silk/quant_LTP_gains.c
    functionUses: 0
    functionsReached:
    - silk_memcpy
    - silk_VQ_WMat_EC
    - silk_LSHIFT
    - silk_SMULBB
    - silk_log2lin
    - silk_lin2log
    - silk_RSHIFT32
    - SILK_FIX_CONST
    - silk_ADD_POS_SAT32
    - silk_max
    linkageType: ''
    returnType: void
    signature: "void silk_quant_LTP_gains(\n    opus_int16                  B_Q14[
      MAX_NB_SUBFR * LTP_ORDER ],          /* O    Quantized LTP gains             */\n
      \   opus_int8                   cbk_index[ MAX_NB_SUBFR ],                  /*
      O    Codebook Index                  */\n    opus_int8                   *periodicity_index,
      \                        /* O    Periodicity Index               */\n    opus_int32
      \                 *sum_log_gain_Q7,                           /* I/O  Cumulative
      max prediction gain  */\n    opus_int                    *pred_gain_dB_Q7,                           /*
      O    LTP prediction gain             */\n    const opus_int32            XX_Q17[
      MAX_NB_SUBFR*LTP_ORDER*LTP_ORDER ], /* I    Correlation matrix in Q18       */\n
      \   const opus_int32            xX_Q17[ MAX_NB_SUBFR*LTP_ORDER ],           /*
      I    Correlation vector in Q18       */\n    const opus_int              subfr_len,
      \                                 /* I    Number of samples per subframe  */\n
      \   const opus_int              nb_subfr,                                   /*
      I    Number of subframes             */\n    int                         arch
      \                                       /* I    Run-time architecture           */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/silk/NLSF_VQ.c:49,1
    - Dst: silk_SUB_LSHIFT32
      Src: /src/opus/silk/NLSF_VQ.c:59,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/NLSF_VQ.c:60,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/NLSF_VQ.c:61,1
    - Dst: silk_abs
      Src: /src/opus/silk/NLSF_VQ.c:61,1
    - Dst: silk_SUB_RSHIFT32
      Src: /src/opus/silk/NLSF_VQ.c:61,1
    - Dst: silk_SUB_LSHIFT32
      Src: /src/opus/silk/NLSF_VQ.c:65,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/NLSF_VQ.c:66,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/NLSF_VQ.c:67,1
    - Dst: silk_abs
      Src: /src/opus/silk/NLSF_VQ.c:67,1
    - Dst: silk_SUB_RSHIFT32
      Src: /src/opus/silk/NLSF_VQ.c:67,1
    - Dst: silk_assert
      Src: /src/opus/silk/NLSF_VQ.c:70,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 6
    argNames:
    - err_Q24
    - in_Q15
    - pCB_Q8
    - pWght_Q9
    - K
    - LPC_order
    argTypes:
    - opus_int32[]
    - opus_int16[]
    - opus_uint8[]
    - opus_int16[]
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 76
    functionName: silk_NLSF_VQ
    functionSourceFile: /src/opus/silk/NLSF_VQ.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - silk_abs
    - silk_SUB_RSHIFT32
    - silk_assert
    - silk_SMULBB
    - silk_ADD32
    - silk_SUB_LSHIFT32
    linkageType: ''
    returnType: void
    signature: "void silk_NLSF_VQ(\n    opus_int32                  err_Q24[],                      /*
      O    Quantization errors [K]                     */\n    const opus_int16            in_Q15[],
      \                      /* I    Input vectors to be quantized [LPC_order]   */\n
      \   const opus_uint8            pCB_Q8[],                       /* I    Codebook
      vectors [K*LPC_order]              */\n    const opus_int16            pWght_Q9[],
      \                    /* I    Codebook weights [K*LPC_order]              */\n
      \   const opus_int              K,                              /* I    Number
      of codebook vectors                  */\n    const opus_int              LPC_order
      \                      /* I    Number of LPCs                              */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a32
    - ','
    - b32
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 44
    functionName: silk_SMULWB
    functionSourceFile: /src/opus/silk/macros.h
    functionUses: 12
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMULWB(a32, b32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a32
    - ','
    - b32
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 46
    functionName: silk_SMULWB
    functionSourceFile: /src/opus/silk/macros.h
    functionUses: 12
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMULWB(a32, b32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a32
    - ','
    - b32
    - ','
    - c32
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 51
    functionName: silk_SMLAWB
    functionSourceFile: /src/opus/silk/macros.h
    functionUses: 14
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMLAWB(a32, b32, c32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a32
    - ','
    - b32
    - ','
    - c32
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 53
    functionName: silk_SMLAWB
    functionSourceFile: /src/opus/silk/macros.h
    functionUses: 14
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMLAWB(a32, b32, c32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a32
    - ','
    - b32
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 58
    functionName: silk_SMULWT
    functionSourceFile: /src/opus/silk/macros.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMULWT(a32, b32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a32
    - ','
    - b32
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 60
    functionName: silk_SMULWT
    functionSourceFile: /src/opus/silk/macros.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMULWT(a32, b32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a32
    - ','
    - b32
    - ','
    - c32
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 65
    functionName: silk_SMLAWT
    functionSourceFile: /src/opus/silk/macros.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMLAWT(a32, b32, c32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a32
    - ','
    - b32
    - ','
    - c32
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 67
    functionName: silk_SMLAWT
    functionSourceFile: /src/opus/silk/macros.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMLAWT(a32, b32, c32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a32
    - ','
    - b32
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 71
    functionName: silk_SMULBB
    functionSourceFile: /src/opus/silk/macros.h
    functionUses: 18
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMULBB(a32, b32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a32
    - ','
    - b32
    - ','
    - c32
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 74
    functionName: silk_SMLABB
    functionSourceFile: /src/opus/silk/macros.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMLABB(a32, b32, c32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a32
    - ','
    - b32
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 77
    functionName: silk_SMULBT
    functionSourceFile: /src/opus/silk/macros.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMULBT(a32, b32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a32
    - ','
    - b32
    - ','
    - c32
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 80
    functionName: silk_SMLABT
    functionSourceFile: /src/opus/silk/macros.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMLABT(a32, b32, c32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a64
    - ','
    - b32
    - ','
    - c32
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 83
    functionName: silk_SMLAL
    functionSourceFile: /src/opus/silk/macros.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMLAL(a64, b32, c32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a32
    - ','
    - b32
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 87
    functionName: silk_SMULWW
    functionSourceFile: /src/opus/silk/macros.h
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMULWW(a32, b32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a32
    - ','
    - b32
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 89
    functionName: silk_SMULWW
    functionSourceFile: /src/opus/silk/macros.h
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMULWW(a32, b32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a32
    - ','
    - b32
    - ','
    - c32
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 94
    functionName: silk_SMLAWW
    functionSourceFile: /src/opus/silk/macros.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMLAWW(a32, b32, c32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a32
    - ','
    - b32
    - ','
    - c32
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 96
    functionName: silk_SMLAWW
    functionSourceFile: /src/opus/silk/macros.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMLAWW(a32, b32, c32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 102
    functionName: silk_ADD_SAT32
    functionSourceFile: /src/opus/silk/macros.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_ADD_SAT32(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 106
    functionName: silk_SUB_SAT32
    functionSourceFile: /src/opus/silk/macros.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SUB_SAT32(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EC_ILOG
      Src: /src/opus/silk/macros.h:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - in16
    argTypes:
    - opus_int16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 113
    functionDepth: 1
    functionLinenumber: 113
    functionLinenumberEnd: 116
    functionName: silk_CLZ16
    functionSourceFile: /src/opus/silk/macros.h
    functionUses: 0
    functionsReached:
    - EC_ILOG
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_CLZ16(opus_int16 in16)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EC_ILOG
      Src: /src/opus/silk/macros.h:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - in32
    argTypes:
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 120
    functionDepth: 1
    functionLinenumber: 120
    functionLinenumberEnd: 123
    functionName: silk_CLZ32
    functionSourceFile: /src/opus/silk/macros.h
    functionUses: 3
    functionsReached:
    - EC_ILOG
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_CLZ32(opus_int32 in32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - Matrix_base_adr
    - ','
    - row
    - ','
    - column
    - ','
    - N
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionName: matrix_ptr
    functionSourceFile: /src/opus/silk/macros.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: matrix_ptr(Matrix_base_adr, row, column, N)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - Matrix_base_adr
    - ','
    - row
    - ','
    - column
    - ','
    - N
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionName: matrix_adr
    functionSourceFile: /src/opus/silk/macros.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: matrix_adr(Matrix_base_adr, row, column, N)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - Matrix_base_adr
    - ','
    - row
    - ','
    - column
    - ','
    - M
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 136
    functionName: matrix_c_ptr
    functionSourceFile: /src/opus/silk/macros.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: matrix_c_ptr(Matrix_base_adr, row, column, M)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_SMULWW
      Src: /src/opus/silk/bwexpander_32.c:46,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/bwexpander_32.c:47,1
    - Dst: silk_MUL
      Src: /src/opus/silk/bwexpander_32.c:47,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/bwexpander_32.c:49,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - ar
    - d
    - chirp_Q16
    argTypes:
    - opus_int32*
    - opus_int
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 50
    functionName: silk_bwexpander_32
    functionSourceFile: /src/opus/silk/bwexpander_32.c
    functionUses: 1
    functionsReached:
    - silk_SMULWW
    - silk_MUL
    - silk_RSHIFT_ROUND
    linkageType: ''
    returnType: void
    signature: "void silk_bwexpander_32(\n    opus_int32                  *ar,                /*
      I/O  AR filter to be expanded (without leading 1)                */\n    const
      opus_int              d,                  /* I    Length of ar                                                */\n
      \   opus_int32                  chirp_Q16           /* I    Chirp factor in
      Q16                                         */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_ADD_LSHIFT32
      Src: /src/opus/silk/resampler_private_AR2.c:48,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/resampler_private_AR2.c:50,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_AR2.c:51,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/resampler_private_AR2.c:52,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 5
    argNames:
    - S
    - out_Q8
    - in
    - A_Q14
    - len
    argTypes:
    - opus_int32[]
    - opus_int32[]
    - opus_int16[]
    - opus_int16[]
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 54
    functionName: silk_resampler_private_AR2
    functionSourceFile: /src/opus/silk/resampler_private_AR2.c
    functionUses: 0
    functionsReached:
    - silk_SMULWB
    - silk_SMLAWB
    - silk_ADD_LSHIFT32
    - silk_LSHIFT
    linkageType: ''
    returnType: void
    signature: "void silk_resampler_private_AR2(\n    opus_int32                      S[],
      \           /* I/O  State vector [ 2 ]          */\n    opus_int32                      out_Q8[],
      \      /* O    Output signal               */\n    const opus_int16                in[],
      \          /* I    Input signal                */\n    const opus_int16                A_Q14[],
      \       /* I    AR coefficients, Q14        */\n    opus_int32                      len
      \            /* I    Signal length               */\n)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/silk/check_control_input.c:41,1
    - Dst: ENABLE_QEXT
      Src: /src/opus/silk/check_control_input.c:49,1
    - Dst: celt_assert
      Src: /src/opus/silk/check_control_input.c:65,1
    - Dst: celt_assert
      Src: /src/opus/silk/check_control_input.c:72,1
    - Dst: celt_assert
      Src: /src/opus/silk/check_control_input.c:76,1
    - Dst: celt_assert
      Src: /src/opus/silk/check_control_input.c:80,1
    - Dst: celt_assert
      Src: /src/opus/silk/check_control_input.c:84,1
    - Dst: celt_assert
      Src: /src/opus/silk/check_control_input.c:88,1
    - Dst: celt_assert
      Src: /src/opus/silk/check_control_input.c:92,1
    - Dst: celt_assert
      Src: /src/opus/silk/check_control_input.c:96,1
    - Dst: celt_assert
      Src: /src/opus/silk/check_control_input.c:100,1
    - Dst: celt_assert
      Src: /src/opus/silk/check_control_input.c:104,1
    CyclomaticComplexity: 39
    EdgeCount: 39
    ICount: 43
    argCount: 1
    argNames:
    - encControl
    argTypes:
    - silk_EncControlStruct*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 109
    functionName: check_control_input
    functionSourceFile: /src/opus/silk/check_control_input.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - ENABLE_QEXT
    linkageType: ''
    returnType: opus_int
    signature: "opus_int check_control_input(\n    silk_EncControlStruct        *encControl
      \                   /* I    Control structure                           */\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/HP_variable_cutoff.c:50,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/HP_variable_cutoff.c:50,1
    - Dst: silk_MUL
      Src: /src/opus/silk/HP_variable_cutoff.c:50,1
    - Dst: silk_lin2log
      Src: /src/opus/silk/HP_variable_cutoff.c:51,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/HP_variable_cutoff.c:55,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/HP_variable_cutoff.c:55,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/HP_variable_cutoff.c:55,1
    - Dst: silk_lin2log
      Src: /src/opus/silk/HP_variable_cutoff.c:56,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/HP_variable_cutoff.c:56,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/HP_variable_cutoff.c:59,1
    - Dst: silk_MUL
      Src: /src/opus/silk/HP_variable_cutoff.c:62,1
    - Dst: silk_LIMIT_32
      Src: /src/opus/silk/HP_variable_cutoff.c:66,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/HP_variable_cutoff.c:66,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/HP_variable_cutoff.c:66,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/HP_variable_cutoff.c:69,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/HP_variable_cutoff.c:70,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/HP_variable_cutoff.c:70,1
    - Dst: silk_LIMIT_32
      Src: /src/opus/silk/HP_variable_cutoff.c:73,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/HP_variable_cutoff.c:74,1
    - Dst: silk_lin2log
      Src: /src/opus/silk/HP_variable_cutoff.c:74,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/HP_variable_cutoff.c:75,1
    - Dst: silk_lin2log
      Src: /src/opus/silk/HP_variable_cutoff.c:75,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 1
    argNames:
    - state_Fxx
    argTypes:
    - silk_encoder_state_Fxx[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 39
    functionDepth: 2
    functionLinenumber: 39
    functionLinenumberEnd: 77
    functionName: silk_HP_variable_cutoff
    functionSourceFile: /src/opus/silk/HP_variable_cutoff.c
    functionUses: 1
    functionsReached:
    - silk_LSHIFT
    - silk_RSHIFT
    - silk_SMULWB
    - silk_SMULBB
    - silk_LIMIT_32
    - silk_SMLAWB
    - silk_lin2log
    - SILK_FIX_CONST
    - silk_DIV32_16
    - silk_MUL
    linkageType: ''
    returnType: void
    signature: "void silk_HP_variable_cutoff(\n    silk_encoder_state_Fxx          state_Fxx[]
      \                        /* I/O  Encoder states                              */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - TAG_NAME
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 121
    functionName: TIC
    functionSourceFile: /src/opus/silk/debug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TIC(TAG_NAME)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - TAG_NAME
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 149
    functionName: TIC
    functionSourceFile: /src/opus/silk/debug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TIC(TAG_NAME)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - TAG_NAME
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 180
    functionName: TOC
    functionSourceFile: /src/opus/silk/debug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TOC(TAG_NAME)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - TAG_NAME
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 209
    functionName: TOC
    functionSourceFile: /src/opus/silk/debug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TOC(TAG_NAME)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - FILE_NAME
    - ','
    - DATA_PTR
    - ','
    - N_BYTES
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 232
    functionDepth: 0
    functionLinenumber: 232
    functionLinenumberEnd: 242
    functionName: DEBUG_STORE_DATA
    functionSourceFile: /src/opus/silk/debug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DEBUG_STORE_DATA( FILE_NAME, DATA_PTR, N_BYTES )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionName: silk_SaveCount
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SaveCount()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 47
    functionName: silk_SaveResetCount
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SaveResetCount()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/opus/silk/MacroCount.h:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: silk_PrintCount
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached:
    - printf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_PrintCount()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a32
    - b32
    argTypes:
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 59
    functionName: silk_MUL
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_MUL(opus_int32 a32, opus_int32 b32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a32
    - b32
    argTypes:
    - opus_uint32
    - opus_uint32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 67
    functionName: opus_uint32::silk_MUL_uint
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE opus_uint32 silk_MUL_uint(opus_uint32 a32, opus_uint32
      b32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - a32
    - b32
    - c32
    argTypes:
    - opus_int32
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 74
    functionName: silk_MLA
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_MLA(opus_int32 a32, opus_int32 b32, opus_int32 c32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - a32
    - b32
    - c32
    argTypes:
    - opus_uint32
    - opus_uint32
    - opus_uint32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 82
    functionName: silk_MLA_uint
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_MLA_uint(opus_uint32 a32, opus_uint32 b32, opus_uint32
      c32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a32
    - b32
    argTypes:
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 90
    functionName: silk_SMULWB
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 14
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SMULWB(opus_int32 a32, opus_int32 b32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - a32
    - b32
    - c32
    argTypes:
    - opus_int32
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 97
    functionName: silk_SMLAWB
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 16
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SMLAWB(opus_int32 a32, opus_int32 b32, opus_int32
      c32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a32
    - b32
    argTypes:
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 105
    functionName: silk_SMULWT
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SMULWT(opus_int32 a32, opus_int32 b32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - a32
    - b32
    - c32
    argTypes:
    - opus_int32
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 112
    functionName: silk_SMLAWT
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SMLAWT(opus_int32 a32, opus_int32 b32, opus_int32
      c32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a32
    - b32
    argTypes:
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 120
    functionName: silk_SMULBB
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 19
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SMULBB(opus_int32 a32, opus_int32 b32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - a32
    - b32
    - c32
    argTypes:
    - opus_int32
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 127
    functionName: silk_SMLABB
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SMLABB(opus_int32 a32, opus_int32 b32, opus_int32
      c32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a32
    - b32
    argTypes:
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 135
    functionName: silk_SMULBT
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SMULBT(opus_int32 a32, opus_int32 b32 )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - a32
    - b32
    - c32
    argTypes:
    - opus_int32
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 143
    functionName: silk_SMLABT
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SMLABT(opus_int32 a32, opus_int32 b32, opus_int32
      c32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a32
    - b32
    argTypes:
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 151
    functionName: silk_SMULTT
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SMULTT(opus_int32 a32, opus_int32 b32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - a32
    - b32
    - c32
    argTypes:
    - opus_int32
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 159
    functionName: silk_SMLATT
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SMLATT(opus_int32 a32, opus_int32 b32, opus_int32
      c32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a32
    - b32
    argTypes:
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 187
    functionName: silk_SMULL
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SMULL(opus_int32 a32, opus_int32 b32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - a64
    - b32
    - c32
    argTypes:
    - opus_int64
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 195
    functionName: silk_SMLAL
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SMLAL(opus_int64 a64, opus_int32 b32, opus_int32 c32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - a64
    - b16
    - c16
    argTypes:
    - opus_int64
    - opus_int16
    - opus_int16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 202
    functionName: silk_SMLALBB
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SMLALBB(opus_int64 a64, opus_int16 b16, opus_int16
      c16)
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 1
    argNames:
    - in16
    argTypes:
    - opus_int16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 240
    functionName: SigProcFIX_CLZ16
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE SigProcFIX_CLZ16(opus_int16 in16)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SigProcFIX_CLZ16
      Src: /src/opus/silk/MacroCount.h:248,1
    - Dst: SigProcFIX_CLZ16
      Src: /src/opus/silk/MacroCount.h:250,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - in32
    argTypes:
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 243
    functionDepth: 1
    functionLinenumber: 243
    functionLinenumberEnd: 252
    functionName: SigProcFIX_CLZ32
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached:
    - SigProcFIX_CLZ16
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE SigProcFIX_CLZ32(opus_int32 in32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a32
    - b32
    argTypes:
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 255
    functionDepth: 0
    functionLinenumber: 255
    functionLinenumberEnd: 258
    functionName: silk_DIV32
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_DIV32(opus_int32 a32, opus_int32 b32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a32
    - b32
    argTypes:
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 261
    functionDepth: 0
    functionLinenumber: 261
    functionLinenumberEnd: 264
    functionName: silk_DIV32_16
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 14
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_DIV32_16(opus_int32 a32, opus_int32 b32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - a
    argTypes:
    - opus_int64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 267
    functionDepth: 0
    functionLinenumber: 267
    functionLinenumberEnd: 273
    functionName: silk_SAT8
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SAT8(opus_int64 a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - a
    argTypes:
    - opus_int64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 276
    functionDepth: 0
    functionLinenumber: 276
    functionLinenumberEnd: 282
    functionName: silk_SAT16
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SAT16(opus_int64 a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - a
    argTypes:
    - opus_int64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 284
    functionDepth: 0
    functionLinenumber: 284
    functionLinenumberEnd: 290
    functionName: silk_SAT32
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SAT32(opus_int64 a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - a
    argTypes:
    - opus_int64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 292
    functionDepth: 0
    functionLinenumber: 292
    functionLinenumberEnd: 297
    functionName: silk_POS_SAT32
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_POS_SAT32(opus_int64 a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int64
    - opus_int64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 300
    functionDepth: 0
    functionLinenumber: 300
    functionLinenumberEnd: 305
    functionName: silk_ADD_POS_SAT8
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_ADD_POS_SAT8(opus_int64 a, opus_int64 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int64
    - opus_int64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 307
    functionDepth: 0
    functionLinenumber: 307
    functionLinenumberEnd: 312
    functionName: silk_ADD_POS_SAT16
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_ADD_POS_SAT16(opus_int64 a, opus_int64 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int64
    - opus_int64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 315
    functionDepth: 0
    functionLinenumber: 315
    functionLinenumberEnd: 320
    functionName: silk_ADD_POS_SAT32
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_ADD_POS_SAT32(opus_int64 a, opus_int64 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a
    - shift
    argTypes:
    - opus_int8
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 323
    functionDepth: 0
    functionLinenumber: 323
    functionLinenumberEnd: 328
    functionName: silk_LSHIFT8
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_LSHIFT8(opus_int8 a, opus_int32 shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a
    - shift
    argTypes:
    - opus_int16
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 335
      start: 330
    functionDepth: 0
    functionLinenumber: 330
    functionLinenumberEnd: 335
    functionName: silk_LSHIFT16
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_LSHIFT16(opus_int16 a, opus_int32 shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a
    - shift
    argTypes:
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 337
    functionDepth: 0
    functionLinenumber: 337
    functionLinenumberEnd: 342
    functionName: silk_LSHIFT32
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_LSHIFT32(opus_int32 a, opus_int32 shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - shift
    argTypes:
    - opus_int64
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 344
    functionDepth: 0
    functionLinenumber: 344
    functionLinenumberEnd: 347
    functionName: silk_LSHIFT64
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_LSHIFT64(opus_int64 a, opus_int shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - shift
    argTypes:
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 353
      start: 350
    functionDepth: 0
    functionLinenumber: 350
    functionLinenumberEnd: 353
    functionName: silk_LSHIFT_ovflw
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_LSHIFT_ovflw(opus_int32 a, opus_int32 shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a
    - shift
    argTypes:
    - opus_uint32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 361
      start: 356
    functionDepth: 0
    functionLinenumber: 356
    functionLinenumberEnd: 361
    functionName: opus_uint32::silk_LSHIFT_uint
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE opus_uint32 silk_LSHIFT_uint(opus_uint32 a, opus_int32
      shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - shift
    argTypes:
    - opus_int8
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 367
      start: 364
    functionDepth: 0
    functionLinenumber: 364
    functionLinenumberEnd: 367
    functionName: silk_RSHIFT8
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_RSHIFT8(opus_int8 a, opus_int32 shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - shift
    argTypes:
    - opus_int16
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 372
      start: 369
    functionDepth: 0
    functionLinenumber: 369
    functionLinenumberEnd: 372
    functionName: silk_RSHIFT16
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_RSHIFT16(opus_int16 a, opus_int32 shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - shift
    argTypes:
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 374
    functionDepth: 0
    functionLinenumber: 374
    functionLinenumberEnd: 377
    functionName: silk_RSHIFT32
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_RSHIFT32(opus_int32 a, opus_int32 shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - shift
    argTypes:
    - opus_int64
    - opus_int64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 382
      start: 379
    functionDepth: 0
    functionLinenumber: 379
    functionLinenumberEnd: 382
    functionName: silk_RSHIFT64
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_RSHIFT64(opus_int64 a, opus_int64 shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - shift
    argTypes:
    - opus_uint32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 385
    functionDepth: 0
    functionLinenumber: 385
    functionLinenumberEnd: 388
    functionName: opus_uint32::silk_RSHIFT_uint
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE opus_uint32 silk_RSHIFT_uint(opus_uint32 a, opus_int32
      shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - a
    - b
    - shift
    argTypes:
    - opus_int32
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 396
      start: 391
    functionDepth: 0
    functionLinenumber: 391
    functionLinenumberEnd: 396
    functionName: silk_ADD_LSHIFT
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_ADD_LSHIFT(opus_int32 a, opus_int32 b, opus_int32
      shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - a
    - b
    - shift
    argTypes:
    - opus_int32
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 398
    functionDepth: 0
    functionLinenumber: 398
    functionLinenumberEnd: 403
    functionName: silk_ADD_LSHIFT32
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_ADD_LSHIFT32(opus_int32 a, opus_int32 b, opus_int32
      shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - a
    - b
    - shift
    argTypes:
    - opus_uint32
    - opus_uint32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 410
      start: 405
    functionDepth: 0
    functionLinenumber: 405
    functionLinenumberEnd: 410
    functionName: opus_uint32::silk_ADD_LSHIFT_uint
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE opus_uint32 silk_ADD_LSHIFT_uint(opus_uint32 a, opus_uint32
      b, opus_int32 shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - a
    - b
    - shift
    argTypes:
    - opus_int32
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 417
      start: 412
    functionDepth: 0
    functionLinenumber: 412
    functionLinenumberEnd: 417
    functionName: silk_ADD_RSHIFT
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_ADD_RSHIFT(opus_int32 a, opus_int32 b, opus_int32
      shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - a
    - b
    - shift
    argTypes:
    - opus_int32
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 424
      start: 419
    functionDepth: 0
    functionLinenumber: 419
    functionLinenumberEnd: 424
    functionName: silk_ADD_RSHIFT32
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_ADD_RSHIFT32(opus_int32 a, opus_int32 b, opus_int32
      shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - a
    - b
    - shift
    argTypes:
    - opus_uint32
    - opus_uint32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 431
      start: 426
    functionDepth: 0
    functionLinenumber: 426
    functionLinenumberEnd: 431
    functionName: opus_uint32::silk_ADD_RSHIFT_uint
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE opus_uint32 silk_ADD_RSHIFT_uint(opus_uint32 a, opus_uint32
      b, opus_int32 shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - a
    - b
    - shift
    argTypes:
    - opus_int32
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 438
      start: 433
    functionDepth: 0
    functionLinenumber: 433
    functionLinenumberEnd: 438
    functionName: silk_SUB_LSHIFT32
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SUB_LSHIFT32(opus_int32 a, opus_int32 b, opus_int32
      shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - a
    - b
    - shift
    argTypes:
    - opus_int32
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 445
      start: 440
    functionDepth: 0
    functionLinenumber: 440
    functionLinenumberEnd: 445
    functionName: silk_SUB_RSHIFT32
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SUB_RSHIFT32(opus_int32 a, opus_int32 b, opus_int32
      shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a
    - shift
    argTypes:
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 453
      start: 448
    functionDepth: 0
    functionLinenumber: 448
    functionLinenumberEnd: 453
    functionName: silk_RSHIFT_ROUND
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 13
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_RSHIFT_ROUND(opus_int32 a, opus_int32 shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a
    - shift
    argTypes:
    - opus_int64
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 461
      start: 456
    functionDepth: 0
    functionLinenumber: 456
    functionLinenumberEnd: 461
    functionName: silk_RSHIFT_ROUND64
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_RSHIFT_ROUND64(opus_int64 a, opus_int32 shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - a
    argTypes:
    - opus_int64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 467
      start: 464
    functionDepth: 0
    functionLinenumber: 464
    functionLinenumberEnd: 467
    functionName: silk_abs_int64
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_abs_int64(opus_int64 a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_abs
      Src: /src/opus/silk/MacroCount.h:472,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - a
    argTypes:
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 473
      start: 470
    functionDepth: 1
    functionLinenumber: 470
    functionLinenumberEnd: 473
    functionName: silk_abs_int32
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached:
    - silk_abs
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_abs_int32(opus_int32 a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 480
      start: 477
    functionDepth: 0
    functionLinenumber: 477
    functionLinenumberEnd: 480
    functionName: silk_min
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void silk_min(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 485
      start: 482
    functionDepth: 0
    functionLinenumber: 482
    functionLinenumberEnd: 485
    functionName: silk_max
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void silk_max(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 490
      start: 487
    functionDepth: 0
    functionLinenumber: 487
    functionLinenumberEnd: 490
    functionName: silk_sign
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void silk_sign(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int16
    - opus_int16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 498
      start: 493
    functionDepth: 0
    functionLinenumber: 493
    functionLinenumberEnd: 498
    functionName: silk_ADD16
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_ADD16(opus_int16 a, opus_int16 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 501
    functionDepth: 0
    functionLinenumber: 501
    functionLinenumberEnd: 506
    functionName: silk_ADD32
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_ADD32(opus_int32 a, opus_int32 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int64
    - opus_int64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 514
      start: 509
    functionDepth: 0
    functionLinenumber: 509
    functionLinenumberEnd: 514
    functionName: silk_ADD64
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_ADD64(opus_int64 a, opus_int64 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int16
    - opus_int16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 522
      start: 517
    functionDepth: 0
    functionLinenumber: 517
    functionLinenumberEnd: 522
    functionName: silk_SUB16
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SUB16(opus_int16 a, opus_int16 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 530
      start: 525
    functionDepth: 0
    functionLinenumber: 525
    functionLinenumberEnd: 530
    functionName: silk_SUB32
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SUB32(opus_int32 a, opus_int32 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int64
    - opus_int64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 538
      start: 533
    functionDepth: 0
    functionLinenumber: 533
    functionLinenumberEnd: 538
    functionName: silk_SUB64
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SUB64(opus_int64 a, opus_int64 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_SAT16
      Src: /src/opus/silk/MacroCount.h:544,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/MacroCount.h:544,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a16
    - b16
    argTypes:
    - opus_int16
    - opus_int16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 546
      start: 541
    functionDepth: 0
    functionLinenumber: 541
    functionLinenumberEnd: 546
    functionName: silk_ADD_SAT16
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 1
    functionsReached:
    - silk_ADD32
    - silk_SAT16
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_ADD_SAT16( opus_int16 a16, opus_int16 b16 )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a32
    - b32
    argTypes:
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 556
      start: 549
    functionDepth: 0
    functionLinenumber: 549
    functionLinenumberEnd: 556
    functionName: silk_ADD_SAT32
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_ADD_SAT32(opus_int32 a32, opus_int32 b32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a64
    - b64
    argTypes:
    - opus_int64
    - opus_int64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 566
      start: 559
    functionDepth: 0
    functionLinenumber: 559
    functionLinenumberEnd: 566
    functionName: silk_ADD_SAT64
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_ADD_SAT64( opus_int64 a64, opus_int64 b64 )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_assert
      Src: /src/opus/silk/MacroCount.h:571,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/MacroCount.h:573,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/MacroCount.h:573,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a16
    - b16
    argTypes:
    - opus_int16
    - opus_int16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 575
      start: 569
    functionDepth: 1
    functionLinenumber: 569
    functionLinenumberEnd: 575
    functionName: silk_SUB_SAT16
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached:
    - silk_SUB32
    - silk_assert
    - silk_SAT16
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SUB_SAT16( opus_int16 a16, opus_int16 b16 )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a32
    - b32
    argTypes:
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 585
      start: 578
    functionDepth: 0
    functionLinenumber: 578
    functionLinenumberEnd: 585
    functionName: silk_SUB_SAT32
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SUB_SAT32( opus_int32 a32, opus_int32 b32 )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a64
    - b64
    argTypes:
    - opus_int64
    - opus_int64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 596
      start: 588
    functionDepth: 0
    functionLinenumber: 588
    functionLinenumberEnd: 596
    functionName: silk_SUB_SAT64
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SUB_SAT64( opus_int64 a64, opus_int64 b64 )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_MLA
      Src: /src/opus/silk/MacroCount.h:602,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/MacroCount.h:602,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/MacroCount.h:602,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a32
    - b32
    argTypes:
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 604
      start: 599
    functionDepth: 0
    functionLinenumber: 599
    functionLinenumberEnd: 604
    functionName: silk_SMULWW
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 9
    functionsReached:
    - silk_RSHIFT_ROUND
    - silk_SMULWB
    - silk_MLA
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SMULWW(opus_int32 a32, opus_int32 b32)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_MLA
      Src: /src/opus/silk/MacroCount.h:610,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/MacroCount.h:610,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/MacroCount.h:610,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - a32
    - b32
    - c32
    argTypes:
    - opus_int32
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 607
    functionDepth: 0
    functionLinenumber: 607
    functionLinenumberEnd: 612
    functionName: silk_SMLAWW
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 1
    functionsReached:
    - silk_SMLAWB
    - silk_RSHIFT_ROUND
    - silk_MLA
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SMLAWW(opus_int32 a32, opus_int32 b32, opus_int32
      c32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 619
      start: 615
    functionDepth: 0
    functionLinenumber: 615
    functionLinenumberEnd: 619
    functionName: silk_min_int
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_min_int(opus_int a, opus_int b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int16
    - opus_int16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 626
      start: 622
    functionDepth: 0
    functionLinenumber: 622
    functionLinenumberEnd: 626
    functionName: silk_min_16
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_min_16(opus_int16 a, opus_int16 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 632
      start: 628
    functionDepth: 0
    functionLinenumber: 628
    functionLinenumberEnd: 632
    functionName: silk_min_32
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_min_32(opus_int32 a, opus_int32 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int64
    - opus_int64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 638
      start: 634
    functionDepth: 0
    functionLinenumber: 634
    functionLinenumberEnd: 638
    functionName: silk_min_64
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_min_64(opus_int64 a, opus_int64 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 646
      start: 642
    functionDepth: 0
    functionLinenumber: 642
    functionLinenumberEnd: 646
    functionName: silk_max_int
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_max_int(opus_int a, opus_int b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int16
    - opus_int16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 652
      start: 648
    functionDepth: 0
    functionLinenumber: 648
    functionLinenumberEnd: 652
    functionName: silk_max_16
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_max_16(opus_int16 a, opus_int16 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 658
      start: 654
    functionDepth: 0
    functionLinenumber: 654
    functionLinenumberEnd: 658
    functionName: silk_max_32
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_max_32(opus_int32 a, opus_int32 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int64
    - opus_int64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 665
      start: 661
    functionDepth: 0
    functionLinenumber: 661
    functionLinenumberEnd: 665
    functionName: silk_max_64
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_max_64(opus_int64 a, opus_int64 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - a
    - limit1
    - limit2
    argTypes:
    - opus_int
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 678
      start: 669
    functionDepth: 0
    functionLinenumber: 669
    functionLinenumberEnd: 678
    functionName: silk_LIMIT_int
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_LIMIT_int(opus_int a, opus_int limit1, opus_int limit2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - a
    - limit1
    - limit2
    argTypes:
    - opus_int16
    - opus_int16
    - opus_int16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 690
      start: 681
    functionDepth: 0
    functionLinenumber: 681
    functionLinenumberEnd: 690
    functionName: silk_LIMIT_16
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_LIMIT_16(opus_int16 a, opus_int16 limit1, opus_int16
      limit2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - a
    - limit1
    - limit2
    argTypes:
    - opus_int32
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 702
      start: 694
    functionDepth: 0
    functionLinenumber: 694
    functionLinenumberEnd: 702
    functionName: silk_LIMIT_32
    functionSourceFile: /src/opus/silk/MacroCount.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_LIMIT_32(opus_int32 a, opus_int32 limit1, opus_int32
      limit2)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/silk/sort.c:51,1
    - Dst: celt_assert
      Src: /src/opus/silk/sort.c:52,1
    - Dst: celt_assert
      Src: /src/opus/silk/sort.c:53,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 4
    argNames:
    - a
    - idx
    - L
    - K
    argTypes:
    - opus_int32*
    - opus_int*
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 84
    functionName: silk_insertion_sort_increasing
    functionSourceFile: /src/opus/silk/sort.c
    functionUses: 0
    functionsReached:
    - celt_assert
    linkageType: ''
    returnType: void
    signature: "void silk_insertion_sort_increasing(\n    opus_int32           *a,
      \            /* I/O   Unsorted / Sorted vector               */\n    opus_int
      \            *idx,           /* O     Index vector for the sorted elements   */\n
      \   const opus_int       L,              /* I     Vector length                          */\n
      \   const opus_int       K               /* I     Number of correctly sorted
      positions   */\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/silk/sort.c:99,1
    - Dst: celt_assert
      Src: /src/opus/silk/sort.c:100,1
    - Dst: celt_assert
      Src: /src/opus/silk/sort.c:101,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 4
    argNames:
    - a
    - idx
    - L
    - K
    argTypes:
    - opus_int16*
    - opus_int*
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 132
    functionName: silk_insertion_sort_decreasing_int16
    functionSourceFile: /src/opus/silk/sort.c
    functionUses: 0
    functionsReached:
    - celt_assert
    linkageType: ''
    returnType: void
    signature: "void silk_insertion_sort_decreasing_int16(\n    opus_int16                  *a,
      \                /* I/O   Unsorted / Sorted vector                                   */\n
      \   opus_int                    *idx,               /* O     Index vector for
      the sorted elements                       */\n    const opus_int              L,
      \                 /* I     Vector length                                              */\n
      \   const opus_int              K                   /* I     Number of correctly
      sorted positions                       */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/silk/sort.c:144,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - a
    - L
    argTypes:
    - opus_int16*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 135
    functionDepth: 1
    functionLinenumber: 135
    functionLinenumberEnd: 154
    functionName: silk_insertion_sort_increasing_all_values_int16
    functionSourceFile: /src/opus/silk/sort.c
    functionUses: 0
    functionsReached:
    - celt_assert
    linkageType: ''
    returnType: void
    signature: "void silk_insertion_sort_increasing_all_values_int16(\n     opus_int16
      \                *a,                 /* I/O   Unsorted / Sorted vector                                   */\n
      \    const opus_int             L                   /* I     Vector length                                              */\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/silk/decode_frame.c:59,1
    - Dst: ALLOC
      Src: /src/opus/silk/decode_frame.c:64,1
    - Dst: celt_assert
      Src: /src/opus/silk/decode_frame.c:68,1
    - Dst: VARDECL
      Src: /src/opus/silk/decode_frame.c:73,1
    - Dst: ec_tell
      Src: /src/opus/silk/decode_frame.c:76,1
    - Dst: ALLOC
      Src: /src/opus/silk/decode_frame.c:78,1
    - Dst: silk_decode_indices
      Src: /src/opus/silk/decode_frame.c:83,1
    - Dst: silk_decode_pulses
      Src: /src/opus/silk/decode_frame.c:88,1
    - Dst: silk_decode_parameters
      Src: /src/opus/silk/decode_frame.c:94,1
    - Dst: silk_decode_core
      Src: /src/opus/silk/decode_frame.c:99,1
    - Dst: celt_assert
      Src: /src/opus/silk/decode_frame.c:104,1
    - Dst: silk_memmove
      Src: /src/opus/silk/decode_frame.c:106,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/decode_frame.c:107,1
    - Dst: osce_enhance_frame
      Src: /src/opus/silk/decode_frame.c:113,1
    - Dst: ec_tell
      Src: /src/opus/silk/decode_frame.c:113,1
    - Dst: silk_PLC
      Src: /src/opus/silk/decode_frame.c:119,1
    - Dst: celt_assert
      Src: /src/opus/silk/decode_frame.c:127,1
    - Dst: silk_PLC
      Src: /src/opus/silk/decode_frame.c:133,1
    - Dst: osce_reset
      Src: /src/opus/silk/decode_frame.c:140,1
    - Dst: celt_assert
      Src: /src/opus/silk/decode_frame.c:145,1
    - Dst: silk_memmove
      Src: /src/opus/silk/decode_frame.c:147,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/decode_frame.c:148,1
    - Dst: silk_CNG
      Src: /src/opus/silk/decode_frame.c:154,1
    - Dst: silk_PLC_glue_frames
      Src: /src/opus/silk/decode_frame.c:159,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 39
    argCount: 9
    argNames:
    - psDec
    - psRangeDec
    - pOut
    - pN
    - lostFlag
    - condCoding
    - LPCNetPLCState              *lpcnet
    - osce_model
    - arch
    argTypes:
    - silk_decoder_state*
    - ec_dec*
    - opus_int16[]
    - opus_int32*
    - opus_int
    - opus_int
    - ENABLE_DEEP_PLC
    - ENABLE_OSCE*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 43
    functionDepth: 3
    functionLinenumber: 43
    functionLinenumberEnd: 169
    functionName: silk_decode_frame
    functionSourceFile: /src/opus/silk/decode_frame.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - silk_decode_indices
    - ec_tell
    - silk_decode_core
    - silk_memcpy
    - silk_PLC
    - silk_decode_parameters
    - silk_PLC_glue_frames
    - VARDECL
    - ALLOC
    - silk_memmove
    - osce_reset
    - silk_CNG
    - silk_decode_pulses
    - osce_enhance_frame
    linkageType: ''
    returnType: opus_int
    signature: "opus_int silk_decode_frame(\n    silk_decoder_state          *psDec,
      \                        /* I/O  Pointer to Silk decoder state               */\n
      \   ec_dec                      *psRangeDec,                    /* I/O  Compressor
      data structure                   */\n    opus_int16                  pOut[],
      \                        /* O    Pointer to output speech frame              */\n
      \   opus_int32                  *pN,                            /* O    Pointer
      to size of output frame             */\n    opus_int                    lostFlag,
      \                      /* I    0: no loss, 1 loss, 2 decode fec            */\n
      \   opus_int                    condCoding,                     /* I    The
      type of conditional coding to use       */\n#ifdef ENABLE_DEEP_PLC\n    LPCNetPLCState
      \             *lpcnet,\n#endif\n#ifdef ENABLE_OSCE\n    OSCEModel                   *osce_model,\n#endif\n
      \   int                         arch                            /* I    Run-time
      architecture                       */\n)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/sigm_Q15.c:62,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/sigm_Q15.c:63,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/sigm_Q15.c:71,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/sigm_Q15.c:72,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 1
    argNames:
    - in_Q5
    argTypes:
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 75
    functionName: silk_sigm_Q15
    functionSourceFile: /src/opus/silk/sigm_Q15.c
    functionUses: 1
    functionsReached:
    - silk_RSHIFT
    - silk_SMULBB
    linkageType: ''
    returnType: opus_int
    signature: "opus_int silk_sigm_Q15(\n    opus_int                    in_Q5               /*
      I                                                                */\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/VQ_WMat_EC.c:57,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/VQ_WMat_EC.c:58,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/VQ_WMat_EC.c:59,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/VQ_WMat_EC.c:60,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/VQ_WMat_EC.c:61,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/VQ_WMat_EC.c:74,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/VQ_WMat_EC.c:77,1
    - Dst: silk_max
      Src: /src/opus/silk/VQ_WMat_EC.c:77,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/VQ_WMat_EC.c:77,1
    - Dst: silk_MLA
      Src: /src/opus/silk/VQ_WMat_EC.c:80,1
    - Dst: silk_MLA
      Src: /src/opus/silk/VQ_WMat_EC.c:81,1
    - Dst: silk_MLA
      Src: /src/opus/silk/VQ_WMat_EC.c:82,1
    - Dst: silk_MLA
      Src: /src/opus/silk/VQ_WMat_EC.c:83,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/VQ_WMat_EC.c:84,1
    - Dst: silk_MLA
      Src: /src/opus/silk/VQ_WMat_EC.c:85,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/VQ_WMat_EC.c:86,1
    - Dst: silk_MLA
      Src: /src/opus/silk/VQ_WMat_EC.c:89,1
    - Dst: silk_MLA
      Src: /src/opus/silk/VQ_WMat_EC.c:90,1
    - Dst: silk_MLA
      Src: /src/opus/silk/VQ_WMat_EC.c:91,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/VQ_WMat_EC.c:92,1
    - Dst: silk_MLA
      Src: /src/opus/silk/VQ_WMat_EC.c:93,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/VQ_WMat_EC.c:94,1
    - Dst: silk_MLA
      Src: /src/opus/silk/VQ_WMat_EC.c:97,1
    - Dst: silk_MLA
      Src: /src/opus/silk/VQ_WMat_EC.c:98,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/VQ_WMat_EC.c:99,1
    - Dst: silk_MLA
      Src: /src/opus/silk/VQ_WMat_EC.c:100,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/VQ_WMat_EC.c:101,1
    - Dst: silk_MLA
      Src: /src/opus/silk/VQ_WMat_EC.c:104,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/VQ_WMat_EC.c:105,1
    - Dst: silk_MLA
      Src: /src/opus/silk/VQ_WMat_EC.c:106,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/VQ_WMat_EC.c:107,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/VQ_WMat_EC.c:110,1
    - Dst: silk_MLA
      Src: /src/opus/silk/VQ_WMat_EC.c:111,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/VQ_WMat_EC.c:112,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/VQ_WMat_EC.c:117,1
    - Dst: silk_lin2log
      Src: /src/opus/silk/VQ_WMat_EC.c:117,1
    - Dst: silk_ADD_LSHIFT32
      Src: /src/opus/silk/VQ_WMat_EC.c:119,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 51
    argCount: 12
    argNames:
    - ind
    - res_nrg_Q15
    - rate_dist_Q8
    - gain_Q7
    - XX_Q17
    - xX_Q17
    - cb_Q7
    - cb_gain_Q7
    - cl_Q5
    - subfr_len
    - max_gain_Q7
    - L
    argTypes:
    - opus_int8*
    - opus_int32*
    - opus_int32*
    - opus_int*
    - opus_int32*
    - opus_int32*
    - opus_int8*
    - opus_uint8*
    - opus_uint8*
    - opus_int
    - opus_int32
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 35
    functionDepth: 2
    functionLinenumber: 35
    functionLinenumberEnd: 131
    functionName: silk_VQ_WMat_EC_c
    functionSourceFile: /src/opus/silk/VQ_WMat_EC.c
    functionUses: 0
    functionsReached:
    - silk_ADD_LSHIFT32
    - silk_LSHIFT32
    - silk_SMULBB
    - silk_SUB32
    - silk_SMLAWB
    - silk_lin2log
    - SILK_FIX_CONST
    - silk_max
    - silk_MLA
    linkageType: ''
    returnType: void
    signature: "void silk_VQ_WMat_EC_c(\n    opus_int8                   *ind,                           /*
      O    index of best codebook vector               */\n    opus_int32                  *res_nrg_Q15,
      \                  /* O    best residual energy                        */\n
      \   opus_int32                  *rate_dist_Q8,                  /* O    best
      total bitrate                          */\n    opus_int                    *gain_Q7,
      \                      /* O    sum of absolute LTP coefficients            */\n
      \   const opus_int32            *XX_Q17,                        /* I    correlation
      matrix                          */\n    const opus_int32            *xX_Q17,
      \                       /* I    correlation vector                          */\n
      \   const opus_int8             *cb_Q7,                         /* I    codebook
      \                                   */\n    const opus_uint8            *cb_gain_Q7,
      \                   /* I    codebook effective gain                     */\n
      \   const opus_uint8            *cl_Q5,                         /* I    code
      length for each codebook vector        */\n    const opus_int              subfr_len,
      \                     /* I    number of samples per subframe              */\n
      \   const opus_int32            max_gain_Q7,                    /* I    maximum
      sum of absolute LTP coefficients    */\n    const opus_int              L                               /*
      I    number of vectors in codebook               */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - R
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 72
    functionName: rateID
    functionSourceFile: /src/opus/silk/resampler.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: rateID(R)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: silk_memset
      Src: /src/opus/silk/resampler.c:89,1
    - Dst: celt_assert
      Src: /src/opus/silk/resampler.c:99,1
    - Dst: rateID
      Src: /src/opus/silk/resampler.c:102,1
    - Dst: rateID
      Src: /src/opus/silk/resampler.c:102,1
    - Dst: celt_assert
      Src: /src/opus/silk/resampler.c:110,1
    - Dst: rateID
      Src: /src/opus/silk/resampler.c:113,1
    - Dst: rateID
      Src: /src/opus/silk/resampler.c:113,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/resampler.c:116,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/resampler.c:117,1
    - Dst: silk_MUL
      Src: /src/opus/silk/resampler.c:126,1
    - Dst: silk_MUL
      Src: /src/opus/silk/resampler.c:137,1
    - Dst: silk_MUL
      Src: /src/opus/silk/resampler.c:137,1
    - Dst: silk_MUL
      Src: /src/opus/silk/resampler.c:141,1
    - Dst: silk_MUL
      Src: /src/opus/silk/resampler.c:141,1
    - Dst: silk_MUL
      Src: /src/opus/silk/resampler.c:145,1
    - Dst: silk_MUL
      Src: /src/opus/silk/resampler.c:149,1
    - Dst: silk_MUL
      Src: /src/opus/silk/resampler.c:153,1
    - Dst: silk_MUL
      Src: /src/opus/silk/resampler.c:157,1
    - Dst: celt_assert
      Src: /src/opus/silk/resampler.c:163,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/resampler.c:172,1
    - Dst: silk_DIV32
      Src: /src/opus/silk/resampler.c:172,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/resampler.c:172,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/resampler.c:174,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/resampler.c:174,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 70
    argCount: 4
    argNames:
    - S
    - Fs_Hz_in
    - Fs_Hz_out
    - forEnc
    argTypes:
    - silk_resampler_state_struct*
    - opus_int32
    - opus_int32
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 179
    functionName: silk_resampler_init
    functionSourceFile: /src/opus/silk/resampler.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - silk_LSHIFT32
    - silk_memset
    - silk_DIV32
    - silk_SMULWW
    - rateID
    - silk_DIV32_16
    - silk_MUL
    linkageType: ''
    returnType: opus_int
    signature: "opus_int silk_resampler_init(\n    silk_resampler_state_struct *S,
      \                /* I/O  Resampler state                                             */\n
      \   opus_int32                  Fs_Hz_in,           /* I    Input sampling rate
      (Hz)                                    */\n    opus_int32                  Fs_Hz_out,
      \         /* I    Output sampling rate (Hz)                                   */\n
      \   opus_int                    forEnc              /* I    If 1: encoder; if
      0: decoder                                */\n)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/silk/resampler.c:193,1
    - Dst: celt_assert
      Src: /src/opus/silk/resampler.c:195,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/resampler.c:200,1
    - Dst: silk_resampler_private_up2_HQ_wrapper
      Src: /src/opus/silk/resampler.c:204,1
    - Dst: silk_resampler_private_up2_HQ_wrapper
      Src: /src/opus/silk/resampler.c:205,1
    - Dst: silk_resampler_private_IIR_FIR
      Src: /src/opus/silk/resampler.c:208,1
    - Dst: silk_resampler_private_IIR_FIR
      Src: /src/opus/silk/resampler.c:209,1
    - Dst: silk_resampler_private_down_FIR
      Src: /src/opus/silk/resampler.c:212,1
    - Dst: silk_resampler_private_down_FIR
      Src: /src/opus/silk/resampler.c:213,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/resampler.c:216,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/resampler.c:217,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/resampler.c:221,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 4
    argNames:
    - S
    - out
    - in
    - inLen
    argTypes:
    - silk_resampler_state_struct*
    - opus_int16[]
    - opus_int16[]
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 183
    functionDepth: 3
    functionLinenumber: 183
    functionLinenumberEnd: 224
    functionName: silk_resampler
    functionSourceFile: /src/opus/silk/resampler.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - silk_memcpy
    - silk_resampler_private_IIR_FIR
    - silk_resampler_private_up2_HQ_wrapper
    - silk_resampler_private_down_FIR
    linkageType: ''
    returnType: opus_int
    signature: "opus_int silk_resampler(\n    silk_resampler_state_struct *S,                 /*
      I/O  Resampler state                                             */\n    opus_int16
      \                 out[],              /* O    Output signal                                               */\n
      \   const opus_int16            in[],               /* I    Input signal                                                */\n
      \   opus_int32                  inLen               /* I    Number of input
      samples                                     */\n)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/resampler_private_down_FIR.c:55,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:58,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:62,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:63,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:64,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:65,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:66,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:67,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:68,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:69,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:70,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:72,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:73,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:74,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:75,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:76,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:77,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:78,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:79,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:80,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/resampler_private_down_FIR.c:83,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/resampler_private_down_FIR.c:83,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/resampler_private_down_FIR.c:89,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:92,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_down_FIR.c:92,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:93,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_down_FIR.c:93,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:94,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_down_FIR.c:94,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:95,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_down_FIR.c:95,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:96,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_down_FIR.c:96,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:97,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_down_FIR.c:97,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:98,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_down_FIR.c:98,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:99,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_down_FIR.c:99,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:100,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_down_FIR.c:100,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:101,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_down_FIR.c:101,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:102,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_down_FIR.c:102,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:103,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_down_FIR.c:103,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/resampler_private_down_FIR.c:106,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/resampler_private_down_FIR.c:106,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/resampler_private_down_FIR.c:112,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:115,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_down_FIR.c:115,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:116,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_down_FIR.c:116,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:117,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_down_FIR.c:117,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:118,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_down_FIR.c:118,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:119,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_down_FIR.c:119,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:120,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_down_FIR.c:120,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:121,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_down_FIR.c:121,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:122,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_down_FIR.c:122,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:123,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_down_FIR.c:123,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:124,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_down_FIR.c:124,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:125,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_down_FIR.c:125,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:126,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_down_FIR.c:126,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:127,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_down_FIR.c:127,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:128,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_down_FIR.c:128,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:129,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_down_FIR.c:129,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:130,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_down_FIR.c:130,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:131,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_down_FIR.c:131,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_private_down_FIR.c:132,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/resampler_private_down_FIR.c:132,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/resampler_private_down_FIR.c:135,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/resampler_private_down_FIR.c:135,1
    - Dst: celt_assert
      Src: /src/opus/silk/resampler_private_down_FIR.c:139,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 75
    argCount: 7
    argNames:
    - out
    - buf
    - FIR_Coefs
    - FIR_Order
    - FIR_Fracs
    - max_index_Q16
    - index_increment_Q16
    argTypes:
    - opus_int16*
    - opus_int32*
    - opus_int16*
    - opus_int
    - opus_int
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 142
    functionName: silk_resampler_private_down_FIR_INTERPOL
    functionSourceFile: /src/opus/silk/resampler_private_down_FIR.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - silk_RSHIFT
    - silk_SMULWB
    - silk_ADD32
    - silk_SAT16
    - silk_SMLAWB
    - silk_RSHIFT_ROUND
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE *silk_resampler_private_down_FIR_INTERPOL(\n    opus_int16
      \         *out,\n    opus_int32          *buf,\n    const opus_int16    *FIR_Coefs,\n
      \   opus_int            FIR_Order,\n    opus_int            FIR_Fracs,\n    opus_int32
      \         max_index_Q16,\n    opus_int32          index_increment_Q16\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/silk/resampler_private_down_FIR.c:155,1
    - Dst: ALLOC
      Src: /src/opus/silk/resampler_private_down_FIR.c:159,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/resampler_private_down_FIR.c:162,1
    - Dst: silk_min
      Src: /src/opus/silk/resampler_private_down_FIR.c:169,1
    - Dst: silk_resampler_private_AR2
      Src: /src/opus/silk/resampler_private_down_FIR.c:172,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/resampler_private_down_FIR.c:174,1
    - Dst: silk_resampler_private_down_FIR_INTERPOL
      Src: /src/opus/silk/resampler_private_down_FIR.c:177,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/resampler_private_down_FIR.c:185,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/resampler_private_down_FIR.c:192,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 4
    argNames:
    - SS
    - out
    - in
    - inLen
    argTypes:
    - void*
    - opus_int16[]
    - opus_int16[]
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 145
    functionDepth: 2
    functionLinenumber: 145
    functionLinenumberEnd: 194
    functionName: silk_resampler_private_down_FIR
    functionSourceFile: /src/opus/silk/resampler_private_down_FIR.c
    functionUses: 1
    functionsReached:
    - silk_min
    - silk_resampler_private_AR2
    - silk_memcpy
    - silk_resampler_private_down_FIR_INTERPOL
    - VARDECL
    - ALLOC
    - silk_LSHIFT32
    linkageType: ''
    returnType: void
    signature: "void silk_resampler_private_down_FIR(\n    void                            *SS,
      \           /* I/O  Resampler state             */\n    opus_int16                      out[],
      \         /* O    Output signal               */\n    const opus_int16                in[],
      \          /* I    Input signal                */\n    opus_int32                      inLen
      \          /* I    Number of input samples     */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_sum_sqr_shift
      Src: /src/opus/silk/stereo_find_predictor.c:48,1
    - Dst: silk_sum_sqr_shift
      Src: /src/opus/silk/stereo_find_predictor.c:49,1
    - Dst: silk_max_int
      Src: /src/opus/silk/stereo_find_predictor.c:50,1
    - Dst: silk_RSHIFT32
      Src: /src/opus/silk/stereo_find_predictor.c:52,1
    - Dst: silk_RSHIFT32
      Src: /src/opus/silk/stereo_find_predictor.c:53,1
    - Dst: silk_max_int
      Src: /src/opus/silk/stereo_find_predictor.c:54,1
    - Dst: silk_inner_prod_aligned_scale
      Src: /src/opus/silk/stereo_find_predictor.c:55,1
    - Dst: silk_DIV32_varQ
      Src: /src/opus/silk/stereo_find_predictor.c:56,1
    - Dst: silk_LIMIT
      Src: /src/opus/silk/stereo_find_predictor.c:57,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/stereo_find_predictor.c:58,1
    - Dst: silk_max_int
      Src: /src/opus/silk/stereo_find_predictor.c:61,1
    - Dst: silk_abs
      Src: /src/opus/silk/stereo_find_predictor.c:61,1
    - Dst: silk_assert
      Src: /src/opus/silk/stereo_find_predictor.c:64,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/stereo_find_predictor.c:65,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/stereo_find_predictor.c:66,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/stereo_find_predictor.c:66,1
    - Dst: silk_SQRT_APPROX
      Src: /src/opus/silk/stereo_find_predictor.c:66,1
    - Dst: silk_SUB_LSHIFT32
      Src: /src/opus/silk/stereo_find_predictor.c:69,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/stereo_find_predictor.c:69,1
    - Dst: silk_ADD_LSHIFT32
      Src: /src/opus/silk/stereo_find_predictor.c:70,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/stereo_find_predictor.c:70,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/stereo_find_predictor.c:71,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/stereo_find_predictor.c:71,1
    - Dst: silk_SQRT_APPROX
      Src: /src/opus/silk/stereo_find_predictor.c:71,1
    - Dst: silk_DIV32_varQ
      Src: /src/opus/silk/stereo_find_predictor.c:75,1
    - Dst: silk_max
      Src: /src/opus/silk/stereo_find_predictor.c:75,1
    - Dst: silk_LIMIT
      Src: /src/opus/silk/stereo_find_predictor.c:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 22
    argCount: 6
    argNames:
    - ratio_Q14
    - x
    - y
    - mid_res_amp_Q0
    - length
    - smooth_coef_Q16
    argTypes:
    - opus_int32*
    - opus_int16[]
    - opus_int16[]
    - opus_int32[]
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 35
    functionDepth: 2
    functionLinenumber: 35
    functionLinenumberEnd: 79
    functionName: silk_stereo_find_predictor
    functionSourceFile: /src/opus/silk/stereo_find_predictor.c
    functionUses: 0
    functionsReached:
    - silk_abs
    - silk_ADD_LSHIFT32
    - silk_DIV32_varQ
    - silk_LSHIFT
    - silk_LIMIT
    - silk_assert
    - silk_SMULWB
    - silk_max_int
    - silk_inner_prod_aligned_scale
    - silk_RSHIFT
    - silk_SUB_LSHIFT32
    - silk_SMLAWB
    - silk_RSHIFT32
    - silk_sum_sqr_shift
    - silk_max
    - silk_SQRT_APPROX
    linkageType: ''
    returnType: opus_int32
    signature: "opus_int32 silk_stereo_find_predictor(                          /*
      O    Returns predictor in Q13                    */\n    opus_int32                  *ratio_Q14,
      \                    /* O    Ratio of residual and mid energies          */\n
      \   const opus_int16            x[],                            /* I    Basis
      signal                                */\n    const opus_int16            y[],
      \                           /* I    Target signal                               */\n
      \   opus_int32                  mid_res_amp_Q0[],               /* I/O  Smoothed
      mid, residual norms                */\n    opus_int                    length,
      \                        /* I    Number of samples                           */\n
      \   opus_int                    smooth_coef_Q16                 /* I    Smoothing
      coefficient                       */\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: silk_assert
      Src: /src/opus/silk/NSQ.h:38,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/NSQ.h:41,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ.h:42,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ.h:43,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ.h:44,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ.h:45,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ.h:46,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ.h:47,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ.h:48,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ.h:49,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ.h:50,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ.h:51,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ.h:55,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ.h:56,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ.h:57,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ.h:58,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ.h:59,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ.h:60,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 3
    argNames:
    - buf32
    - coef16
    - order
    argTypes:
    - opus_int32*
    - opus_int16*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 63
    functionName: silk_noise_shape_quantizer_short_prediction_c
    functionSourceFile: /src/opus/silk/NSQ.h
    functionUses: 0
    functionsReached:
    - silk_RSHIFT
    - silk_SMLAWB
    - silk_assert
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_noise_shape_quantizer_short_prediction_c(const opus_int32
      *buf32, const opus_int16 *coef16, opus_int order)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - in
    - ','
    - coef
    - ','
    - coefRev
    - ','
    - order
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 66
    functionName: silk_noise_shape_quantizer_short_prediction
    functionSourceFile: /src/opus/silk/NSQ.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_noise_shape_quantizer_short_prediction(in, coef, coefRev, order,
      arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/NSQ.h:77,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ.h:78,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ.h:83,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ.h:86,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ.h:89,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/NSQ.h:91,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 4
    argNames:
    - data0
    - data1
    - coef
    - order
    argTypes:
    - opus_int32*
    - opus_int32*
    - opus_int16*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 93
    functionName: silk_NSQ_noise_shape_feedback_loop_c
    functionSourceFile: /src/opus/silk/NSQ.h
    functionUses: 0
    functionsReached:
    - silk_SMLAWB
    - silk_RSHIFT
    - silk_LSHIFT32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_NSQ_noise_shape_feedback_loop_c(const opus_int32 *data0,
      opus_int32 *data1, const opus_int16 *coef, opus_int order)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - data0
    - ','
    - data1
    - ','
    - coef
    - ','
    - order
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 96
    functionName: silk_NSQ_noise_shape_feedback_loop
    functionSourceFile: /src/opus/silk/NSQ.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_NSQ_noise_shape_feedback_loop(data0, data1, coef, order, arch)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: silk_min
      Src: /src/opus/silk/control_SNR.c:106,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 2
    argNames:
    - psEncC
    - TargetRate_bps
    argTypes:
    - silk_encoder_state*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 113
    functionName: silk_control_SNR
    functionSourceFile: /src/opus/silk/control_SNR.c
    functionUses: 1
    functionsReached:
    - silk_min
    linkageType: ''
    returnType: opus_int
    signature: "opus_int silk_control_SNR(\n    silk_encoder_state          *psEncC,
      \                       /* I/O  Pointer to Silk encoder state               */\n
      \   opus_int32                  TargetRate_bps                  /* I    Target
      max bitrate (bps)                    */\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: silk_RSHIFT64
      Src: /src/opus/silk/Inlines.h:41,1
    - Dst: silk_CLZ32
      Src: /src/opus/silk/Inlines.h:44,1
    - Dst: silk_CLZ32
      Src: /src/opus/silk/Inlines.h:47,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - in
    argTypes:
    - opus_int64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 49
    functionName: silk_CLZ64
    functionSourceFile: /src/opus/silk/Inlines.h
    functionUses: 0
    functionsReached:
    - silk_RSHIFT64
    - silk_CLZ32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_CLZ64( opus_int64 in )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_CLZ32
      Src: /src/opus/silk/Inlines.h:58,1
    - Dst: silk_ROR32
      Src: /src/opus/silk/Inlines.h:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - in
    - lz
    - frac_Q7
    argTypes:
    - opus_int32
    - opus_int32*
    - opus_int32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 62
    functionName: silk_CLZ_FRAC
    functionSourceFile: /src/opus/silk/Inlines.h
    functionUses: 1
    functionsReached:
    - silk_ROR32
    - silk_CLZ32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_CLZ_FRAC(\n    opus_int32 in,            /* I  input
      \                              */\n    opus_int32 *lz,           /* O  number
      of leading zeros             */\n    opus_int32 *frac_Q7       /* O  the 7 bits
      right after the leading one */\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: silk_CLZ_FRAC
      Src: /src/opus/silk/Inlines.h:75,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/Inlines.h:84,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/Inlines.h:87,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/Inlines.h:87,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - x
    argTypes:
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 67
    functionDepth: 2
    functionLinenumber: 67
    functionLinenumberEnd: 90
    functionName: silk_SQRT_APPROX
    functionSourceFile: /src/opus/silk/Inlines.h
    functionUses: 4
    functionsReached:
    - silk_CLZ_FRAC
    - silk_SMLAWB
    - silk_RSHIFT
    - silk_SMULBB
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SQRT_APPROX( opus_int32 x )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: silk_assert
      Src: /src/opus/silk/Inlines.h:102,1
    - Dst: silk_assert
      Src: /src/opus/silk/Inlines.h:103,1
    - Dst: silk_CLZ32
      Src: /src/opus/silk/Inlines.h:106,1
    - Dst: silk_abs
      Src: /src/opus/silk/Inlines.h:106,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/Inlines.h:107,1
    - Dst: silk_CLZ32
      Src: /src/opus/silk/Inlines.h:108,1
    - Dst: silk_abs
      Src: /src/opus/silk/Inlines.h:108,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/Inlines.h:109,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/Inlines.h:112,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/Inlines.h:112,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/Inlines.h:115,1
    - Dst: silk_SUB32_ovflw
      Src: /src/opus/silk/Inlines.h:119,1
    - Dst: silk_LSHIFT_ovflw
      Src: /src/opus/silk/Inlines.h:119,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/Inlines.h:119,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/Inlines.h:122,1
    - Dst: silk_LSHIFT_SAT32
      Src: /src/opus/silk/Inlines.h:127,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/Inlines.h:130,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 21
    argCount: 3
    argNames:
    - a32
    - b32
    - Qres
    argTypes:
    - opus_int32
    - opus_int32
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 136
    functionName: silk_DIV32_varQ
    functionSourceFile: /src/opus/silk/Inlines.h
    functionUses: 2
    functionsReached:
    - silk_abs
    - silk_SUB32_ovflw
    - silk_LSHIFT
    - silk_CLZ32
    - silk_assert
    - silk_RSHIFT
    - silk_SMULWB
    - silk_LSHIFT_ovflw
    - silk_SMLAWB
    - silk_SMMUL
    - silk_DIV32_16
    - silk_LSHIFT_SAT32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_DIV32_varQ(   /* O    returns a good approximation
      of \"(a32 << Qres) / b32\" */\n    const opus_int32     a32,               /*
      I    numerator (Q0)                  */\n    const opus_int32     b32,               /*
      I    denominator (Q0)                */\n    const opus_int       Qres               /*
      I    Q-domain of result (>= 0)       */\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: silk_assert
      Src: /src/opus/silk/Inlines.h:147,1
    - Dst: silk_assert
      Src: /src/opus/silk/Inlines.h:148,1
    - Dst: silk_CLZ32
      Src: /src/opus/silk/Inlines.h:151,1
    - Dst: silk_abs
      Src: /src/opus/silk/Inlines.h:151,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/Inlines.h:152,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/Inlines.h:155,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/Inlines.h:155,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/Inlines.h:158,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/Inlines.h:161,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/Inlines.h:161,1
    - Dst: silk_SMLAWW
      Src: /src/opus/silk/Inlines.h:164,1
    - Dst: silk_LSHIFT_SAT32
      Src: /src/opus/silk/Inlines.h:169,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/Inlines.h:172,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 2
    argNames:
    - b32
    - Qres
    argTypes:
    - opus_int32
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 139
    functionDepth: 1
    functionLinenumber: 139
    functionLinenumberEnd: 178
    functionName: silk_INVERSE32_varQ
    functionSourceFile: /src/opus/silk/Inlines.h
    functionUses: 3
    functionsReached:
    - silk_abs
    - silk_LSHIFT
    - silk_CLZ32
    - silk_assert
    - silk_RSHIFT
    - silk_SMULWB
    - silk_SMLAWW
    - silk_DIV32_16
    - silk_LSHIFT_SAT32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_INVERSE32_varQ(   /* O    returns a good approximation
      of \"(1 << Qres) / b32\" */\n    const opus_int32     b32,                   /*
      I    denominator (Q0)                */\n    const opus_int       Qres                   /*
      I    Q-domain of result (> 0)        */\n)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/silk/decode_pitch.c:54,1
    - Dst: celt_assert
      Src: /src/opus/silk/decode_pitch.c:63,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/decode_pitch.c:69,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/decode_pitch.c:70,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/decode_pitch.c:74,1
    - Dst: silk_LIMIT
      Src: /src/opus/silk/decode_pitch.c:75,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 5
    argNames:
    - lagIndex
    - contourIndex
    - pitch_lags
    - Fs_kHz
    - nb_subfr
    argTypes:
    - opus_int16
    - opus_int8
    - opus_int[]
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 77
    functionName: silk_decode_pitch
    functionSourceFile: /src/opus/silk/decode_pitch.c
    functionUses: 1
    functionsReached:
    - silk_LIMIT
    - celt_assert
    - silk_SMULBB
    - matrix_ptr
    linkageType: ''
    returnType: void
    signature: "void silk_decode_pitch(\n    opus_int16                  lagIndex,
      \          /* I                                                                */\n
      \   opus_int8                   contourIndex,       /* O                                                                */\n
      \   opus_int                    pitch_lags[],       /* O    4 pitch values                                              */\n
      \   const opus_int              Fs_kHz,             /* I    sampling frequency
      (kHz)                                    */\n    const opus_int              nb_subfr
      \           /* I    number of sub frames                                        */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 39
    functionName: silk_ADD16
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_ADD16(a,b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: silk_ADD_SAT16
      Src: /src/opus/silk/MacroDebug.h:43,1
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:45,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:47,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - a
    - b
    - file
    - line
    argTypes:
    - opus_int16
    - opus_int16
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 51
    functionName: silk_ADD16_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_ADD_SAT16
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_ADD16_(opus_int16 a, opus_int16 b, char *file, int
      line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 55
    functionName: silk_ADD32
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_ADD32(a,b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: silk_ADD_SAT32
      Src: /src/opus/silk/MacroDebug.h:59,1
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:61,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:63,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - a
    - b
    - file
    - line
    argTypes:
    - opus_int32
    - opus_int32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 67
    functionName: silk_ADD32_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - silk_ADD_SAT32
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_ADD32_(opus_int32 a, opus_int32 b, char *file, int
      line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 71
    functionName: silk_ADD64
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_ADD64(a,b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: silk_ADD_SAT64
      Src: /src/opus/silk/MacroDebug.h:75,1
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:77,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:79,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - a
    - b
    - file
    - line
    argTypes:
    - opus_int64
    - opus_int64
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 83
    functionName: silk_ADD64_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - silk_ADD_SAT64
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_ADD64_(opus_int64 a, opus_int64 b, char *file, int
      line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 87
    functionName: silk_SUB16
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SUB16(a,b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: silk_SUB_SAT16
      Src: /src/opus/silk/MacroDebug.h:91,1
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:93,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:95,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - a
    - b
    - file
    - line
    argTypes:
    - opus_int16
    - opus_int16
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 99
    functionName: silk_SUB16_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_SUB_SAT16
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SUB16_(opus_int16 a, opus_int16 b, char *file, int
      line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 103
    functionName: silk_SUB32
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SUB32(a,b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: silk_SUB_SAT32
      Src: /src/opus/silk/MacroDebug.h:107,1
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:109,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:111,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - a
    - b
    - file
    - line
    argTypes:
    - opus_int32
    - opus_int32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 115
    functionName: silk_SUB32_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    - silk_SUB_SAT32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SUB32_(opus_int32 a, opus_int32 b, char *file, int
      line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 119
    functionName: silk_SUB64
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SUB64(a,b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: silk_SUB_SAT64
      Src: /src/opus/silk/MacroDebug.h:123,1
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:125,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:127,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - a
    - b
    - file
    - line
    argTypes:
    - opus_int64
    - opus_int64
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 131
    functionName: silk_SUB64_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_SUB_SAT64
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SUB64_(opus_int64 a, opus_int64 b, char *file, int
      line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 135
    functionName: silk_ADD_SAT16
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_ADD_SAT16(a,b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: silk_SAT16
      Src: /src/opus/silk/MacroDebug.h:137,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/MacroDebug.h:137,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/MacroDebug.h:138,1
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:140,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:142,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - a16
    - b16
    - file
    - line
    argTypes:
    - opus_int16
    - opus_int16
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 135
    functionDepth: 1
    functionLinenumber: 135
    functionLinenumberEnd: 146
    functionName: silk_ADD_SAT16_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - silk_ADD32
    - silk_SAT16
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_ADD_SAT16_( opus_int16 a16, opus_int16 b16, char *file,
      int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 150
    functionName: silk_ADD_SAT32
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_ADD_SAT32(a,b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: silk_SAT32
      Src: /src/opus/silk/MacroDebug.h:155,1
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:157,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:159,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - a32
    - b32
    - file
    - line
    argTypes:
    - opus_int32
    - opus_int32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 150
    functionDepth: 1
    functionLinenumber: 150
    functionLinenumberEnd: 163
    functionName: silk_ADD_SAT32_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - silk_SAT32
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_ADD_SAT32_(opus_int32 a32, opus_int32 b32, char *file,
      int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 167
    functionName: silk_ADD_SAT64
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_ADD_SAT64(a,b)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:186,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:188,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 4
    argNames:
    - a64
    - b64
    - file
    - line
    argTypes:
    - opus_int64
    - opus_int64
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 167
    functionDepth: 1
    functionLinenumber: 167
    functionLinenumberEnd: 192
    functionName: silk_ADD_SAT64_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_ADD_SAT64_( opus_int64 a64, opus_int64 b64, char *file,
      int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 196
    functionName: silk_SUB_SAT16
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SUB_SAT16(a,b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: silk_SAT16
      Src: /src/opus/silk/MacroDebug.h:198,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/MacroDebug.h:198,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/MacroDebug.h:199,1
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:201,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:203,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - a16
    - b16
    - file
    - line
    argTypes:
    - opus_int16
    - opus_int16
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 196
    functionDepth: 1
    functionLinenumber: 196
    functionLinenumberEnd: 207
    functionName: silk_SUB_SAT16_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_SUB32
    - silk_assert
    - silk_SAT16
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SUB_SAT16_( opus_int16 a16, opus_int16 b16, char *file,
      int line )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 211
    functionName: silk_SUB_SAT32
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SUB_SAT32(a,b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: silk_SAT32
      Src: /src/opus/silk/MacroDebug.h:216,1
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:218,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:220,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - a32
    - b32
    - file
    - line
    argTypes:
    - opus_int32
    - opus_int32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 211
    functionDepth: 1
    functionLinenumber: 211
    functionLinenumberEnd: 224
    functionName: silk_SUB_SAT32_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - silk_SAT32
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SUB_SAT32_( opus_int32 a32, opus_int32 b32, char *file,
      int line )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 227
    functionDepth: 0
    functionLinenumber: 227
    functionLinenumberEnd: 228
    functionName: silk_SUB_SAT64
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SUB_SAT64(a,b)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:247,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:249,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 4
    argNames:
    - a64
    - b64
    - file
    - line
    argTypes:
    - opus_int64
    - opus_int64
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 228
    functionDepth: 1
    functionLinenumber: 228
    functionLinenumberEnd: 253
    functionName: silk_SUB_SAT64_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SUB_SAT64_( opus_int64 a64, opus_int64 b64, char *file,
      int line )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 256
    functionDepth: 0
    functionLinenumber: 256
    functionLinenumberEnd: 257
    functionName: silk_MUL
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_MUL(a,b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:264,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:266,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - a32
    - b32
    - file
    - line
    argTypes:
    - opus_int32
    - opus_int32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 257
    functionDepth: 1
    functionLinenumber: 257
    functionLinenumberEnd: 270
    functionName: silk_MUL_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_MUL_(opus_int32 a32, opus_int32 b32, char *file, int
      line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 273
    functionDepth: 0
    functionLinenumber: 273
    functionLinenumberEnd: 274
    functionName: silk_MUL_uint
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_MUL_uint(a,b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:279,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:281,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - a32
    - b32
    - file
    - line
    argTypes:
    - opus_uint32
    - opus_uint32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 274
    functionDepth: 1
    functionLinenumber: 274
    functionLinenumberEnd: 285
    functionName: opus_uint32::silk_MUL_uint_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE opus_uint32 silk_MUL_uint_(opus_uint32 a32, opus_uint32
      b32, char *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 288
    functionDepth: 0
    functionLinenumber: 288
    functionLinenumberEnd: 289
    functionName: silk_MLA
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_MLA(a,b,c)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:294,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:296,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 5
    argNames:
    - a32
    - b32
    - c32
    - file
    - line
    argTypes:
    - opus_int32
    - opus_int32
    - opus_int32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 300
      start: 289
    functionDepth: 1
    functionLinenumber: 289
    functionLinenumberEnd: 300
    functionName: silk_MLA_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_MLA_(opus_int32 a32, opus_int32 b32, opus_int32 c32,
      char *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 303
    functionDepth: 0
    functionLinenumber: 303
    functionLinenumberEnd: 304
    functionName: silk_MLA_uint
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_MLA_uint(a,b,c)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:309,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:311,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 5
    argNames:
    - a32
    - b32
    - c32
    - file
    - line
    argTypes:
    - opus_uint32
    - opus_uint32
    - opus_uint32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 304
    functionDepth: 1
    functionLinenumber: 304
    functionLinenumberEnd: 315
    functionName: silk_MLA_uint_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_MLA_uint_(opus_uint32 a32, opus_uint32 b32, opus_uint32
      c32, char *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 319
      start: 318
    functionDepth: 0
    functionLinenumber: 318
    functionLinenumberEnd: 319
    functionName: silk_SMULWB
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 19
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMULWB(a,b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:324,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:326,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - a32
    - b32
    - file
    - line
    argTypes:
    - opus_int32
    - opus_int32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 319
    functionDepth: 1
    functionLinenumber: 319
    functionLinenumberEnd: 330
    functionName: silk_SMULWB_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SMULWB_(opus_int32 a32, opus_int32 b32, char *file,
      int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 333
    functionDepth: 0
    functionLinenumber: 333
    functionLinenumberEnd: 334
    functionName: silk_SMLAWB
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 24
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMLAWB(a,b,c)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: silk_ADD32_ovflw
      Src: /src/opus/silk/MacroDebug.h:336,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/MacroDebug.h:336,1
    - Dst: silk_ADD_SAT32
      Src: /src/opus/silk/MacroDebug.h:337,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/MacroDebug.h:337,1
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:339,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:341,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 5
    argNames:
    - a32
    - b32
    - c32
    - file
    - line
    argTypes:
    - opus_int32
    - opus_int32
    - opus_int32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 334
    functionDepth: 1
    functionLinenumber: 334
    functionLinenumberEnd: 345
    functionName: silk_SMLAWB_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - silk_SMULWB
    - silk_ADD_SAT32
    - fprintf
    - silk_ADD32_ovflw
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SMLAWB_(opus_int32 a32, opus_int32 b32, opus_int32
      c32, char *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 348
    functionDepth: 0
    functionLinenumber: 348
    functionLinenumberEnd: 349
    functionName: silk_SMULWT
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMULWT(a,b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:354,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:356,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 4
    argNames:
    - a32
    - b32
    - file
    - line
    argTypes:
    - opus_int32
    - opus_int32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 349
    functionDepth: 1
    functionLinenumber: 349
    functionLinenumberEnd: 360
    functionName: silk_SMULWT_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SMULWT_(opus_int32 a32, opus_int32 b32, char *file,
      int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 363
    functionDepth: 0
    functionLinenumber: 363
    functionLinenumberEnd: 364
    functionName: silk_SMLAWT
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMLAWT(a,b,c)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:369,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:371,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 5
    argNames:
    - a32
    - b32
    - c32
    - file
    - line
    argTypes:
    - opus_int32
    - opus_int32
    - opus_int32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 364
    functionDepth: 1
    functionLinenumber: 364
    functionLinenumberEnd: 375
    functionName: silk_SMLAWT_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SMLAWT_(opus_int32 a32, opus_int32 b32, opus_int32
      c32, char *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 378
    functionDepth: 0
    functionLinenumber: 378
    functionLinenumberEnd: 379
    functionName: silk_SMULL
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMULL(a,b)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:390,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:392,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 4
    argNames:
    - a64
    - b64
    - file
    - line
    argTypes:
    - opus_int64
    - opus_int64
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 396
      start: 379
    functionDepth: 1
    functionLinenumber: 379
    functionLinenumberEnd: 396
    functionName: silk_SMULL_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SMULL_(opus_int64 a64, opus_int64 b64, char *file,
      int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 401
      start: 400
    functionDepth: 0
    functionLinenumber: 400
    functionLinenumberEnd: 401
    functionName: silk_SMLABB
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMLABB(a,b,c)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:406,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:408,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 5
    argNames:
    - a32
    - b32
    - c32
    - file
    - line
    argTypes:
    - opus_int32
    - opus_int32
    - opus_int32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 412
      start: 401
    functionDepth: 1
    functionLinenumber: 401
    functionLinenumberEnd: 412
    functionName: silk_SMLABB_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SMLABB_(opus_int32 a32, opus_int32 b32, opus_int32
      c32, char *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 417
      start: 416
    functionDepth: 0
    functionLinenumber: 416
    functionLinenumberEnd: 417
    functionName: silk_SMLABT
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMLABT(a,b,c)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:422,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:424,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 5
    argNames:
    - a32
    - b32
    - c32
    - file
    - line
    argTypes:
    - opus_int32
    - opus_int32
    - opus_int32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 428
      start: 417
    functionDepth: 1
    functionLinenumber: 417
    functionLinenumberEnd: 428
    functionName: silk_SMLABT_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SMLABT_(opus_int32 a32, opus_int32 b32, opus_int32
      c32, char *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 433
      start: 432
    functionDepth: 0
    functionLinenumber: 432
    functionLinenumberEnd: 433
    functionName: silk_SMLATT
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMLATT(a,b,c)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:438,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:440,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 5
    argNames:
    - a32
    - b32
    - c32
    - file
    - line
    argTypes:
    - opus_int32
    - opus_int32
    - opus_int32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 444
      start: 433
    functionDepth: 1
    functionLinenumber: 433
    functionLinenumberEnd: 444
    functionName: silk_SMLATT_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SMLATT_(opus_int32 a32, opus_int32 b32, opus_int32
      c32, char *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 447
    functionDepth: 0
    functionLinenumber: 447
    functionLinenumberEnd: 448
    functionName: silk_SMULWW
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMULWW(a,b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: silk_SMULWB
      Src: /src/opus/silk/MacroDebug.h:453,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/MacroDebug.h:454,1
    - Dst: silk_MUL
      Src: /src/opus/silk/MacroDebug.h:455,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/MacroDebug.h:460,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/MacroDebug.h:461,1
    - Dst: silk_ADD_SAT32
      Src: /src/opus/silk/MacroDebug.h:461,1
    - Dst: silk_RSHIFT64
      Src: /src/opus/silk/MacroDebug.h:463,1
    - Dst: silk_SMULL
      Src: /src/opus/silk/MacroDebug.h:463,1
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:468,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:470,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 4
    argNames:
    - a32
    - b32
    - file
    - line
    argTypes:
    - opus_int32
    - opus_int32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 475
      start: 448
    functionDepth: 1
    functionLinenumber: 448
    functionLinenumberEnd: 475
    functionName: silk_SMULWW_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_RSHIFT64
    - silk_SMULL
    - silk_assert
    - silk_SMULWB
    - silk_RSHIFT_ROUND
    - silk_ADD32
    - silk_ADD_SAT32
    - fprintf
    - silk_MUL
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SMULWW_(opus_int32 a32, opus_int32 b32, char *file,
      int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 479
      start: 478
    functionDepth: 0
    functionLinenumber: 478
    functionLinenumberEnd: 479
    functionName: silk_SMLAWW
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMLAWW(a,b,c)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: silk_SMULWW
      Src: /src/opus/silk/MacroDebug.h:482,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/MacroDebug.h:483,1
    - Dst: silk_ADD_SAT32
      Src: /src/opus/silk/MacroDebug.h:484,1
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:486,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:488,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 5
    argNames:
    - a32
    - b32
    - c32
    - file
    - line
    argTypes:
    - opus_int32
    - opus_int32
    - opus_int32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 492
      start: 479
    functionDepth: 1
    functionLinenumber: 479
    functionLinenumberEnd: 492
    functionName: silk_SMLAWW_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_SMULWW
    - silk_assert
    - silk_ADD32
    - silk_ADD_SAT32
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SMLAWW_(opus_int32 a32, opus_int32 b32, opus_int32
      c32, char *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 502
      start: 501
    functionDepth: 0
    functionLinenumber: 501
    functionLinenumberEnd: 502
    functionName: silk_DIV32
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_DIV32(a,b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:505,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:507,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - a32
    - b32
    - file
    - line
    argTypes:
    - opus_int32
    - opus_int32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 511
      start: 502
    functionDepth: 1
    functionLinenumber: 502
    functionLinenumberEnd: 511
    functionName: silk_DIV32_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_DIV32_(opus_int32 a32, opus_int32 b32, char *file,
      int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 515
      start: 514
    functionDepth: 0
    functionLinenumber: 514
    functionLinenumberEnd: 515
    functionName: silk_DIV32_16
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 17
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_DIV32_16(a,b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:522,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:524,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 4
    argNames:
    - a32
    - b32
    - file
    - line
    argTypes:
    - opus_int32
    - opus_int32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 528
      start: 515
    functionDepth: 1
    functionLinenumber: 515
    functionLinenumberEnd: 528
    functionName: silk_DIV32_16_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_DIV32_16_(opus_int32 a32, opus_int32 b32, char *file,
      int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 540
      start: 539
    functionDepth: 0
    functionLinenumber: 539
    functionLinenumberEnd: 540
    functionName: silk_LSHIFT8
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_LSHIFT8(a,b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:549,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:551,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 4
    argNames:
    - a
    - shift
    - file
    - line
    argTypes:
    - opus_int8
    - opus_int32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 540
    functionDepth: 1
    functionLinenumber: 540
    functionLinenumberEnd: 555
    functionName: silk_LSHIFT8_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_LSHIFT8_(opus_int8 a, opus_int32 shift, char *file,
      int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 559
      start: 558
    functionDepth: 0
    functionLinenumber: 558
    functionLinenumberEnd: 559
    functionName: silk_LSHIFT16
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_LSHIFT16(a,b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:568,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:570,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 4
    argNames:
    - a
    - shift
    - file
    - line
    argTypes:
    - opus_int16
    - opus_int32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 574
      start: 559
    functionDepth: 1
    functionLinenumber: 559
    functionLinenumberEnd: 574
    functionName: silk_LSHIFT16_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_LSHIFT16_(opus_int16 a, opus_int32 shift, char *file,
      int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 578
      start: 577
    functionDepth: 0
    functionLinenumber: 577
    functionLinenumberEnd: 578
    functionName: silk_LSHIFT32
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_LSHIFT32(a,b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:587,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:589,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 4
    argNames:
    - a
    - shift
    - file
    - line
    argTypes:
    - opus_int32
    - opus_int32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 593
      start: 578
    functionDepth: 1
    functionLinenumber: 578
    functionLinenumberEnd: 593
    functionName: silk_LSHIFT32_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_LSHIFT32_(opus_int32 a, opus_int32 shift, char *file,
      int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 597
      start: 596
    functionDepth: 0
    functionLinenumber: 596
    functionLinenumberEnd: 597
    functionName: silk_LSHIFT64
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_LSHIFT64(a,b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:606,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:608,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 4
    argNames:
    - a
    - shift
    - file
    - line
    argTypes:
    - opus_int64
    - opus_int
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 597
    functionDepth: 1
    functionLinenumber: 597
    functionLinenumberEnd: 612
    functionName: silk_LSHIFT64_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_LSHIFT64_(opus_int64 a, opus_int shift, char *file,
      int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 616
      start: 615
    functionDepth: 0
    functionLinenumber: 615
    functionLinenumberEnd: 616
    functionName: silk_LSHIFT_ovflw
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_LSHIFT_ovflw(a,b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:619,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:621,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - a
    - shift
    - file
    - line
    argTypes:
    - opus_int32
    - opus_int32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 625
      start: 616
    functionDepth: 1
    functionLinenumber: 616
    functionLinenumberEnd: 625
    functionName: silk_LSHIFT_ovflw_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_LSHIFT_ovflw_(opus_int32 a, opus_int32 shift, char
      *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 629
      start: 628
    functionDepth: 0
    functionLinenumber: 628
    functionLinenumberEnd: 629
    functionName: silk_LSHIFT_uint
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_LSHIFT_uint(a,b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:634,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:636,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - a
    - shift
    - file
    - line
    argTypes:
    - opus_uint32
    - opus_int32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 640
      start: 629
    functionDepth: 1
    functionLinenumber: 629
    functionLinenumberEnd: 640
    functionName: opus_uint32::silk_LSHIFT_uint_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE opus_uint32 silk_LSHIFT_uint_(opus_uint32 a, opus_int32
      shift, char *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 644
      start: 643
    functionDepth: 0
    functionLinenumber: 643
    functionLinenumberEnd: 644
    functionName: silk_RSHITF8
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_RSHITF8(a,b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:647,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:649,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - a
    - shift
    - file
    - line
    argTypes:
    - opus_int8
    - opus_int32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 653
      start: 644
    functionDepth: 1
    functionLinenumber: 644
    functionLinenumberEnd: 653
    functionName: silk_RSHIFT8_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_RSHIFT8_(opus_int8 a, opus_int32 shift, char *file,
      int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 657
      start: 656
    functionDepth: 0
    functionLinenumber: 656
    functionLinenumberEnd: 657
    functionName: silk_RSHITF16
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_RSHITF16(a,b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:660,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:662,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - a
    - shift
    - file
    - line
    argTypes:
    - opus_int16
    - opus_int32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 666
      start: 657
    functionDepth: 1
    functionLinenumber: 657
    functionLinenumberEnd: 666
    functionName: silk_RSHIFT16_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_RSHIFT16_(opus_int16 a, opus_int32 shift, char *file,
      int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 670
      start: 669
    functionDepth: 0
    functionLinenumber: 669
    functionLinenumberEnd: 670
    functionName: silk_RSHIFT32
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_RSHIFT32(a,b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:673,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:675,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - a
    - shift
    - file
    - line
    argTypes:
    - opus_int32
    - opus_int32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 679
      start: 670
    functionDepth: 1
    functionLinenumber: 670
    functionLinenumberEnd: 679
    functionName: silk_RSHIFT32_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_RSHIFT32_(opus_int32 a, opus_int32 shift, char *file,
      int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 683
      start: 682
    functionDepth: 0
    functionLinenumber: 682
    functionLinenumberEnd: 683
    functionName: silk_RSHIFT64
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_RSHIFT64(a,b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:686,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:688,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - a
    - shift
    - file
    - line
    argTypes:
    - opus_int64
    - opus_int64
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 692
      start: 683
    functionDepth: 1
    functionLinenumber: 683
    functionLinenumberEnd: 692
    functionName: silk_RSHIFT64_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_RSHIFT64_(opus_int64 a, opus_int64 shift, char *file,
      int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 696
      start: 695
    functionDepth: 0
    functionLinenumber: 695
    functionLinenumberEnd: 696
    functionName: silk_RSHIFT_uint
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_RSHIFT_uint(a,b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:699,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:701,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - a
    - shift
    - file
    - line
    argTypes:
    - opus_uint32
    - opus_int32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 705
      start: 696
    functionDepth: 1
    functionLinenumber: 696
    functionLinenumberEnd: 705
    functionName: opus_uint32::silk_RSHIFT_uint_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE opus_uint32 silk_RSHIFT_uint_(opus_uint32 a, opus_int32
      shift, char *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 709
      start: 708
    functionDepth: 0
    functionLinenumber: 708
    functionLinenumberEnd: 709
    functionName: silk_ADD_LSHIFT
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_ADD_LSHIFT(a,b,c)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:714,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:716,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 5
    argNames:
    - a
    - b
    - shift
    - file
    - line
    argTypes:
    - int
    - int
    - int
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 720
      start: 709
    functionDepth: 1
    functionLinenumber: 709
    functionLinenumberEnd: 720
    functionName: silk_ADD_LSHIFT_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_ADD_LSHIFT_(int a, int b, int shift, char *file, int
      line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 724
      start: 723
    functionDepth: 0
    functionLinenumber: 723
    functionLinenumberEnd: 724
    functionName: silk_ADD_LSHIFT32
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_ADD_LSHIFT32(a,b,c)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: silk_ADD32_ovflw
      Src: /src/opus/silk/MacroDebug.h:726,1
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:729,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:731,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 5
    argNames:
    - a
    - b
    - shift
    - file
    - line
    argTypes:
    - opus_int32
    - opus_int32
    - opus_int32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 735
      start: 724
    functionDepth: 1
    functionLinenumber: 724
    functionLinenumberEnd: 735
    functionName: silk_ADD_LSHIFT32_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_ADD32_ovflw
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_ADD_LSHIFT32_(opus_int32 a, opus_int32 b, opus_int32
      shift, char *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 739
      start: 738
    functionDepth: 0
    functionLinenumber: 738
    functionLinenumberEnd: 739
    functionName: silk_ADD_LSHIFT_uint
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_ADD_LSHIFT_uint(a,b,c)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:744,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:746,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 5
    argNames:
    - a
    - b
    - shift
    - file
    - line
    argTypes:
    - opus_uint32
    - opus_uint32
    - opus_int32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 750
      start: 739
    functionDepth: 1
    functionLinenumber: 739
    functionLinenumberEnd: 750
    functionName: opus_uint32::silk_ADD_LSHIFT_uint_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE opus_uint32 silk_ADD_LSHIFT_uint_(opus_uint32 a, opus_uint32
      b, opus_int32 shift, char *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 754
      start: 753
    functionDepth: 0
    functionLinenumber: 753
    functionLinenumberEnd: 754
    functionName: silk_ADD_RSHIFT
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_ADD_RSHIFT(a,b,c)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:759,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:761,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 5
    argNames:
    - a
    - b
    - shift
    - file
    - line
    argTypes:
    - int
    - int
    - int
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 765
      start: 754
    functionDepth: 1
    functionLinenumber: 754
    functionLinenumberEnd: 765
    functionName: silk_ADD_RSHIFT_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_ADD_RSHIFT_(int a, int b, int shift, char *file, int
      line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 769
      start: 768
    functionDepth: 0
    functionLinenumber: 768
    functionLinenumberEnd: 769
    functionName: silk_ADD_RSHIFT32
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_ADD_RSHIFT32(a,b,c)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: silk_ADD32_ovflw
      Src: /src/opus/silk/MacroDebug.h:771,1
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:774,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:776,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 5
    argNames:
    - a
    - b
    - shift
    - file
    - line
    argTypes:
    - opus_int32
    - opus_int32
    - opus_int32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 780
      start: 769
    functionDepth: 1
    functionLinenumber: 769
    functionLinenumberEnd: 780
    functionName: silk_ADD_RSHIFT32_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_ADD32_ovflw
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_ADD_RSHIFT32_(opus_int32 a, opus_int32 b, opus_int32
      shift, char *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 784
      start: 783
    functionDepth: 0
    functionLinenumber: 783
    functionLinenumberEnd: 784
    functionName: silk_ADD_RSHIFT_uint
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_ADD_RSHIFT_uint(a,b,c)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:789,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:791,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 5
    argNames:
    - a
    - b
    - shift
    - file
    - line
    argTypes:
    - opus_uint32
    - opus_uint32
    - opus_int32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 795
      start: 784
    functionDepth: 1
    functionLinenumber: 784
    functionLinenumberEnd: 795
    functionName: opus_uint32::silk_ADD_RSHIFT_uint_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE opus_uint32 silk_ADD_RSHIFT_uint_(opus_uint32 a, opus_uint32
      b, opus_int32 shift, char *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 799
      start: 798
    functionDepth: 0
    functionLinenumber: 798
    functionLinenumberEnd: 799
    functionName: silk_SUB_LSHIFT32
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SUB_LSHIFT32(a,b,c)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: silk_SUB32_ovflw
      Src: /src/opus/silk/MacroDebug.h:801,1
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:804,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:806,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 5
    argNames:
    - a
    - b
    - shift
    - file
    - line
    argTypes:
    - opus_int32
    - opus_int32
    - opus_int32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 810
      start: 799
    functionDepth: 1
    functionLinenumber: 799
    functionLinenumberEnd: 810
    functionName: silk_SUB_LSHIFT32_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_SUB32_ovflw
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SUB_LSHIFT32_(opus_int32 a, opus_int32 b, opus_int32
      shift, char *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 814
      start: 813
    functionDepth: 0
    functionLinenumber: 813
    functionLinenumberEnd: 814
    functionName: silk_SUB_RSHIFT32
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SUB_RSHIFT32(a,b,c)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: silk_SUB32_ovflw
      Src: /src/opus/silk/MacroDebug.h:816,1
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:819,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:821,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 5
    argNames:
    - a
    - b
    - shift
    - file
    - line
    argTypes:
    - opus_int32
    - opus_int32
    - opus_int32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 825
      start: 814
    functionDepth: 1
    functionLinenumber: 814
    functionLinenumberEnd: 825
    functionName: silk_SUB_RSHIFT32_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_SUB32_ovflw
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SUB_RSHIFT32_(opus_int32 a, opus_int32 b, opus_int32
      shift, char *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 829
      start: 828
    functionDepth: 0
    functionLinenumber: 828
    functionLinenumberEnd: 829
    functionName: silk_RSHIFT_ROUND
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 17
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_RSHIFT_ROUND(a,b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:835,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:837,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 4
    argNames:
    - a
    - shift
    - file
    - line
    argTypes:
    - opus_int32
    - opus_int32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 841
      start: 829
    functionDepth: 1
    functionLinenumber: 829
    functionLinenumberEnd: 841
    functionName: silk_RSHIFT_ROUND_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_RSHIFT_ROUND_(opus_int32 a, opus_int32 shift, char
      *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 845
      start: 844
    functionDepth: 0
    functionLinenumber: 844
    functionLinenumberEnd: 845
    functionName: silk_RSHIFT_ROUND64
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_RSHIFT_ROUND64(a,b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:850,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:852,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - a
    - shift
    - file
    - line
    argTypes:
    - opus_int64
    - opus_int32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 857
      start: 845
    functionDepth: 1
    functionLinenumber: 845
    functionLinenumberEnd: 857
    functionName: silk_RSHIFT_ROUND64_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_RSHIFT_ROUND64_(opus_int64 a, opus_int32 shift, char
      *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 868
      start: 867
    functionDepth: 0
    functionLinenumber: 867
    functionLinenumberEnd: 868
    functionName: silk_abs_int64
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_abs_int64(a)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:871,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:873,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - a
    - file
    - line
    argTypes:
    - opus_int64
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 877
      start: 868
    functionDepth: 1
    functionLinenumber: 868
    functionLinenumberEnd: 877
    functionName: silk_abs_int64_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_abs_int64_(opus_int64 a, char *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 881
      start: 880
    functionDepth: 0
    functionLinenumber: 880
    functionLinenumberEnd: 881
    functionName: silk_abs_int32
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_abs_int32(a)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:884,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:886,1
    - Dst: silk_abs
      Src: /src/opus/silk/MacroDebug.h:889,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - a
    - file
    - line
    argTypes:
    - opus_int32
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 890
      start: 881
    functionDepth: 1
    functionLinenumber: 881
    functionLinenumberEnd: 890
    functionName: silk_abs_int32_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_abs
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_abs_int32_(opus_int32 a, char *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 894
      start: 893
    functionDepth: 0
    functionLinenumber: 893
    functionLinenumberEnd: 894
    functionName: silk_CHECK_FIT8
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_CHECK_FIT8(a)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:899,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:901,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - a
    - file
    - line
    argTypes:
    - opus_int64
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 905
      start: 894
    functionDepth: 1
    functionLinenumber: 894
    functionLinenumberEnd: 905
    functionName: silk_CHECK_FIT8_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_CHECK_FIT8_( opus_int64 a, char *file, int line )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 909
      start: 908
    functionDepth: 0
    functionLinenumber: 908
    functionLinenumberEnd: 909
    functionName: silk_CHECK_FIT16
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_CHECK_FIT16(a)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:914,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:916,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - a
    - file
    - line
    argTypes:
    - opus_int64
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 920
      start: 909
    functionDepth: 1
    functionLinenumber: 909
    functionLinenumberEnd: 920
    functionName: silk_CHECK_FIT16_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_CHECK_FIT16_( opus_int64 a, char *file, int line )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 924
      start: 923
    functionDepth: 0
    functionLinenumber: 923
    functionLinenumberEnd: 924
    functionName: silk_CHECK_FIT32
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_CHECK_FIT32(a)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/silk/MacroDebug.h:929,1
    - Dst: silk_assert
      Src: /src/opus/silk/MacroDebug.h:931,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - a
    - file
    - line
    argTypes:
    - opus_int64
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 935
      start: 924
    functionDepth: 1
    functionLinenumber: 924
    functionLinenumberEnd: 935
    functionName: silk_CHECK_FIT32_
    functionSourceFile: /src/opus/silk/MacroDebug.h
    functionUses: 0
    functionsReached:
    - silk_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_CHECK_FIT32_( opus_int64 a, char *file, int line )
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 4
    argNames:
    - pulses_comb
    - pulses_in
    - max_pulses
    - len
    argTypes:
    - opus_int*
    - opus_int*
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 57
    functionName: combine_and_check
    functionSourceFile: /src/opus/silk/encode_pulses.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE combine_and_check(    /* return ok                           */\n
      \   opus_int         *pulses_comb,           /* O                                   */\n
      \   const opus_int   *pulses_in,             /* I                                   */\n
      \   opus_int         max_pulses,             /* I    max value for sum of pulses
      \   */\n    opus_int         len                     /* I    number of output
      values        */\n)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/silk/encode_pulses.c:70,1
    - Dst: VARDECL
      Src: /src/opus/silk/encode_pulses.c:71,1
    - Dst: VARDECL
      Src: /src/opus/silk/encode_pulses.c:72,1
    - Dst: silk_memset
      Src: /src/opus/silk/encode_pulses.c:80,1
    - Dst: silk_assert
      Src: /src/opus/silk/encode_pulses.c:86,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/encode_pulses.c:87,1
    - Dst: celt_assert
      Src: /src/opus/silk/encode_pulses.c:89,1
    - Dst: silk_memset
      Src: /src/opus/silk/encode_pulses.c:91,1
    - Dst: ALLOC
      Src: /src/opus/silk/encode_pulses.c:95,1
    - Dst: silk_assert
      Src: /src/opus/silk/encode_pulses.c:96,1
    - Dst: silk_abs
      Src: /src/opus/silk/encode_pulses.c:98,1
    - Dst: silk_abs
      Src: /src/opus/silk/encode_pulses.c:99,1
    - Dst: silk_abs
      Src: /src/opus/silk/encode_pulses.c:100,1
    - Dst: silk_abs
      Src: /src/opus/silk/encode_pulses.c:101,1
    - Dst: ALLOC
      Src: /src/opus/silk/encode_pulses.c:105,1
    - Dst: ALLOC
      Src: /src/opus/silk/encode_pulses.c:106,1
    - Dst: combine_and_check
      Src: /src/opus/silk/encode_pulses.c:113,1
    - Dst: combine_and_check
      Src: /src/opus/silk/encode_pulses.c:115,1
    - Dst: combine_and_check
      Src: /src/opus/silk/encode_pulses.c:117,1
    - Dst: combine_and_check
      Src: /src/opus/silk/encode_pulses.c:119,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/encode_pulses.c:125,1
    - Dst: ec_enc_icdf
      Src: /src/opus/silk/encode_pulses.c:155,1
    - Dst: ec_enc_icdf
      Src: /src/opus/silk/encode_pulses.c:163,1
    - Dst: ec_enc_icdf
      Src: /src/opus/silk/encode_pulses.c:165,1
    - Dst: ec_enc_icdf
      Src: /src/opus/silk/encode_pulses.c:167,1
    - Dst: ec_enc_icdf
      Src: /src/opus/silk/encode_pulses.c:169,1
    - Dst: silk_shell_encoder
      Src: /src/opus/silk/encode_pulses.c:178,1
    - Dst: silk_abs
      Src: /src/opus/silk/encode_pulses.c:190,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/encode_pulses.c:192,1
    - Dst: ec_enc_icdf
      Src: /src/opus/silk/encode_pulses.c:193,1
    - Dst: ec_enc_icdf
      Src: /src/opus/silk/encode_pulses.c:196,1
    - Dst: silk_encode_signs
      Src: /src/opus/silk/encode_pulses.c:204,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 93
    argCount: 5
    argNames:
    - psRangeEnc
    - signalType
    - quantOffsetType
    - pulses
    - frame_length
    argTypes:
    - ec_enc*
    - opus_int
    - opus_int
    - opus_int8[]
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 206
    functionName: silk_encode_pulses
    functionSourceFile: /src/opus/silk/encode_pulses.c
    functionUses: 1
    functionsReached:
    - silk_shell_encoder
    - celt_assert
    - silk_abs
    - combine_and_check
    - silk_memset
    - silk_assert
    - silk_RSHIFT
    - VARDECL
    - ALLOC
    - ec_enc_icdf
    - silk_encode_signs
    linkageType: ''
    returnType: void
    signature: "void silk_encode_pulses(\n    ec_enc                      *psRangeEnc,
      \                   /* I/O  compressor data structure                   */\n
      \   const opus_int              signalType,                     /* I    Signal
      type                                 */\n    const opus_int              quantOffsetType,
      \               /* I    quantOffsetType                             */\n    opus_int8
      \                  pulses[],                       /* I    quantization indices
      \                       */\n    const opus_int              frame_length                    /*
      I    Frame length                                */\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/NLSF_decode.c:47,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/NLSF_decode.c:47,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/NLSF_decode.c:48,1
    - Dst: silk_SUB16
      Src: /src/opus/silk/NLSF_decode.c:50,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/NLSF_decode.c:50,1
    - Dst: silk_ADD16
      Src: /src/opus/silk/NLSF_decode.c:52,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/NLSF_decode.c:52,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NLSF_decode.c:54,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 5
    argNames:
    - x_Q10
    - indices
    - pred_coef_Q8
    - quant_step_size_Q16
    - order
    argTypes:
    - opus_int16[]
    - opus_int8[]
    - opus_uint8[]
    - opus_int
    - opus_int16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 57
    functionName: silk_NLSF_residual_dequant
    functionSourceFile: /src/opus/silk/NLSF_decode.c
    functionUses: 0
    functionsReached:
    - silk_LSHIFT
    - silk_RSHIFT
    - silk_SMULBB
    - silk_ADD16
    - silk_SUB16
    - silk_SMLAWB
    - SILK_FIX_CONST
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_NLSF_residual_dequant(          /* O    Returns RD
      value in Q30                     */\n          opus_int16         x_Q10[],                        /*
      O    Output [ order ]                            */\n    const opus_int8          indices[],
      \                     /* I    Quantization indices [ order ]              */\n
      \   const opus_uint8         pred_coef_Q8[],                 /* I    Backward
      predictor coefs [ order ]          */\n    const opus_int           quant_step_size_Q16,
      \           /* I    Quantization step size                      */\n    const
      opus_int16         order                           /* I    Number of input values
      \                     */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_NLSF_unpack
      Src: /src/opus/silk/NLSF_decode.c:78,1
    - Dst: silk_NLSF_residual_dequant
      Src: /src/opus/silk/NLSF_decode.c:81,1
    - Dst: silk_ADD_LSHIFT32
      Src: /src/opus/silk/NLSF_decode.c:87,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/NLSF_decode.c:87,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/NLSF_decode.c:87,1
    - Dst: silk_LIMIT
      Src: /src/opus/silk/NLSF_decode.c:88,1
    - Dst: silk_NLSF_stabilize
      Src: /src/opus/silk/NLSF_decode.c:92,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 3
    argNames:
    - pNLSF_Q15
    - NLSFIndices
    - psNLSF_CB
    argTypes:
    - opus_int16*
    - opus_int8*
    - silk_NLSF_CB_struct*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 63
    functionDepth: 2
    functionLinenumber: 63
    functionLinenumberEnd: 93
    functionName: silk_NLSF_decode
    functionSourceFile: /src/opus/silk/NLSF_decode.c
    functionUses: 1
    functionsReached:
    - silk_ADD_LSHIFT32
    - silk_LSHIFT
    - silk_NLSF_unpack
    - silk_LIMIT
    - silk_NLSF_residual_dequant
    - silk_NLSF_stabilize
    - silk_DIV32_16
    linkageType: ''
    returnType: void
    signature: "void silk_NLSF_decode(\n          opus_int16            *pNLSF_Q15,
      \                    /* O    Quantized NLSF vector [ LPC_ORDER ]         */\n
      \         opus_int8             *NLSFIndices,                   /* I    Codebook
      path vector [ LPC_ORDER + 1 ]      */\n    const silk_NLSF_CB_struct   *psNLSF_CB
      \                     /* I    Codebook object                             */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/ana_filt_bank_1.c:47,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/ana_filt_bank_1.c:53,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/ana_filt_bank_1.c:56,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/ana_filt_bank_1.c:57,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/ana_filt_bank_1.c:58,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/ana_filt_bank_1.c:59,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/ana_filt_bank_1.c:62,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/ana_filt_bank_1.c:65,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/ana_filt_bank_1.c:66,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/ana_filt_bank_1.c:67,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/ana_filt_bank_1.c:68,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/ana_filt_bank_1.c:71,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/ana_filt_bank_1.c:71,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/ana_filt_bank_1.c:71,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/ana_filt_bank_1.c:72,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/ana_filt_bank_1.c:72,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/ana_filt_bank_1.c:72,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 5
    argNames:
    - in
    - S
    - outL
    - outH
    - N
    argTypes:
    - opus_int16*
    - opus_int32*
    - opus_int16*
    - opus_int16*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 74
    functionName: silk_ana_filt_bank_1
    functionSourceFile: /src/opus/silk/ana_filt_bank_1.c
    functionUses: 1
    functionsReached:
    - silk_LSHIFT
    - silk_RSHIFT
    - silk_ADD32
    - silk_SMULWB
    - silk_SAT16
    - silk_SUB32
    - silk_SMLAWB
    - silk_RSHIFT_ROUND
    linkageType: ''
    returnType: void
    signature: "void silk_ana_filt_bank_1(\n    const opus_int16            *in,                /*
      I    Input signal [N]                                            */\n    opus_int32
      \                 *S,                 /* I/O  State vector [2]                                            */\n
      \   opus_int16                  *outL,              /* O    Low band [N/2]                                              */\n
      \   opus_int16                  *outH,              /* O    High band [N/2]
      \                                            */\n    const opus_int32            N
      \                  /* I    Number of input samples                                     */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/silk/stereo_encode_pred.c:44,1
    - Dst: ec_enc_icdf
      Src: /src/opus/silk/stereo_encode_pred.c:45,1
    - Dst: celt_assert
      Src: /src/opus/silk/stereo_encode_pred.c:47,1
    - Dst: celt_assert
      Src: /src/opus/silk/stereo_encode_pred.c:48,1
    - Dst: ec_enc_icdf
      Src: /src/opus/silk/stereo_encode_pred.c:49,1
    - Dst: ec_enc_icdf
      Src: /src/opus/silk/stereo_encode_pred.c:50,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - psRangeEnc
    - ix
    argTypes:
    - ec_enc*
    - opus_int8[][]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 52
    functionName: silk_stereo_encode_pred
    functionSourceFile: /src/opus/silk/stereo_encode_pred.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - ec_enc_icdf
    linkageType: ''
    returnType: void
    signature: "void silk_stereo_encode_pred(\n    ec_enc                      *psRangeEnc,
      \                   /* I/O  Compressor data structure                   */\n
      \   opus_int8                   ix[ 2 ][ 3 ]                    /* I    Quantization
      indices                        */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ec_enc_icdf
      Src: /src/opus/silk/stereo_encode_pred.c:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - psRangeEnc
    - mid_only_flag
    argTypes:
    - ec_enc*
    - opus_int8
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 62
    functionName: silk_stereo_encode_mid_only
    functionSourceFile: /src/opus/silk/stereo_encode_pred.c
    functionUses: 1
    functionsReached:
    - ec_enc_icdf
    linkageType: ''
    returnType: void
    signature: "void silk_stereo_encode_mid_only(\n    ec_enc                      *psRangeEnc,
      \                   /* I/O  Compressor data structure                   */\n
      \   opus_int8                   mid_only_flag\n)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: ec_dec_icdf
      Src: /src/opus/silk/decode_indices.c:52,1
    - Dst: ec_dec_icdf
      Src: /src/opus/silk/decode_indices.c:54,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/decode_indices.c:56,1
    - Dst: ec_dec_icdf
      Src: /src/opus/silk/decode_indices.c:65,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/decode_indices.c:68,1
    - Dst: ec_dec_icdf
      Src: /src/opus/silk/decode_indices.c:68,1
    - Dst: ec_dec_icdf
      Src: /src/opus/silk/decode_indices.c:69,1
    - Dst: ec_dec_icdf
      Src: /src/opus/silk/decode_indices.c:74,1
    - Dst: ec_dec_icdf
      Src: /src/opus/silk/decode_indices.c:80,1
    - Dst: silk_NLSF_unpack
      Src: /src/opus/silk/decode_indices.c:81,1
    - Dst: celt_assert
      Src: /src/opus/silk/decode_indices.c:82,1
    - Dst: ec_dec_icdf
      Src: /src/opus/silk/decode_indices.c:84,1
    - Dst: ec_dec_icdf
      Src: /src/opus/silk/decode_indices.c:86,1
    - Dst: ec_dec_icdf
      Src: /src/opus/silk/decode_indices.c:88,1
    - Dst: ec_dec_icdf
      Src: /src/opus/silk/decode_indices.c:95,1
    - Dst: ec_dec_icdf
      Src: /src/opus/silk/decode_indices.c:109,1
    - Dst: ec_dec_icdf
      Src: /src/opus/silk/decode_indices.c:118,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/decode_indices.c:118,1
    - Dst: ec_dec_icdf
      Src: /src/opus/silk/decode_indices.c:119,1
    - Dst: ec_dec_icdf
      Src: /src/opus/silk/decode_indices.c:124,1
    - Dst: ec_dec_icdf
      Src: /src/opus/silk/decode_indices.c:130,1
    - Dst: ec_dec_icdf
      Src: /src/opus/silk/decode_indices.c:133,1
    - Dst: ec_dec_icdf
      Src: /src/opus/silk/decode_indices.c:140,1
    - Dst: ec_dec_icdf
      Src: /src/opus/silk/decode_indices.c:150,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 63
    argCount: 5
    argNames:
    - psDec
    - psRangeDec
    - FrameIndex
    - decode_LBRR
    - condCoding
    argTypes:
    - silk_decoder_state*
    - ec_dec*
    - opus_int
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 151
    functionName: silk_decode_indices
    functionSourceFile: /src/opus/silk/decode_indices.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - silk_NLSF_unpack
    - silk_LSHIFT
    - silk_RSHIFT
    - ec_dec_icdf
    linkageType: ''
    returnType: void
    signature: "void silk_decode_indices(\n    silk_decoder_state          *psDec,
      \                        /* I/O  State                                       */\n
      \   ec_dec                      *psRangeDec,                    /* I/O  Compressor
      data structure                   */\n    opus_int                    FrameIndex,
      \                    /* I    Frame number                                */\n
      \   opus_int                    decode_LBRR,                    /* I    Flag
      indicating LBRR data is being decoded  */\n    opus_int                    condCoding
      \                     /* I    The type of conditional coding to use       */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - out
    - in
    - len
    argTypes:
    - opus_int*
    - opus_int*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 46
    functionName: combine_pulses
    functionSourceFile: /src/opus/silk/shell_coder.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE combine_pulses(\n    opus_int         *out,   /* O    combined
      pulses vector [len] */\n    const opus_int   *in,    /* I    input vector       [2
      * len] */\n    const opus_int   len     /* I    number of OUTPUT samples     */\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ec_enc_icdf
      Src: /src/opus/silk/shell_coder.c:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - psRangeEnc
    - p_child1
    - p
    - shell_table
    argTypes:
    - ec_enc*
    - opus_int
    - opus_int
    - opus_uint8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 58
    functionName: encode_split
    functionSourceFile: /src/opus/silk/shell_coder.c
    functionUses: 0
    functionsReached:
    - ec_enc_icdf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE encode_split(\n    ec_enc                      *psRangeEnc,
      \   /* I/O  compressor data structure                   */\n    const opus_int
      \             p_child1,       /* I    pulse amplitude of first child subframe
      \    */\n    const opus_int              p,              /* I    pulse amplitude
      of current subframe         */\n    const opus_uint8            *shell_table
      \   /* I    table of shell cdfs                         */\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ec_dec_icdf
      Src: /src/opus/silk/shell_coder.c:69,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 5
    argNames:
    - p_child1
    - p_child2
    - psRangeDec
    - p
    - shell_table
    argTypes:
    - opus_int16*
    - opus_int16*
    - ec_dec*
    - opus_int
    - opus_uint8*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 75
    functionName: decode_split
    functionSourceFile: /src/opus/silk/shell_coder.c
    functionUses: 0
    functionsReached:
    - ec_dec_icdf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE decode_split(\n    opus_int16                  *p_child1,
      \     /* O    pulse amplitude of first child subframe     */\n    opus_int16
      \                 *p_child2,      /* O    pulse amplitude of second child subframe
      \   */\n    ec_dec                      *psRangeDec,    /* I/O  Compressor data
      structure                   */\n    const opus_int              p,              /*
      I    pulse amplitude of current subframe         */\n    const opus_uint8            *shell_table
      \   /* I    table of shell cdfs                         */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_assert
      Src: /src/opus/silk/shell_coder.c:86,1
    - Dst: combine_pulses
      Src: /src/opus/silk/shell_coder.c:89,1
    - Dst: combine_pulses
      Src: /src/opus/silk/shell_coder.c:90,1
    - Dst: combine_pulses
      Src: /src/opus/silk/shell_coder.c:91,1
    - Dst: combine_pulses
      Src: /src/opus/silk/shell_coder.c:92,1
    - Dst: encode_split
      Src: /src/opus/silk/shell_coder.c:94,1
    - Dst: encode_split
      Src: /src/opus/silk/shell_coder.c:96,1
    - Dst: encode_split
      Src: /src/opus/silk/shell_coder.c:98,1
    - Dst: encode_split
      Src: /src/opus/silk/shell_coder.c:99,1
    - Dst: encode_split
      Src: /src/opus/silk/shell_coder.c:100,1
    - Dst: encode_split
      Src: /src/opus/silk/shell_coder.c:102,1
    - Dst: encode_split
      Src: /src/opus/silk/shell_coder.c:103,1
    - Dst: encode_split
      Src: /src/opus/silk/shell_coder.c:104,1
    - Dst: encode_split
      Src: /src/opus/silk/shell_coder.c:106,1
    - Dst: encode_split
      Src: /src/opus/silk/shell_coder.c:108,1
    - Dst: encode_split
      Src: /src/opus/silk/shell_coder.c:109,1
    - Dst: encode_split
      Src: /src/opus/silk/shell_coder.c:110,1
    - Dst: encode_split
      Src: /src/opus/silk/shell_coder.c:112,1
    - Dst: encode_split
      Src: /src/opus/silk/shell_coder.c:113,1
    - Dst: encode_split
      Src: /src/opus/silk/shell_coder.c:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 21
    argCount: 2
    argNames:
    - psRangeEnc
    - pulses0
    argTypes:
    - ec_enc*
    - opus_int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 78
    functionDepth: 2
    functionLinenumber: 78
    functionLinenumberEnd: 115
    functionName: silk_shell_encoder
    functionSourceFile: /src/opus/silk/shell_coder.c
    functionUses: 1
    functionsReached:
    - encode_split
    - combine_pulses
    - silk_assert
    linkageType: ''
    returnType: void
    signature: "void silk_shell_encoder(\n    ec_enc                      *psRangeEnc,
      \                   /* I/O  compressor data structure                   */\n
      \   const opus_int              *pulses0                        /* I    data:
      nonnegative pulse amplitudes          */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_assert
      Src: /src/opus/silk/shell_coder.c:128,1
    - Dst: decode_split
      Src: /src/opus/silk/shell_coder.c:130,1
    - Dst: decode_split
      Src: /src/opus/silk/shell_coder.c:132,1
    - Dst: decode_split
      Src: /src/opus/silk/shell_coder.c:134,1
    - Dst: decode_split
      Src: /src/opus/silk/shell_coder.c:135,1
    - Dst: decode_split
      Src: /src/opus/silk/shell_coder.c:136,1
    - Dst: decode_split
      Src: /src/opus/silk/shell_coder.c:138,1
    - Dst: decode_split
      Src: /src/opus/silk/shell_coder.c:139,1
    - Dst: decode_split
      Src: /src/opus/silk/shell_coder.c:140,1
    - Dst: decode_split
      Src: /src/opus/silk/shell_coder.c:142,1
    - Dst: decode_split
      Src: /src/opus/silk/shell_coder.c:144,1
    - Dst: decode_split
      Src: /src/opus/silk/shell_coder.c:145,1
    - Dst: decode_split
      Src: /src/opus/silk/shell_coder.c:146,1
    - Dst: decode_split
      Src: /src/opus/silk/shell_coder.c:148,1
    - Dst: decode_split
      Src: /src/opus/silk/shell_coder.c:149,1
    - Dst: decode_split
      Src: /src/opus/silk/shell_coder.c:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 3
    argNames:
    - pulses0
    - psRangeDec
    - pulses4
    argTypes:
    - opus_int16*
    - ec_dec*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 119
    functionDepth: 2
    functionLinenumber: 119
    functionLinenumberEnd: 151
    functionName: silk_shell_decoder
    functionSourceFile: /src/opus/silk/shell_coder.c
    functionUses: 1
    functionsReached:
    - silk_assert
    - decode_split
    linkageType: ''
    returnType: void
    signature: "void silk_shell_decoder(\n    opus_int16                  *pulses0,
      \                      /* O    data: nonnegative pulse amplitudes          */\n
      \   ec_dec                      *psRangeDec,                    /* I/O  Compressor
      data structure                   */\n    const opus_int              pulses4
      \                        /* I    number of pulses per pulse-subframe         */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 38
    functionName: silk_enc_map
    functionSourceFile: /src/opus/silk/code_signs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_enc_map(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 39
    functionName: silk_dec_map
    functionSourceFile: /src/opus/silk/code_signs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_dec_map(a)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: silk_SMULBB
      Src: /src/opus/silk/code_signs.c:57,1
    - Dst: silk_ADD_LSHIFT
      Src: /src/opus/silk/code_signs.c:57,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/code_signs.c:59,1
    - Dst: silk_min
      Src: /src/opus/silk/code_signs.c:63,1
    - Dst: ec_enc_icdf
      Src: /src/opus/silk/code_signs.c:66,1
    - Dst: silk_enc_map
      Src: /src/opus/silk/code_signs.c:66,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 6
    argNames:
    - psRangeEnc
    - pulses
    - length
    - signalType
    - quantOffsetType
    - sum_pulses
    argTypes:
    - ec_enc*
    - opus_int8[]
    - opus_int
    - opus_int
    - opus_int
    - opus_int[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 72
    functionName: silk_encode_signs
    functionSourceFile: /src/opus/silk/code_signs.c
    functionUses: 1
    functionsReached:
    - silk_min
    - silk_RSHIFT
    - silk_SMULBB
    - ec_enc_icdf
    - silk_ADD_LSHIFT
    - silk_enc_map
    linkageType: ''
    returnType: void
    signature: "void silk_encode_signs(\n    ec_enc                      *psRangeEnc,
      \                       /* I/O  Compressor data structure                   */\n
      \   const opus_int8             pulses[],                           /* I    pulse
      signal                                */\n    opus_int                    length,
      \                            /* I    length of input                             */\n
      \   const opus_int              signalType,                         /* I    Signal
      type                                 */\n    const opus_int              quantOffsetType,
      \                   /* I    Quantization offset type                    */\n
      \   const opus_int              sum_pulses[ MAX_NB_SHELL_BLOCKS ]   /* I    Sum
      of absolute pulses per block            */\n)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: silk_SMULBB
      Src: /src/opus/silk/code_signs.c:91,1
    - Dst: silk_ADD_LSHIFT
      Src: /src/opus/silk/code_signs.c:91,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/code_signs.c:93,1
    - Dst: silk_min
      Src: /src/opus/silk/code_signs.c:97,1
    - Dst: ec_dec_icdf
      Src: /src/opus/silk/code_signs.c:103,1
    - Dst: silk_dec_map
      Src: /src/opus/silk/code_signs.c:108,1
    - Dst: ec_dec_icdf
      Src: /src/opus/silk/code_signs.c:108,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 6
    argNames:
    - psRangeDec
    - pulses
    - length
    - signalType
    - quantOffsetType
    - sum_pulses
    argTypes:
    - ec_dec*
    - opus_int16[]
    - opus_int
    - opus_int
    - opus_int
    - opus_int[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 115
    functionName: silk_decode_signs
    functionSourceFile: /src/opus/silk/code_signs.c
    functionUses: 1
    functionsReached:
    - silk_min
    - silk_RSHIFT
    - silk_SMULBB
    - silk_dec_map
    - silk_ADD_LSHIFT
    - ec_dec_icdf
    linkageType: ''
    returnType: void
    signature: "void silk_decode_signs(\n    ec_dec                      *psRangeDec,
      \                       /* I/O  Compressor data structure                   */\n
      \   opus_int16                  pulses[],                           /* I/O  pulse
      signal                                */\n    opus_int                    length,
      \                            /* I    length of input                             */\n
      \   const opus_int              signalType,                         /* I    Signal
      type                                 */\n    const opus_int              quantOffsetType,
      \                   /* I    Quantization offset type                    */\n
      \   const opus_int              sum_pulses[ MAX_NB_SHELL_BLOCKS ]   /* I    Sum
      of absolute pulses per block            */\n)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: silk_SMULWB
      Src: /src/opus/silk/gain_quant.c:51,1
    - Dst: silk_lin2log
      Src: /src/opus/silk/gain_quant.c:51,1
    - Dst: silk_LIMIT_int
      Src: /src/opus/silk/gain_quant.c:57,1
    - Dst: silk_LIMIT_int
      Src: /src/opus/silk/gain_quant.c:62,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/gain_quant.c:71,1
    - Dst: silk_LIMIT_int
      Src: /src/opus/silk/gain_quant.c:74,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/gain_quant.c:78,1
    - Dst: silk_min_int
      Src: /src/opus/silk/gain_quant.c:79,1
    - Dst: silk_log2lin
      Src: /src/opus/silk/gain_quant.c:89,1
    - Dst: silk_min_32
      Src: /src/opus/silk/gain_quant.c:89,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/gain_quant.c:89,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 27
    argCount: 5
    argNames:
    - ind
    - gain_Q16
    - prev_ind
    - conditional
    - nb_subfr
    argTypes:
    - opus_int8[]
    - opus_int32[]
    - opus_int8*
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 39
    functionDepth: 2
    functionLinenumber: 39
    functionLinenumberEnd: 91
    functionName: silk_gains_quant
    functionSourceFile: /src/opus/silk/gain_quant.c
    functionUses: 0
    functionsReached:
    - silk_LSHIFT
    - silk_min_int
    - silk_RSHIFT
    - silk_SMULWB
    - silk_lin2log
    - silk_log2lin
    - silk_min_32
    - silk_LIMIT_int
    linkageType: ''
    returnType: void
    signature: "void silk_gains_quant(\n    opus_int8                   ind[ MAX_NB_SUBFR
      ],            /* O    gain indices                                */\n    opus_int32
      \                 gain_Q16[ MAX_NB_SUBFR ],       /* I/O  gains (quantized out)
      \                      */\n    opus_int8                   *prev_ind,                      /*
      I/O  last index in previous frame                */\n    const opus_int              conditional,
      \                   /* I    first gain is delta coded if 1              */\n
      \   const opus_int              nb_subfr                        /* I    number
      of subframes                         */\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: silk_max_int
      Src: /src/opus/silk/gain_quant.c:107,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/gain_quant.c:115,1
    - Dst: silk_LIMIT_int
      Src: /src/opus/silk/gain_quant.c:120,1
    - Dst: silk_log2lin
      Src: /src/opus/silk/gain_quant.c:123,1
    - Dst: silk_min_32
      Src: /src/opus/silk/gain_quant.c:123,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/gain_quant.c:123,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 5
    argNames:
    - gain_Q16
    - ind
    - prev_ind
    - conditional
    - nb_subfr
    argTypes:
    - opus_int32[]
    - opus_int8[]
    - opus_int8*
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 94
    functionDepth: 2
    functionLinenumber: 94
    functionLinenumberEnd: 125
    functionName: silk_gains_dequant
    functionSourceFile: /src/opus/silk/gain_quant.c
    functionUses: 1
    functionsReached:
    - silk_LSHIFT
    - silk_SMULWB
    - silk_max_int
    - silk_log2lin
    - silk_min_32
    - silk_LIMIT_int
    linkageType: ''
    returnType: void
    signature: "void silk_gains_dequant(\n    opus_int32                  gain_Q16[
      MAX_NB_SUBFR ],       /* O    quantized gains                             */\n
      \   const opus_int8             ind[ MAX_NB_SUBFR ],            /* I    gain
      indices                                */\n    opus_int8                   *prev_ind,
      \                     /* I/O  last index in previous frame                */\n
      \   const opus_int              conditional,                    /* I    first
      gain is delta coded if 1              */\n    const opus_int              nb_subfr
      \                       /* I    number of subframes                          */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_ADD_LSHIFT32
      Src: /src/opus/silk/gain_quant.c:138,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ind
    - nb_subfr
    argTypes:
    - opus_int8[]
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 142
    functionName: silk_gains_ID
    functionSourceFile: /src/opus/silk/gain_quant.c
    functionUses: 0
    functionsReached:
    - silk_ADD_LSHIFT32
    linkageType: ''
    returnType: opus_int32
    signature: "opus_int32 silk_gains_ID(                                       /*
      O    returns unique identifier of gains          */\n    const opus_int8             ind[
      MAX_NB_SUBFR ],            /* I    gain indices                                */\n
      \   const opus_int              nb_subfr                        /* I    number
      of subframes                         */\n)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/silk/decode_core.c:48,1
    - Dst: VARDECL
      Src: /src/opus/silk/decode_core.c:49,1
    - Dst: VARDECL
      Src: /src/opus/silk/decode_core.c:52,1
    - Dst: VARDECL
      Src: /src/opus/silk/decode_core.c:53,1
    - Dst: silk_assert
      Src: /src/opus/silk/decode_core.c:56,1
    - Dst: ALLOC
      Src: /src/opus/silk/decode_core.c:58,1
    - Dst: ALLOC
      Src: /src/opus/silk/decode_core.c:59,1
    - Dst: ALLOC
      Src: /src/opus/silk/decode_core.c:60,1
    - Dst: ALLOC
      Src: /src/opus/silk/decode_core.c:64,1
    - Dst: ALLOC
      Src: /src/opus/silk/decode_core.c:66,1
    - Dst: silk_RAND
      Src: /src/opus/silk/decode_core.c:80,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/decode_core.c:81,1
    - Dst: silk_ADD32_ovflw
      Src: /src/opus/silk/decode_core.c:93,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/decode_core.c:97,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/decode_core.c:108,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/decode_core.c:112,1
    - Dst: silk_INVERSE32_varQ
      Src: /src/opus/silk/decode_core.c:113,1
    - Dst: silk_DIV32_varQ
      Src: /src/opus/silk/decode_core.c:117,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/decode_core.c:121,1
    - Dst: silk_assert
      Src: /src/opus/silk/decode_core.c:128,1
    - Dst: silk_memset
      Src: /src/opus/silk/decode_core.c:135,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/decode_core.c:136,1
    - Dst: celt_assert
      Src: /src/opus/silk/decode_core.c:150,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/decode_core.c:153,1
    - Dst: silk_LPC_analysis_filter
      Src: /src/opus/silk/decode_core.c:156,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/decode_core.c:162,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/decode_core.c:162,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/decode_core.c:165,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/decode_core.c:171,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/decode_core.c:185,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/decode_core.c:186,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/decode_core.c:187,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/decode_core.c:188,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/decode_core.c:189,1
    - Dst: silk_ADD_LSHIFT32
      Src: /src/opus/silk/decode_core.c:193,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/decode_core.c:196,1
    - Dst: celt_assert
      Src: /src/opus/silk/decode_core.c:205,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/decode_core.c:207,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/decode_core.c:208,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/decode_core.c:209,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/decode_core.c:210,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/decode_core.c:211,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/decode_core.c:212,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/decode_core.c:213,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/decode_core.c:214,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/decode_core.c:215,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/decode_core.c:216,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/decode_core.c:217,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/decode_core.c:219,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/decode_core.c:220,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/decode_core.c:221,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/decode_core.c:222,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/decode_core.c:223,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/decode_core.c:224,1
    - Dst: silk_ADD_SAT32
      Src: /src/opus/silk/decode_core.c:228,1
    - Dst: silk_LSHIFT_SAT32
      Src: /src/opus/silk/decode_core.c:228,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/decode_core.c:231,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/decode_core.c:231,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/decode_core.c:231,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/decode_core.c:235,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/decode_core.c:241,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 132
    argCount: 5
    argNames:
    - psDec
    - psDecCtrl
    - xq
    - pulses
    - arch
    argTypes:
    - silk_decoder_state*
    - silk_decoder_control*
    - opus_int16[]
    - opus_int16[]
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 38
    functionDepth: 2
    functionLinenumber: 38
    functionLinenumberEnd: 243
    functionName: silk_decode_core
    functionSourceFile: /src/opus/silk/decode_core.c
    functionUses: 1
    functionsReached:
    - silk_SMULWB
    - silk_SMLAWB
    - silk_ADD_SAT32
    - silk_DIV32_varQ
    - silk_assert
    - silk_RSHIFT
    - silk_RSHIFT_ROUND
    - silk_SAT16
    - VARDECL
    - ALLOC
    - celt_assert
    - silk_ADD_LSHIFT32
    - silk_LSHIFT
    - silk_memset
    - SILK_FIX_CONST
    - silk_ADD32_ovflw
    - silk_memcpy
    - silk_RAND
    - silk_SMULWW
    - silk_INVERSE32_varQ
    - silk_LPC_analysis_filter
    - silk_LSHIFT_SAT32
    linkageType: ''
    returnType: void
    signature: "void silk_decode_core(\n    silk_decoder_state          *psDec,                         /*
      I/O  Decoder state                               */\n    silk_decoder_control
      \       *psDecCtrl,                     /* I    Decoder control                             */\n
      \   opus_int16                  xq[],                           /* O    Decoded
      speech                              */\n    const opus_int16            pulses[
      MAX_FRAME_LENGTH ],     /* I    Pulse signal                                */\n
      \   int                         arch                            /* I    Run-time
      architecture                       */\n)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: silk_assert
      Src: /src/opus/silk/NLSF_stabilize.c:58,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/NLSF_stabilize.c:103,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/NLSF_stabilize.c:110,1
    - Dst: silk_LIMIT_32
      Src: /src/opus/silk/NLSF_stabilize.c:113,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/NLSF_stabilize.c:113,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/NLSF_stabilize.c:115,1
    - Dst: silk_insertion_sort_increasing_all_values_int16
      Src: /src/opus/silk/NLSF_stabilize.c:126,1
    - Dst: silk_max_int
      Src: /src/opus/silk/NLSF_stabilize.c:129,1
    - Dst: silk_max_int
      Src: /src/opus/silk/NLSF_stabilize.c:133,1
    - Dst: silk_ADD_SAT16
      Src: /src/opus/silk/NLSF_stabilize.c:133,1
    - Dst: silk_min_int
      Src: /src/opus/silk/NLSF_stabilize.c:136,1
    - Dst: silk_min_int
      Src: /src/opus/silk/NLSF_stabilize.c:140,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 50
    argCount: 3
    argNames:
    - NLSF_Q15
    - NDeltaMin_Q15
    - L
    argTypes:
    - opus_int16*
    - opus_int16*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 47
    functionDepth: 2
    functionLinenumber: 47
    functionLinenumberEnd: 142
    functionName: silk_NLSF_stabilize
    functionSourceFile: /src/opus/silk/NLSF_stabilize.c
    functionUses: 1
    functionsReached:
    - silk_ADD_SAT16
    - silk_RSHIFT
    - silk_assert
    - silk_max_int
    - silk_LIMIT_32
    - silk_min_int
    - silk_RSHIFT_ROUND
    - silk_insertion_sort_increasing_all_values_int16
    linkageType: ''
    returnType: void
    signature: "void silk_NLSF_stabilize(\n          opus_int16            *NLSF_Q15,
      \         /* I/O   Unstable/stabilized normalized LSF vector in Q15 [L]       */\n
      \   const opus_int16            *NDeltaMin_Q15,     /* I     Min distance vector,
      NDeltaMin_Q15[L] must be >= 1 [L+1]   */\n    const opus_int              L
      \                  /* I     Number of NLSF parameters in the input vector              */\n)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/silk/NSQ.c:98,1
    - Dst: VARDECL
      Src: /src/opus/silk/NSQ.c:99,1
    - Dst: VARDECL
      Src: /src/opus/silk/NSQ.c:102,1
    - Dst: silk_assert
      Src: /src/opus/silk/NSQ.c:110,1
    - Dst: ALLOC
      Src: /src/opus/silk/NSQ.c:120,1
    - Dst: ALLOC
      Src: /src/opus/silk/NSQ.c:121,1
    - Dst: ALLOC
      Src: /src/opus/silk/NSQ.c:122,1
    - Dst: silk_assert
      Src: /src/opus/silk/NSQ.c:133,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/NSQ.c:134,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/NSQ.c:135,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/NSQ.c:135,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/NSQ.c:143,1
    - Dst: celt_assert
      Src: /src/opus/silk/NSQ.c:146,1
    - Dst: silk_LPC_analysis_filter
      Src: /src/opus/silk/NSQ.c:148,1
    - Dst: silk_nsq_scale_states
      Src: /src/opus/silk/NSQ.c:156,1
    - Dst: silk_noise_shape_quantizer
      Src: /src/opus/silk/NSQ.c:158,1
    - Dst: silk_memmove
      Src: /src/opus/silk/NSQ.c:171,1
    - Dst: silk_memmove
      Src: /src/opus/silk/NSQ.c:172,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 48
    argCount: 15
    argNames:
    - psEncC
    - NSQ
    - psIndices
    - x16
    - pulses
    - PredCoef_Q12
    - LTPCoef_Q14
    - AR_Q13
    - HarmShapeGain_Q14
    - Tilt_Q14
    - LF_shp_Q14
    - Gains_Q16
    - pitchL
    - Lambda_Q10
    - LTP_scale_Q14
    argTypes:
    - silk_encoder_state*
    - silk_nsq_state*
    - SideInfoIndices*
    - opus_int16[]
    - opus_int8[]
    - opus_int16*
    - opus_int16[]
    - opus_int16[]
    - opus_int[]
    - opus_int[]
    - opus_int32[]
    - opus_int32[]
    - opus_int[]
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 76
    functionDepth: 2
    functionLinenumber: 76
    functionLinenumberEnd: 174
    functionName: silk_NSQ_c
    functionSourceFile: /src/opus/silk/NSQ.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - silk_LSHIFT
    - silk_assert
    - silk_RSHIFT
    - VARDECL
    - ALLOC
    - silk_nsq_scale_states
    - silk_memmove
    - silk_noise_shape_quantizer
    - silk_LPC_analysis_filter
    linkageType: ''
    returnType: void
    signature: "void silk_NSQ_c\n(\n    const silk_encoder_state    *psEncC,                                      /*
      I    Encoder State                   */\n    silk_nsq_state              *NSQ,
      \                                        /* I/O  NSQ state                       */\n
      \   SideInfoIndices             *psIndices,                                   /*
      I/O  Quantization Indices            */\n    const opus_int16            x16[],
      \                                       /* I    Input                           */\n
      \   opus_int8                   pulses[],                                     /*
      O    Quantized pulse signal          */\n    const opus_int16            *PredCoef_Q12,
      \                               /* I    Short term prediction coefs     */\n
      \   const opus_int16            LTPCoef_Q14[ LTP_ORDER * MAX_NB_SUBFR ],      /*
      I    Long term prediction coefs      */\n    const opus_int16            AR_Q13[
      MAX_NB_SUBFR * MAX_SHAPE_LPC_ORDER ], /* I    Noise shaping coefs             */\n
      \   const opus_int              HarmShapeGain_Q14[ MAX_NB_SUBFR ],            /*
      I    Long term shaping coefs         */\n    const opus_int              Tilt_Q14[
      MAX_NB_SUBFR ],                     /* I    Spectral tilt                   */\n
      \   const opus_int32            LF_shp_Q14[ MAX_NB_SUBFR ],                   /*
      I    Low frequency shaping coefs     */\n    const opus_int32            Gains_Q16[
      MAX_NB_SUBFR ],                    /* I    Quantization step sizes         */\n
      \   const opus_int              pitchL[ MAX_NB_SUBFR ],                       /*
      I    Pitch lags                      */\n    const opus_int              Lambda_Q10,
      \                                  /* I    Rate/distortion tradeoff        */\n
      \   const opus_int              LTP_scale_Q14                                 /*
      I    LTP state scaling               */\n)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/NSQ.c:218,1
    - Dst: silk_short_prediction_create_arch_coef
      Src: /src/opus/silk/NSQ.c:224,1
    - Dst: silk_RAND
      Src: /src/opus/silk/NSQ.c:229,1
    - Dst: silk_noise_shape_quantizer_short_prediction
      Src: /src/opus/silk/NSQ.c:232,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ.c:239,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ.c:240,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ.c:241,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ.c:242,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ.c:243,1
    - Dst: celt_assert
      Src: /src/opus/silk/NSQ.c:250,1
    - Dst: silk_NSQ_noise_shape_feedback_loop
      Src: /src/opus/silk/NSQ.c:251,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/NSQ.c:253,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/NSQ.c:255,1
    - Dst: silk_SMLAWT
      Src: /src/opus/silk/NSQ.c:256,1
    - Dst: celt_assert
      Src: /src/opus/silk/NSQ.c:258,1
    - Dst: silk_SUB32_ovflw
      Src: /src/opus/silk/NSQ.c:261,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/NSQ.c:261,1
    - Dst: silk_SUB32_ovflw
      Src: /src/opus/silk/NSQ.c:262,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/NSQ.c:265,1
    - Dst: silk_ADD_SAT32
      Src: /src/opus/silk/NSQ.c:265,1
    - Dst: silk_SMLAWT
      Src: /src/opus/silk/NSQ.c:266,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/NSQ.c:267,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/NSQ.c:270,1
    - Dst: silk_ADD32_ovflw
      Src: /src/opus/silk/NSQ.c:271,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/NSQ.c:271,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/NSQ.c:272,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/NSQ.c:274,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/NSQ.c:277,1
    - Dst: silk_LIMIT_32
      Src: /src/opus/silk/NSQ.c:283,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/NSQ.c:286,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/NSQ.c:287,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/NSQ.c:292,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/NSQ.c:294,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/NSQ.c:302,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/NSQ.c:302,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/NSQ.c:303,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/NSQ.c:304,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/NSQ.c:305,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/NSQ.c:306,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/NSQ.c:309,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/NSQ.c:310,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/NSQ.c:311,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/NSQ.c:314,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/NSQ.c:315,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/NSQ.c:316,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/NSQ.c:318,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/NSQ.c:318,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/NSQ.c:319,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/NSQ.c:320,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/NSQ.c:321,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/NSQ.c:322,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/NSQ.c:324,1
    - Dst: silk_SMLABB
      Src: /src/opus/silk/NSQ.c:325,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/NSQ.c:326,1
    - Dst: silk_SMLABB
      Src: /src/opus/silk/NSQ.c:327,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/NSQ.c:333,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/NSQ.c:336,1
    - Dst: silk_ADD_LSHIFT32
      Src: /src/opus/silk/NSQ.c:342,1
    - Dst: silk_ADD32_ovflw
      Src: /src/opus/silk/NSQ.c:343,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/NSQ.c:343,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/NSQ.c:346,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/NSQ.c:346,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/NSQ.c:346,1
    - Dst: silk_SUB32_ovflw
      Src: /src/opus/silk/NSQ.c:351,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/NSQ.c:351,1
    - Dst: silk_SUB32_ovflw
      Src: /src/opus/silk/NSQ.c:352,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/NSQ.c:352,1
    - Dst: silk_SUB32_ovflw
      Src: /src/opus/silk/NSQ.c:355,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/NSQ.c:355,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/NSQ.c:356,1
    - Dst: silk_ADD32_ovflw
      Src: /src/opus/silk/NSQ.c:361,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/NSQ.c:365,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 111
    argCount: 20
    argNames:
    - NSQ
    - signalType
    - x_sc_Q10
    - pulses
    - xq
    - sLTP_Q15
    - a_Q12
    - b_Q14
    - AR_shp_Q13
    - lag
    - HarmShapeFIRPacked_Q14
    - Tilt_Q14
    - LF_shp_Q14
    - Gain_Q16
    - Lambda_Q10
    - offset_Q10
    - length
    - shapingLPCOrder
    - predictLPCOrder
    - arch
    argTypes:
    - silk_nsq_state*
    - opus_int
    - opus_int32[]
    - opus_int8[]
    - opus_int16[]
    - opus_int32[]
    - opus_int16[]
    - opus_int16[]
    - opus_int16[]
    - opus_int
    - opus_int32
    - opus_int
    - opus_int32
    - opus_int32
    - opus_int
    - opus_int
    - opus_int
    - opus_int
    - opus_int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 366
      start: 183
    functionDepth: 1
    functionLinenumber: 183
    functionLinenumberEnd: 366
    functionName: silk_noise_shape_quantizer
    functionSourceFile: /src/opus/silk/NSQ.c
    functionUses: 1
    functionsReached:
    - silk_SMULWB
    - silk_ADD32
    - silk_SMULBB
    - silk_SUB32
    - silk_SMLAWB
    - silk_LIMIT_32
    - silk_ADD_SAT32
    - silk_SUB32_ovflw
    - silk_RSHIFT
    - silk_SMLAWT
    - silk_SAT16
    - celt_assert
    - silk_ADD_LSHIFT32
    - silk_LSHIFT32
    - silk_LSHIFT
    - silk_noise_shape_quantizer_short_prediction
    - silk_ADD32_ovflw
    - silk_memcpy
    - silk_short_prediction_create_arch_coef
    - silk_RAND
    - silk_SMULWW
    - silk_NSQ_noise_shape_feedback_loop
    - silk_SMLABB
    - silk_RSHIFT_ROUND
    linkageType: ''
    returnType: void
    signature: "void silk_noise_shape_quantizer(\n    silk_nsq_state      *NSQ,                   /*
      I/O  NSQ state                       */\n    opus_int            signalType,
      \            /* I    Signal type                     */\n    const opus_int32
      \   x_sc_Q10[],             /* I                                    */\n    opus_int8
      \          pulses[],               /* O                                    */\n
      \   opus_int16          xq[],                   /* O                                    */\n
      \   opus_int32          sLTP_Q15[],             /* I/O  LTP state                       */\n
      \   const opus_int16    a_Q12[],                /* I    Short term prediction
      coefs     */\n    const opus_int16    b_Q14[],                /* I    Long term
      prediction coefs      */\n    const opus_int16    AR_shp_Q13[],           /*
      I    Noise shaping AR coefs          */\n    opus_int            lag,                    /*
      I    Pitch lag                       */\n    opus_int32          HarmShapeFIRPacked_Q14,
      /* I                                    */\n    opus_int            Tilt_Q14,
      \              /* I    Spectral tilt                   */\n    opus_int32          LF_shp_Q14,
      \            /* I                                    */\n    opus_int32          Gain_Q16,
      \              /* I                                    */\n    opus_int            Lambda_Q10,
      \            /* I                                    */\n    opus_int            offset_Q10,
      \            /* I                                    */\n    opus_int            length,
      \                /* I    Input length                    */\n    opus_int            shapingLPCOrder,
      \       /* I    Noise shaping AR filter order   */\n    opus_int            predictLPCOrder,
      \       /* I    Prediction filter order         */\n    int                 arch
      \                   /* I    Architecture                    */\n)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: silk_INVERSE32_varQ
      Src: /src/opus/silk/NSQ.c:386,1
    - Dst: silk_max
      Src: /src/opus/silk/NSQ.c:386,1
    - Dst: silk_assert
      Src: /src/opus/silk/NSQ.c:387,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/NSQ.c:390,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/NSQ.c:392,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/NSQ.c:399,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/NSQ.c:399,1
    - Dst: silk_assert
      Src: /src/opus/silk/NSQ.c:402,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/NSQ.c:403,1
    - Dst: silk_DIV32_varQ
      Src: /src/opus/silk/NSQ.c:409,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/NSQ.c:413,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/NSQ.c:419,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/NSQ.c:423,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/NSQ.c:424,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/NSQ.c:428,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/NSQ.c:431,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 37
    argCount: 11
    argNames:
    - psEncC
    - NSQ
    - x16
    - x_sc_Q10
    - sLTP
    - sLTP_Q15
    - subfr
    - LTP_scale_Q14
    - Gains_Q16
    - pitchL
    - signal_type
    argTypes:
    - silk_encoder_state*
    - silk_nsq_state*
    - opus_int16[]
    - opus_int32[]
    - opus_int16[]
    - opus_int32[]
    - opus_int
    - opus_int
    - opus_int32[]
    - opus_int[]
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 437
      start: 368
    functionDepth: 2
    functionLinenumber: 368
    functionLinenumberEnd: 437
    functionName: silk_nsq_scale_states
    functionSourceFile: /src/opus/silk/NSQ.c
    functionUses: 1
    functionsReached:
    - silk_DIV32_varQ
    - silk_LSHIFT
    - silk_SMULWW
    - silk_assert
    - silk_SMULWB
    - silk_RSHIFT_ROUND
    - silk_INVERSE32_varQ
    - silk_max
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_nsq_scale_states(\n    const silk_encoder_state *psEncC,
      \          /* I    Encoder State                   */\n    silk_nsq_state      *NSQ,
      \                  /* I/O  NSQ state                       */\n    const opus_int16
      \   x16[],                  /* I    input                           */\n    opus_int32
      \         x_sc_Q10[],             /* O    input scaled with 1/Gain        */\n
      \   const opus_int16    sLTP[],                 /* I    re-whitened LTP state
      in Q0     */\n    opus_int32          sLTP_Q15[],             /* O    LTP state
      matching scaled input */\n    opus_int            subfr,                  /*
      I    subframe number                 */\n    const opus_int      LTP_scale_Q14,
      \         /* I                                    */\n    const opus_int32    Gains_Q16[
      MAX_NB_SUBFR ], /* I                                 */\n    const opus_int
      \     pitchL[ MAX_NB_SUBFR ], /* I    Pitch lag                       */\n    const
      opus_int      signal_type             /* I    Signal type                     */\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/silk/NLSF_encode.c:50,1
    - Dst: VARDECL
      Src: /src/opus/silk/NLSF_encode.c:51,1
    - Dst: VARDECL
      Src: /src/opus/silk/NLSF_encode.c:52,1
    - Dst: VARDECL
      Src: /src/opus/silk/NLSF_encode.c:53,1
    - Dst: celt_assert
      Src: /src/opus/silk/NLSF_encode.c:63,1
    - Dst: silk_assert
      Src: /src/opus/silk/NLSF_encode.c:64,1
    - Dst: silk_NLSF_stabilize
      Src: /src/opus/silk/NLSF_encode.c:67,1
    - Dst: ALLOC
      Src: /src/opus/silk/NLSF_encode.c:70,1
    - Dst: silk_NLSF_VQ
      Src: /src/opus/silk/NLSF_encode.c:71,1
    - Dst: ALLOC
      Src: /src/opus/silk/NLSF_encode.c:74,1
    - Dst: silk_insertion_sort_increasing
      Src: /src/opus/silk/NLSF_encode.c:75,1
    - Dst: ALLOC
      Src: /src/opus/silk/NLSF_encode.c:77,1
    - Dst: ALLOC
      Src: /src/opus/silk/NLSF_encode.c:78,1
    - Dst: silk_LSHIFT16
      Src: /src/opus/silk/NLSF_encode.c:88,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/NLSF_encode.c:90,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/NLSF_encode.c:90,1
    - Dst: silk_DIV32_varQ
      Src: /src/opus/silk/NLSF_encode.c:91,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/NLSF_encode.c:91,1
    - Dst: silk_NLSF_unpack
      Src: /src/opus/silk/NLSF_encode.c:95,1
    - Dst: silk_NLSF_del_dec_quant
      Src: /src/opus/silk/NLSF_encode.c:98,1
    - Dst: silk_lin2log
      Src: /src/opus/silk/NLSF_encode.c:108,1
    - Dst: silk_SMLABB
      Src: /src/opus/silk/NLSF_encode.c:109,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/NLSF_encode.c:109,1
    - Dst: silk_insertion_sort_increasing
      Src: /src/opus/silk/NLSF_encode.c:113,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/NLSF_encode.c:116,1
    - Dst: silk_NLSF_decode
      Src: /src/opus/silk/NLSF_encode.c:119,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 43
    argCount: 7
    argNames:
    - NLSFIndices
    - pNLSF_Q15
    - psNLSF_CB
    - pW_Q2
    - NLSF_mu_Q20
    - nSurvivors
    - signalType
    argTypes:
    - opus_int8*
    - opus_int16*
    - silk_NLSF_CB_struct*
    - opus_int16*
    - opus_int
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 38
    functionDepth: 3
    functionLinenumber: 38
    functionLinenumberEnd: 124
    functionName: silk_NLSF_encode
    functionSourceFile: /src/opus/silk/NLSF_encode.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - silk_insertion_sort_increasing
    - silk_DIV32_varQ
    - silk_NLSF_unpack
    - silk_memcpy
    - silk_LSHIFT16
    - silk_NLSF_del_dec_quant
    - silk_NLSF_decode
    - silk_assert
    - silk_RSHIFT
    - silk_SMULBB
    - VARDECL
    - ALLOC
    - silk_lin2log
    - silk_NLSF_stabilize
    - silk_SMLABB
    - silk_NLSF_VQ
    linkageType: ''
    returnType: opus_int32
    signature: "opus_int32 silk_NLSF_encode(                                    /*
      O    Returns RD value in Q25                     */\n          opus_int8             *NLSFIndices,
      \                  /* I    Codebook path vector [ LPC_ORDER + 1 ]      */\n
      \         opus_int16            *pNLSF_Q15,                     /* I/O  (Un)quantized
      NLSF vector [ LPC_ORDER ]     */\n    const silk_NLSF_CB_struct   *psNLSF_CB,
      \                    /* I    Codebook object                             */\n
      \   const opus_int16            *pW_Q2,                         /* I    NLSF
      weight vector [ LPC_ORDER ]            */\n    const opus_int              NLSF_mu_Q20,
      \                   /* I    Rate weight for the RD optimization         */\n
      \   const opus_int              nSurvivors,                     /* I    Max
      survivors after first stage             */\n    const opus_int              signalType
      \                     /* I    Signal type: 0/1/2                          */\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/silk/resampler_down2_3.c:47,1
    - Dst: ALLOC
      Src: /src/opus/silk/resampler_down2_3.c:51,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/resampler_down2_3.c:54,1
    - Dst: silk_min
      Src: /src/opus/silk/resampler_down2_3.c:58,1
    - Dst: silk_resampler_private_AR2
      Src: /src/opus/silk/resampler_down2_3.c:61,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/resampler_down2_3.c:69,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_down2_3.c:70,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_down2_3.c:71,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_down2_3.c:72,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/resampler_down2_3.c:75,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/resampler_down2_3.c:75,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/resampler_down2_3.c:77,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_down2_3.c:78,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_down2_3.c:79,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/resampler_down2_3.c:80,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/resampler_down2_3.c:83,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/resampler_down2_3.c:83,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/resampler_down2_3.c:94,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/resampler_down2_3.c:101,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 34
    argCount: 4
    argNames:
    - S
    - out
    - in
    - inLen
    argTypes:
    - opus_int32*
    - opus_int16*
    - opus_int16*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 39
    functionDepth: 2
    functionLinenumber: 39
    functionLinenumberEnd: 103
    functionName: silk_resampler_down2_3
    functionSourceFile: /src/opus/silk/resampler_down2_3.c
    functionUses: 0
    functionsReached:
    - silk_min
    - silk_resampler_private_AR2
    - silk_memcpy
    - silk_SMULWB
    - silk_SAT16
    - VARDECL
    - ALLOC
    - silk_SMLAWB
    - silk_RSHIFT_ROUND
    linkageType: ''
    returnType: void
    signature: "void silk_resampler_down2_3(\n    opus_int32                  *S,
      \                /* I/O  State vector [ 6 ]                                          */\n
      \   opus_int16                  *out,               /* O    Output signal [
      floor(2*inLen/3) ]                          */\n    const opus_int16            *in,
      \               /* I    Input signal [ inLen ]                                      */\n
      \   opus_int32                  inLen               /* I    Number of input
      samples                                     */\n)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: silk_setup_resamplers
      Src: /src/opus/silk/control_codec.c:90,1
    - Dst: silk_control_audio_bandwidth
      Src: /src/opus/silk/control_codec.c:100,1
    - Dst: silk_setup_resamplers
      Src: /src/opus/silk/control_codec.c:107,1
    - Dst: silk_setup_fs
      Src: /src/opus/silk/control_codec.c:112,1
    - Dst: silk_setup_complexity
      Src: /src/opus/silk/control_codec.c:117,1
    - Dst: silk_setup_LBRR
      Src: /src/opus/silk/control_codec.c:127,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 5
    argNames:
    - psEnc
    - encControl
    - allow_bw_switch
    - channelNb
    - force_fs_kHz
    argTypes:
    - silk_encoder_state_Fxx*
    - silk_EncControlStruct*
    - opus_int
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 65
    functionDepth: 2
    functionLinenumber: 65
    functionLinenumberEnd: 132
    functionName: silk_control_encoder
    functionSourceFile: /src/opus/silk/control_codec.c
    functionUses: 1
    functionsReached:
    - silk_setup_complexity
    - silk_setup_LBRR
    - silk_setup_fs
    - silk_control_audio_bandwidth
    - silk_setup_resamplers
    linkageType: ''
    returnType: opus_int
    signature: "opus_int silk_control_encoder(\n    silk_encoder_state_Fxx          *psEnc,
      \                                /* I/O  Pointer to Silk encoder state                                               */\n
      \   silk_EncControlStruct           *encControl,                            /*
      I    Control structure                                                           */\n
      \   const opus_int                  allow_bw_switch,                        /*
      I    Flag to allow switching audio bandwidth                                     */\n
      \   const opus_int                  channelNb,                              /*
      I    Channel number                                                              */\n
      \   const opus_int                  force_fs_kHz\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: silk_resampler_init
      Src: /src/opus/silk/control_codec.c:146,1
    - Dst: VARDECL
      Src: /src/opus/silk/control_codec.c:148,1
    - Dst: VARDECL
      Src: /src/opus/silk/control_codec.c:149,1
    - Dst: VARDECL
      Src: /src/opus/silk/control_codec.c:153,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/control_codec.c:160,1
    - Dst: ALLOC
      Src: /src/opus/silk/control_codec.c:165,1
    - Dst: silk_max
      Src: /src/opus/silk/control_codec.c:165,1
    - Dst: silk_float2short_array
      Src: /src/opus/silk/control_codec.c:167,1
    - Dst: ALLOC
      Src: /src/opus/silk/control_codec.c:171,1
    - Dst: silk_resampler_init
      Src: /src/opus/silk/control_codec.c:172,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/control_codec.c:172,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/control_codec.c:175,1
    - Dst: ALLOC
      Src: /src/opus/silk/control_codec.c:178,1
    - Dst: silk_resampler
      Src: /src/opus/silk/control_codec.c:179,1
    - Dst: silk_resampler_init
      Src: /src/opus/silk/control_codec.c:182,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/control_codec.c:182,1
    - Dst: silk_resampler
      Src: /src/opus/silk/control_codec.c:185,1
    - Dst: silk_short2float_array
      Src: /src/opus/silk/control_codec.c:188,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 27
    argCount: 2
    argNames:
    - psEnc
    - fs_kHz
    argTypes:
    - silk_encoder_state_Fxx*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 134
    functionDepth: 4
    functionLinenumber: 134
    functionLinenumberEnd: 197
    functionName: silk_setup_resamplers
    functionSourceFile: /src/opus/silk/control_codec.c
    functionUses: 1
    functionsReached:
    - silk_LSHIFT
    - silk_SMULBB
    - silk_resampler_init
    - silk_short2float_array
    - silk_resampler
    - VARDECL
    - ALLOC
    - silk_float2short_array
    - silk_DIV32_16
    - silk_max
    linkageType: ''
    returnType: opus_int
    signature: "opus_int silk_setup_resamplers(\n    silk_encoder_state_Fxx          *psEnc,
      \            /* I/O                      */\n    opus_int                         fs_kHz
      \             /* I                        */\n)"
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: silk_SMULBB
      Src: /src/opus/silk/control_codec.c:218,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/control_codec.c:219,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/control_codec.c:226,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/control_codec.c:228,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/control_codec.c:229,1
    - Dst: celt_assert
      Src: /src/opus/silk/control_codec.c:241,1
    - Dst: celt_assert
      Src: /src/opus/silk/control_codec.c:242,1
    - Dst: silk_memset
      Src: /src/opus/silk/control_codec.c:245,1
    - Dst: silk_memset
      Src: /src/opus/silk/control_codec.c:246,1
    - Dst: silk_memset
      Src: /src/opus/silk/control_codec.c:247,1
    - Dst: silk_memset
      Src: /src/opus/silk/control_codec.c:248,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/control_codec.c:283,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/control_codec.c:284,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/control_codec.c:285,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/control_codec.c:286,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/control_codec.c:288,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/control_codec.c:290,1
    - Dst: celt_assert
      Src: /src/opus/silk/control_codec.c:302,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 87
    argCount: 3
    argNames:
    - psEnc
    - fs_kHz
    - PacketSize_ms
    argTypes:
    - silk_encoder_state_Fxx*
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 199
    functionDepth: 1
    functionLinenumber: 199
    functionLinenumberEnd: 305
    functionName: silk_setup_fs
    functionSourceFile: /src/opus/silk/control_codec.c
    functionUses: 1
    functionsReached:
    - silk_memset
    - celt_assert
    - silk_SMULBB
    - silk_DIV32_16
    linkageType: ''
    returnType: opus_int
    signature: "opus_int silk_setup_fs(\n    silk_encoder_state_Fxx          *psEnc,
      \            /* I/O                      */\n    opus_int                        fs_kHz,
      \            /* I                        */\n    opus_int                        PacketSize_ms
      \      /* I                        */\n)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/silk/control_codec.c:315,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/control_codec.c:318,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/control_codec.c:328,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/control_codec.c:338,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/control_codec.c:348,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/control_codec.c:358,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/control_codec.c:365,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/control_codec.c:368,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/control_codec.c:375,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/control_codec.c:378,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/control_codec.c:385,1
    - Dst: silk_min_int
      Src: /src/opus/silk/control_codec.c:389,1
    - Dst: celt_assert
      Src: /src/opus/silk/control_codec.c:393,1
    - Dst: celt_assert
      Src: /src/opus/silk/control_codec.c:394,1
    - Dst: celt_assert
      Src: /src/opus/silk/control_codec.c:395,1
    - Dst: celt_assert
      Src: /src/opus/silk/control_codec.c:396,1
    - Dst: celt_assert
      Src: /src/opus/silk/control_codec.c:397,1
    - Dst: celt_assert
      Src: /src/opus/silk/control_codec.c:398,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 88
    argCount: 2
    argNames:
    - psEncC
    - Complexity
    argTypes:
    - silk_encoder_state*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 401
      start: 307
    functionDepth: 1
    functionLinenumber: 307
    functionLinenumberEnd: 401
    functionName: silk_setup_complexity
    functionSourceFile: /src/opus/silk/control_codec.c
    functionUses: 1
    functionsReached:
    - silk_min_int
    - celt_assert
    - SILK_FIX_CONST
    linkageType: ''
    returnType: opus_int
    signature: "opus_int silk_setup_complexity(\n    silk_encoder_state              *psEncC,
      \           /* I/O                      */\n    opus_int                        Complexity
      \         /* I                        */\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: silk_max_int
      Src: /src/opus/silk/control_codec.c:418,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/control_codec.c:418,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/control_codec.c:418,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - psEncC
    - encControl
    argTypes:
    - silk_encoder_state*
    - silk_EncControlStruct*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 423
      start: 403
    functionDepth: 1
    functionLinenumber: 403
    functionLinenumberEnd: 423
    functionName: silk_setup_LBRR
    functionSourceFile: /src/opus/silk/control_codec.c
    functionUses: 1
    functionsReached:
    - SILK_FIX_CONST
    - silk_SMULWB
    - silk_max_int
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_setup_LBRR(\n    silk_encoder_state          *psEncC,
      \           /* I/O                      */\n    const silk_EncControlStruct
      *encControl         /* I                        */\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: silk_SMULWB
      Src: /src/opus/silk/stereo_quant_pred.c:49,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/stereo_quant_pred.c:50,1
    - Dst: silk_SMLABB
      Src: /src/opus/silk/stereo_quant_pred.c:52,1
    - Dst: silk_abs
      Src: /src/opus/silk/stereo_quant_pred.c:53,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/stereo_quant_pred.c:66,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 27
    argCount: 2
    argNames:
    - pred_Q13
    - ix
    argTypes:
    - opus_int32[]
    - opus_int8[][]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 73
    functionName: silk_stereo_quant_pred
    functionSourceFile: /src/opus/silk/stereo_quant_pred.c
    functionUses: 0
    functionsReached:
    - silk_abs
    - silk_SMULWB
    - silk_SMLABB
    - SILK_FIX_CONST
    - silk_DIV32_16
    linkageType: ''
    returnType: void
    signature: "void silk_stereo_quant_pred(\n    opus_int32                  pred_Q13[],
      \                    /* I/O  Predictors (out: quantized)                 */\n
      \   opus_int8                   ix[ 2 ][ 3 ]                    /* O    Quantization
      indices                        */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_memset
      Src: /src/opus/silk/init_encoder.c:54,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/init_encoder.c:58,1
    - Dst: silk_lin2log
      Src: /src/opus/silk/init_encoder.c:58,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/init_encoder.c:58,1
    - Dst: silk_VAD_Init
      Src: /src/opus/silk/init_encoder.c:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - psEnc
    - arch
    argTypes:
    - silk_encoder_state_Fxx*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 46
    functionDepth: 2
    functionLinenumber: 46
    functionLinenumberEnd: 68
    functionName: silk_init_encoder
    functionSourceFile: /src/opus/silk/init_encoder.c
    functionUses: 2
    functionsReached:
    - silk_LSHIFT
    - silk_memset
    - silk_VAD_Init
    - silk_lin2log
    - SILK_FIX_CONST
    linkageType: ''
    returnType: opus_int
    signature: "opus_int silk_init_encoder(\n    silk_encoder_state_Fxx          *psEnc,
      \                                /* I/O  Pointer to Silk FIX encoder state                                           */\n
      \   int                              arch                                   /*
      I    Run-time architecture                                                       */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_SMULWB
      Src: /src/opus/silk/resampler_private_IIR_FIR.c:49,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/resampler_private_IIR_FIR.c:52,1
    - Dst: silk_SMLABB
      Src: /src/opus/silk/resampler_private_IIR_FIR.c:53,1
    - Dst: silk_SMLABB
      Src: /src/opus/silk/resampler_private_IIR_FIR.c:54,1
    - Dst: silk_SMLABB
      Src: /src/opus/silk/resampler_private_IIR_FIR.c:55,1
    - Dst: silk_SMLABB
      Src: /src/opus/silk/resampler_private_IIR_FIR.c:56,1
    - Dst: silk_SMLABB
      Src: /src/opus/silk/resampler_private_IIR_FIR.c:57,1
    - Dst: silk_SMLABB
      Src: /src/opus/silk/resampler_private_IIR_FIR.c:58,1
    - Dst: silk_SMLABB
      Src: /src/opus/silk/resampler_private_IIR_FIR.c:59,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/resampler_private_IIR_FIR.c:60,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/resampler_private_IIR_FIR.c:60,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 4
    argNames:
    - out
    - buf
    - max_index_Q16
    - index_increment_Q16
    argTypes:
    - opus_int16*
    - opus_int16*
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 63
    functionName: silk_resampler_private_IIR_FIR_INTERPOL
    functionSourceFile: /src/opus/silk/resampler_private_IIR_FIR.c
    functionUses: 0
    functionsReached:
    - silk_SMULWB
    - silk_SMULBB
    - silk_SAT16
    - silk_SMLABB
    - silk_RSHIFT_ROUND
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE *silk_resampler_private_IIR_FIR_INTERPOL(\n    opus_int16
      \ *out,\n    opus_int16  *buf,\n    opus_int32  max_index_Q16,\n    opus_int32
      \ index_increment_Q16\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/silk/resampler_private_IIR_FIR.c:75,1
    - Dst: ALLOC
      Src: /src/opus/silk/resampler_private_IIR_FIR.c:78,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/resampler_private_IIR_FIR.c:81,1
    - Dst: silk_min
      Src: /src/opus/silk/resampler_private_IIR_FIR.c:86,1
    - Dst: silk_resampler_private_up2_HQ
      Src: /src/opus/silk/resampler_private_IIR_FIR.c:89,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/resampler_private_IIR_FIR.c:91,1
    - Dst: silk_resampler_private_IIR_FIR_INTERPOL
      Src: /src/opus/silk/resampler_private_IIR_FIR.c:92,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/resampler_private_IIR_FIR.c:98,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/resampler_private_IIR_FIR.c:105,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 4
    argNames:
    - SS
    - out
    - in
    - inLen
    argTypes:
    - void*
    - opus_int16[]
    - opus_int16[]
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 65
    functionDepth: 2
    functionLinenumber: 65
    functionLinenumberEnd: 107
    functionName: silk_resampler_private_IIR_FIR
    functionSourceFile: /src/opus/silk/resampler_private_IIR_FIR.c
    functionUses: 1
    functionsReached:
    - silk_min
    - silk_memcpy
    - silk_resampler_private_up2_HQ
    - silk_resampler_private_IIR_FIR_INTERPOL
    - VARDECL
    - ALLOC
    - silk_LSHIFT32
    linkageType: ''
    returnType: void
    signature: "void silk_resampler_private_IIR_FIR(\n    void                            *SS,
      \           /* I/O  Resampler state             */\n    opus_int16                      out[],
      \         /* O    Output signal               */\n    const opus_int16                in[],
      \          /* I    Input signal                */\n    opus_int32                      inLen
      \          /* I    Number of input samples     */\n)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/silk/stereo_LR_to_MS.c:53,1
    - Dst: VARDECL
      Src: /src/opus/silk/stereo_LR_to_MS.c:54,1
    - Dst: VARDECL
      Src: /src/opus/silk/stereo_LR_to_MS.c:55,1
    - Dst: VARDECL
      Src: /src/opus/silk/stereo_LR_to_MS.c:56,1
    - Dst: VARDECL
      Src: /src/opus/silk/stereo_LR_to_MS.c:57,1
    - Dst: ALLOC
      Src: /src/opus/silk/stereo_LR_to_MS.c:61,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/stereo_LR_to_MS.c:66,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/stereo_LR_to_MS.c:67,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/stereo_LR_to_MS.c:67,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/stereo_LR_to_MS.c:71,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/stereo_LR_to_MS.c:72,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/stereo_LR_to_MS.c:73,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/stereo_LR_to_MS.c:74,1
    - Dst: ALLOC
      Src: /src/opus/silk/stereo_LR_to_MS.c:77,1
    - Dst: ALLOC
      Src: /src/opus/silk/stereo_LR_to_MS.c:78,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/stereo_LR_to_MS.c:80,1
    - Dst: silk_ADD_LSHIFT32
      Src: /src/opus/silk/stereo_LR_to_MS.c:80,1
    - Dst: ALLOC
      Src: /src/opus/silk/stereo_LR_to_MS.c:86,1
    - Dst: ALLOC
      Src: /src/opus/silk/stereo_LR_to_MS.c:87,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/stereo_LR_to_MS.c:89,1
    - Dst: silk_ADD_LSHIFT32
      Src: /src/opus/silk/stereo_LR_to_MS.c:89,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/stereo_LR_to_MS.c:97,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/stereo_LR_to_MS.c:98,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/stereo_LR_to_MS.c:99,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/stereo_LR_to_MS.c:99,1
    - Dst: silk_stereo_find_predictor
      Src: /src/opus/silk/stereo_LR_to_MS.c:101,1
    - Dst: silk_stereo_find_predictor
      Src: /src/opus/silk/stereo_LR_to_MS.c:102,1
    - Dst: silk_SMLABB
      Src: /src/opus/silk/stereo_LR_to_MS.c:104,1
    - Dst: silk_min
      Src: /src/opus/silk/stereo_LR_to_MS.c:105,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/stereo_LR_to_MS.c:105,1
    - Dst: silk_SMLABB
      Src: /src/opus/silk/stereo_LR_to_MS.c:112,1
    - Dst: silk_assert
      Src: /src/opus/silk/stereo_LR_to_MS.c:113,1
    - Dst: silk_MUL
      Src: /src/opus/silk/stereo_LR_to_MS.c:115,1
    - Dst: silk_DIV32_varQ
      Src: /src/opus/silk/stereo_LR_to_MS.c:116,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/stereo_LR_to_MS.c:116,1
    - Dst: silk_DIV32_varQ
      Src: /src/opus/silk/stereo_LR_to_MS.c:122,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/stereo_LR_to_MS.c:122,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/stereo_LR_to_MS.c:123,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/stereo_LR_to_MS.c:123,1
    - Dst: silk_LIMIT
      Src: /src/opus/silk/stereo_LR_to_MS.c:124,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/stereo_LR_to_MS.c:124,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/stereo_LR_to_MS.c:127,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/stereo_LR_to_MS.c:131,1
    - Dst: silk_stereo_quant_pred
      Src: /src/opus/silk/stereo_LR_to_MS.c:140,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/stereo_LR_to_MS.c:142,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/stereo_LR_to_MS.c:142,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/stereo_LR_to_MS.c:146,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/stereo_LR_to_MS.c:146,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/stereo_LR_to_MS.c:147,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/stereo_LR_to_MS.c:147,1
    - Dst: silk_stereo_quant_pred
      Src: /src/opus/silk/stereo_LR_to_MS.c:148,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/stereo_LR_to_MS.c:157,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/stereo_LR_to_MS.c:157,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/stereo_LR_to_MS.c:161,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/stereo_LR_to_MS.c:161,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/stereo_LR_to_MS.c:162,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/stereo_LR_to_MS.c:162,1
    - Dst: silk_stereo_quant_pred
      Src: /src/opus/silk/stereo_LR_to_MS.c:163,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/stereo_LR_to_MS.c:168,1
    - Dst: silk_stereo_quant_pred
      Src: /src/opus/silk/stereo_LR_to_MS.c:170,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/stereo_LR_to_MS.c:171,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/stereo_LR_to_MS.c:174,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/stereo_LR_to_MS.c:174,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/stereo_LR_to_MS.c:175,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/stereo_LR_to_MS.c:175,1
    - Dst: silk_stereo_quant_pred
      Src: /src/opus/silk/stereo_LR_to_MS.c:176,1
    - Dst: silk_max_int
      Src: /src/opus/silk/stereo_LR_to_MS.c:195,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/stereo_LR_to_MS.c:201,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/stereo_LR_to_MS.c:202,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/stereo_LR_to_MS.c:203,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/stereo_LR_to_MS.c:203,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/stereo_LR_to_MS.c:204,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/stereo_LR_to_MS.c:204,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/stereo_LR_to_MS.c:205,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/stereo_LR_to_MS.c:205,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/stereo_LR_to_MS.c:210,1
    - Dst: silk_ADD_LSHIFT32
      Src: /src/opus/silk/stereo_LR_to_MS.c:210,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/stereo_LR_to_MS.c:211,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/stereo_LR_to_MS.c:211,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/stereo_LR_to_MS.c:212,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/stereo_LR_to_MS.c:212,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/stereo_LR_to_MS.c:213,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/stereo_LR_to_MS.c:213,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/stereo_LR_to_MS.c:218,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/stereo_LR_to_MS.c:220,1
    - Dst: silk_ADD_LSHIFT32
      Src: /src/opus/silk/stereo_LR_to_MS.c:220,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/stereo_LR_to_MS.c:221,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/stereo_LR_to_MS.c:221,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/stereo_LR_to_MS.c:222,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/stereo_LR_to_MS.c:222,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/stereo_LR_to_MS.c:223,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/stereo_LR_to_MS.c:223,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 135
    argCount: 11
    argNames:
    - state
    - x1
    - x2
    - ix
    - mid_only_flag
    - mid_side_rates_bps
    - total_rate_bps
    - prev_speech_act_Q8
    - toMono
    - fs_kHz
    - frame_length
    argTypes:
    - stereo_enc_state*
    - opus_int16[]
    - opus_int16[]
    - opus_int8[][]
    - opus_int8*
    - opus_int32[]
    - opus_int32
    - opus_int
    - opus_int
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 36
    functionDepth: 3
    functionLinenumber: 36
    functionLinenumberEnd: 229
    functionName: silk_stereo_LR_to_MS
    functionSourceFile: /src/opus/silk/stereo_LR_to_MS.c
    functionUses: 1
    functionsReached:
    - silk_SMULWB
    - silk_SMULBB
    - silk_SMLAWB
    - silk_min
    - silk_DIV32_varQ
    - silk_assert
    - silk_RSHIFT
    - silk_max_int
    - silk_SAT16
    - VARDECL
    - ALLOC
    - silk_MUL
    - silk_ADD_LSHIFT32
    - silk_LSHIFT
    - silk_stereo_find_predictor
    - SILK_FIX_CONST
    - silk_DIV32_16
    - silk_memcpy
    - silk_LIMIT
    - silk_stereo_quant_pred
    - silk_SMLABB
    - silk_RSHIFT_ROUND
    linkageType: ''
    returnType: void
    signature: "void silk_stereo_LR_to_MS(\n    stereo_enc_state            *state,
      \                        /* I/O  State                                       */\n
      \   opus_int16                  x1[],                           /* I/O  Left
      input signal, becomes mid signal       */\n    opus_int16                  x2[],
      \                          /* I/O  Right input signal, becomes side signal     */\n
      \   opus_int8                   ix[ 2 ][ 3 ],                   /* O    Quantization
      indices                        */\n    opus_int8                   *mid_only_flag,
      \                /* O    Flag: only mid signal coded                 */\n    opus_int32
      \                 mid_side_rates_bps[],           /* O    Bitrates for mid and
      side signals           */\n    opus_int32                  total_rate_bps,                 /*
      I    Total bitrate                               */\n    opus_int                    prev_speech_act_Q8,
      \            /* I    Speech activity level in previous frame     */\n    opus_int
      \                   toMono,                         /* I    Last frame before
      a stereo->mono transition */\n    opus_int                    fs_kHz,                         /*
      I    Sample rate (kHz)                           */\n    opus_int                    frame_length
      \                   /* I    Number of samples                           */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_SMULBB
      Src: /src/opus/silk/NLSF_unpack.c:49,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/NLSF_unpack.c:49,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/NLSF_unpack.c:51,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/NLSF_unpack.c:51,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/NLSF_unpack.c:52,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 4
    argNames:
    - ec_ix
    - pred_Q8
    - psNLSF_CB
    - CB1_index
    argTypes:
    - opus_int16[]
    - opus_uint8[]
    - silk_NLSF_CB_struct*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 54
    functionName: silk_NLSF_unpack
    functionSourceFile: /src/opus/silk/NLSF_unpack.c
    functionUses: 4
    functionsReached:
    - silk_RSHIFT
    - silk_SMULBB
    linkageType: ''
    returnType: void
    signature: "void silk_NLSF_unpack(\n          opus_int16            ec_ix[],                        /*
      O    Indices to entropy tables [ LPC_ORDER ]     */\n          opus_uint8            pred_Q8[],
      \                     /* O    LSF predictor [ LPC_ORDER ]                 */\n
      \   const silk_NLSF_CB_struct   *psNLSF_CB,                     /* I    Codebook
      object                             */\n    const opus_int              CB1_index
      \                      /* I    Index of vector in first LSF codebook       */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_memset
      Src: /src/opus/silk/init_decoder.c:48,1
    - Dst: opus_select_arch
      Src: /src/opus/silk/init_decoder.c:53,1
    - Dst: silk_CNG_Reset
      Src: /src/opus/silk/init_decoder.c:56,1
    - Dst: silk_PLC_Reset
      Src: /src/opus/silk/init_decoder.c:59,1
    - Dst: osce_reset
      Src: /src/opus/silk/init_decoder.c:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - psDec
    argTypes:
    - silk_decoder_state*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 43
    functionDepth: 2
    functionLinenumber: 43
    functionLinenumberEnd: 67
    functionName: silk_reset_decoder
    functionSourceFile: /src/opus/silk/init_decoder.c
    functionUses: 0
    functionsReached:
    - silk_PLC_Reset
    - opus_select_arch
    - silk_memset
    - silk_CNG_Reset
    - osce_reset
    linkageType: ''
    returnType: opus_int
    signature: "opus_int silk_reset_decoder(\n    silk_decoder_state          *psDec
      \                         /* I/O  Decoder state pointer                       */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_memset
      Src: /src/opus/silk/init_decoder.c:78,1
    - Dst: silk_reset_decoder
      Src: /src/opus/silk/init_decoder.c:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - psDec
    argTypes:
    - silk_decoder_state*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 73
    functionDepth: 3
    functionLinenumber: 73
    functionLinenumberEnd: 83
    functionName: silk_init_decoder
    functionSourceFile: /src/opus/silk/init_decoder.c
    functionUses: 0
    functionsReached:
    - silk_reset_decoder
    - silk_memset
    linkageType: ''
    returnType: opus_int
    signature: "opus_int silk_init_decoder(\n    silk_decoder_state          *psDec
      \                         /* I/O  Decoder state pointer                       */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 15
    argNames:
    - (
    - in
    - ','
    - B_Q28
    - ','
    - A_Q28
    - ','
    - S
    - ','
    - out
    - ','
    - len
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 160
    functionName: silk_biquad_alt_stride2
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_biquad_alt_stride2(in, B_Q28, A_Q28, S, out, len, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - A_Q12
    - ','
    - order
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 163
    functionDepth: 0
    functionLinenumber: 163
    functionLinenumberEnd: 164
    functionName: silk_LPC_inverse_pred_gain
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_LPC_inverse_pred_gain(A_Q12, order, arch)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - a32
    - rot
    argTypes:
    - opus_int32
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 406
      start: 394
    functionDepth: 0
    functionLinenumber: 394
    functionLinenumberEnd: 406
    functionName: silk_ROR32
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_ROR32( opus_int32 a32, opus_int rot )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - dest
    - ','
    - src
    - ','
    - size
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 417
      start: 416
    functionDepth: 0
    functionLinenumber: 416
    functionLinenumberEnd: 417
    functionName: silk_memcpy
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 20
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_memcpy(dest, src, size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - dest
    - ','
    - src
    - ','
    - size
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 417
    functionDepth: 0
    functionLinenumber: 417
    functionLinenumberEnd: 418
    functionName: silk_memset
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 18
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_memset(dest, src, size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - dest
    - ','
    - src
    - ','
    - size
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 419
      start: 418
    functionDepth: 0
    functionLinenumber: 418
    functionLinenumberEnd: 419
    functionName: silk_memmove
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_memmove(dest, src, size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a32
    - ','
    - b32
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 424
      start: 423
    functionDepth: 0
    functionLinenumber: 423
    functionLinenumberEnd: 424
    functionName: silk_MUL
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 12
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_MUL(a32, b32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a32
    - ','
    - b32
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 427
      start: 426
    functionDepth: 0
    functionLinenumber: 426
    functionLinenumberEnd: 427
    functionName: silk_MUL_uint
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_MUL_uint(a32, b32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a32
    - ','
    - b32
    - ','
    - c32
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 430
      start: 429
    functionDepth: 0
    functionLinenumber: 429
    functionLinenumberEnd: 430
    functionName: silk_MLA
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_MLA(a32, b32, c32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a32
    - ','
    - b32
    - ','
    - c32
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 433
      start: 432
    functionDepth: 0
    functionLinenumber: 432
    functionLinenumberEnd: 433
    functionName: silk_MLA_uint
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_MLA_uint(a32, b32, c32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a32
    - ','
    - b32
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 435
    functionDepth: 0
    functionLinenumber: 435
    functionLinenumberEnd: 436
    functionName: silk_SMULTT
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMULTT(a32, b32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a32
    - ','
    - b32
    - ','
    - c32
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 439
      start: 438
    functionDepth: 0
    functionLinenumber: 438
    functionLinenumberEnd: 439
    functionName: silk_SMLATT
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMLATT(a32, b32, c32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a64
    - ','
    - b16
    - ','
    - c16
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 441
      start: 440
    functionDepth: 0
    functionLinenumber: 440
    functionLinenumberEnd: 441
    functionName: silk_SMLALBB
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMLALBB(a64, b16, c16)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a32
    - ','
    - b32
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 443
      start: 443
    functionDepth: 0
    functionLinenumber: 443
    functionLinenumberEnd: 443
    functionName: silk_SMULL
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMULL(a32, b32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 447
    functionDepth: 0
    functionLinenumber: 447
    functionLinenumberEnd: 448
    functionName: silk_ADD32_ovflw
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_ADD32_ovflw(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 451
      start: 450
    functionDepth: 0
    functionLinenumber: 450
    functionLinenumberEnd: 451
    functionName: silk_SUB32_ovflw
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SUB32_ovflw(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a32
    - ','
    - b32
    - ','
    - c32
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 454
      start: 453
    functionDepth: 0
    functionLinenumber: 453
    functionLinenumberEnd: 454
    functionName: silk_MLA_ovflw
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_MLA_ovflw(a32, b32, c32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a32
    - ','
    - b32
    - ','
    - c32
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 455
      start: 454
    functionDepth: 0
    functionLinenumber: 454
    functionLinenumberEnd: 455
    functionName: silk_SMLABB_ovflw
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMLABB_ovflw(a32, b32, c32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a32
    - ','
    - b16
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 457
      start: 456
    functionDepth: 0
    functionLinenumber: 456
    functionLinenumberEnd: 457
    functionName: silk_DIV32_16
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 22
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_DIV32_16(a32, b16)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a32
    - ','
    - b32
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 458
      start: 457
    functionDepth: 0
    functionLinenumber: 457
    functionLinenumberEnd: 458
    functionName: silk_DIV32
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_DIV32(a32, b32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 461
      start: 460
    functionDepth: 0
    functionLinenumber: 460
    functionLinenumberEnd: 461
    functionName: silk_ADD16
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_ADD16(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 462
      start: 461
    functionDepth: 0
    functionLinenumber: 461
    functionLinenumberEnd: 462
    functionName: silk_ADD32
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 11
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_ADD32(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 463
      start: 462
    functionDepth: 0
    functionLinenumber: 462
    functionLinenumberEnd: 463
    functionName: silk_ADD64
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_ADD64(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 465
      start: 464
    functionDepth: 0
    functionLinenumber: 464
    functionLinenumberEnd: 465
    functionName: silk_SUB16
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SUB16(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 466
      start: 465
    functionDepth: 0
    functionLinenumber: 465
    functionLinenumberEnd: 466
    functionName: silk_SUB32
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SUB32(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 467
      start: 466
    functionDepth: 0
    functionLinenumber: 466
    functionLinenumberEnd: 467
    functionName: silk_SUB64
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SUB64(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 470
      start: 468
    functionDepth: 0
    functionLinenumber: 468
    functionLinenumberEnd: 470
    functionName: silk_SAT8
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SAT8(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 472
      start: 470
    functionDepth: 0
    functionLinenumber: 470
    functionLinenumberEnd: 472
    functionName: silk_SAT16
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 21
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SAT16(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 474
      start: 472
    functionDepth: 0
    functionLinenumber: 472
    functionLinenumberEnd: 474
    functionName: silk_SAT32
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SAT32(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 476
      start: 475
    functionDepth: 0
    functionLinenumber: 475
    functionLinenumberEnd: 476
    functionName: silk_CHECK_FIT8
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_CHECK_FIT8(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 477
      start: 476
    functionDepth: 0
    functionLinenumber: 476
    functionLinenumberEnd: 477
    functionName: silk_CHECK_FIT16
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_CHECK_FIT16(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 478
      start: 477
    functionDepth: 0
    functionLinenumber: 477
    functionLinenumberEnd: 478
    functionName: silk_CHECK_FIT32
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_CHECK_FIT32(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 480
      start: 479
    functionDepth: 0
    functionLinenumber: 479
    functionLinenumberEnd: 480
    functionName: silk_ADD_SAT16
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_ADD_SAT16(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 483
      start: 480
    functionDepth: 0
    functionLinenumber: 480
    functionLinenumberEnd: 483
    functionName: silk_ADD_SAT64
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_ADD_SAT64(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 485
      start: 484
    functionDepth: 0
    functionLinenumber: 484
    functionLinenumberEnd: 485
    functionName: silk_SUB_SAT16
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SUB_SAT16(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 488
      start: 485
    functionDepth: 0
    functionLinenumber: 485
    functionLinenumberEnd: 488
    functionName: silk_SUB_SAT64
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SUB_SAT64(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 491
      start: 490
    functionDepth: 0
    functionLinenumber: 490
    functionLinenumberEnd: 491
    functionName: silk_POS_SAT32
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_POS_SAT32(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 494
      start: 493
    functionDepth: 0
    functionLinenumber: 493
    functionLinenumberEnd: 494
    functionName: silk_ADD_POS_SAT8
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_ADD_POS_SAT8(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 495
      start: 494
    functionDepth: 0
    functionLinenumber: 494
    functionLinenumberEnd: 495
    functionName: silk_ADD_POS_SAT16
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_ADD_POS_SAT16(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 496
      start: 495
    functionDepth: 0
    functionLinenumber: 495
    functionLinenumberEnd: 496
    functionName: silk_ADD_POS_SAT32
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_ADD_POS_SAT32(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 498
      start: 497
    functionDepth: 0
    functionLinenumber: 497
    functionLinenumberEnd: 498
    functionName: silk_LSHIFT8
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_LSHIFT8(a, shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 499
      start: 498
    functionDepth: 0
    functionLinenumber: 498
    functionLinenumberEnd: 499
    functionName: silk_LSHIFT16
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_LSHIFT16(a, shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 500
      start: 499
    functionDepth: 0
    functionLinenumber: 499
    functionLinenumberEnd: 500
    functionName: silk_LSHIFT32
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 11
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_LSHIFT32(a, shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 501
      start: 500
    functionDepth: 0
    functionLinenumber: 500
    functionLinenumberEnd: 501
    functionName: silk_LSHIFT64
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_LSHIFT64(a, shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 502
      start: 501
    functionDepth: 0
    functionLinenumber: 501
    functionLinenumberEnd: 502
    functionName: silk_LSHIFT
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 48
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_LSHIFT(a, shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 504
      start: 503
    functionDepth: 0
    functionLinenumber: 503
    functionLinenumberEnd: 504
    functionName: silk_RSHIFT8
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_RSHIFT8(a, shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 505
      start: 504
    functionDepth: 0
    functionLinenumber: 504
    functionLinenumberEnd: 505
    functionName: silk_RSHIFT16
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_RSHIFT16(a, shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 505
    functionDepth: 0
    functionLinenumber: 505
    functionLinenumberEnd: 506
    functionName: silk_RSHIFT32
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_RSHIFT32(a, shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 507
      start: 506
    functionDepth: 0
    functionLinenumber: 506
    functionLinenumberEnd: 507
    functionName: silk_RSHIFT64
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_RSHIFT64(a, shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 508
      start: 507
    functionDepth: 0
    functionLinenumber: 507
    functionLinenumberEnd: 508
    functionName: silk_RSHIFT
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 44
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_RSHIFT(a, shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 512
      start: 510
    functionDepth: 0
    functionLinenumber: 510
    functionLinenumberEnd: 512
    functionName: silk_LSHIFT_SAT32
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_LSHIFT_SAT32(a, shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 514
      start: 513
    functionDepth: 0
    functionLinenumber: 513
    functionLinenumberEnd: 514
    functionName: silk_LSHIFT_ovflw
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_LSHIFT_ovflw(a, shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 515
      start: 514
    functionDepth: 0
    functionLinenumber: 514
    functionLinenumberEnd: 515
    functionName: silk_LSHIFT_uint
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_LSHIFT_uint(a, shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 516
      start: 515
    functionDepth: 0
    functionLinenumber: 515
    functionLinenumberEnd: 516
    functionName: silk_RSHIFT_uint
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_RSHIFT_uint(a, shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 518
      start: 517
    functionDepth: 0
    functionLinenumber: 517
    functionLinenumberEnd: 518
    functionName: silk_ADD_LSHIFT
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_ADD_LSHIFT(a, b, shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 519
      start: 518
    functionDepth: 0
    functionLinenumber: 518
    functionLinenumberEnd: 519
    functionName: silk_ADD_LSHIFT32
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_ADD_LSHIFT32(a, b, shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 520
      start: 519
    functionDepth: 0
    functionLinenumber: 519
    functionLinenumberEnd: 520
    functionName: silk_ADD_LSHIFT_uint
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_ADD_LSHIFT_uint(a, b, shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 521
      start: 520
    functionDepth: 0
    functionLinenumber: 520
    functionLinenumberEnd: 521
    functionName: silk_ADD_RSHIFT
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_ADD_RSHIFT(a, b, shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 522
      start: 521
    functionDepth: 0
    functionLinenumber: 521
    functionLinenumberEnd: 522
    functionName: silk_ADD_RSHIFT32
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_ADD_RSHIFT32(a, b, shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 523
      start: 522
    functionDepth: 0
    functionLinenumber: 522
    functionLinenumberEnd: 523
    functionName: silk_ADD_RSHIFT_uint
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_ADD_RSHIFT_uint(a, b, shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 524
      start: 523
    functionDepth: 0
    functionLinenumber: 523
    functionLinenumberEnd: 524
    functionName: silk_SUB_LSHIFT32
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SUB_LSHIFT32(a, b, shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 525
      start: 524
    functionDepth: 0
    functionLinenumber: 524
    functionLinenumberEnd: 525
    functionName: silk_SUB_RSHIFT32
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SUB_RSHIFT32(a, b, shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 528
      start: 527
    functionDepth: 0
    functionLinenumber: 527
    functionLinenumberEnd: 528
    functionName: silk_RSHIFT_ROUND
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 25
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_RSHIFT_ROUND(a, shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 529
      start: 528
    functionDepth: 0
    functionLinenumber: 528
    functionLinenumberEnd: 529
    functionName: silk_RSHIFT_ROUND64
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_RSHIFT_ROUND64(a, shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 532
      start: 531
    functionDepth: 0
    functionLinenumber: 531
    functionLinenumberEnd: 532
    functionName: silk_NSHIFT_MUL_32_32
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_NSHIFT_MUL_32_32(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 533
      start: 532
    functionDepth: 0
    functionLinenumber: 532
    functionLinenumberEnd: 533
    functionName: silk_NSHIFT_MUL_16_16
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_NSHIFT_MUL_16_16(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 536
      start: 535
    functionDepth: 0
    functionLinenumber: 535
    functionLinenumberEnd: 536
    functionName: silk_min
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 12
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_min(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 537
      start: 536
    functionDepth: 0
    functionLinenumber: 536
    functionLinenumberEnd: 537
    functionName: silk_max
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_max(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - C
    - ','
    - Q
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 540
      start: 539
    functionDepth: 0
    functionLinenumber: 539
    functionLinenumberEnd: 540
    functionName: SILK_FIX_CONST
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 20
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SILK_FIX_CONST( C, Q )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 545
      start: 542
    functionDepth: 0
    functionLinenumber: 542
    functionLinenumberEnd: 545
    functionName: silk_min_int
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_min_int(opus_int a, opus_int b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int16
    - opus_int16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 549
      start: 546
    functionDepth: 0
    functionLinenumber: 546
    functionLinenumberEnd: 549
    functionName: silk_min_16
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_min_16(opus_int16 a, opus_int16 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 553
      start: 550
    functionDepth: 0
    functionLinenumber: 550
    functionLinenumberEnd: 553
    functionName: silk_min_32
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_min_32(opus_int32 a, opus_int32 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int64
    - opus_int64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 557
      start: 554
    functionDepth: 0
    functionLinenumber: 554
    functionLinenumberEnd: 557
    functionName: silk_min_64
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_min_64(opus_int64 a, opus_int64 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 563
      start: 560
    functionDepth: 0
    functionLinenumber: 560
    functionLinenumberEnd: 563
    functionName: silk_max_int
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_max_int(opus_int a, opus_int b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int16
    - opus_int16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 567
      start: 564
    functionDepth: 0
    functionLinenumber: 564
    functionLinenumberEnd: 567
    functionName: silk_max_16
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_max_16(opus_int16 a, opus_int16 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 571
      start: 568
    functionDepth: 0
    functionLinenumber: 568
    functionLinenumberEnd: 571
    functionName: silk_max_32
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_max_32(opus_int32 a, opus_int32 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int64
    - opus_int64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 575
      start: 572
    functionDepth: 0
    functionLinenumber: 572
    functionLinenumberEnd: 575
    functionName: silk_max_64
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_max_64(opus_int64 a, opus_int64 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - limit1
    - ','
    - limit2
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 579
      start: 577
    functionDepth: 0
    functionLinenumber: 577
    functionLinenumberEnd: 579
    functionName: silk_LIMIT
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_LIMIT( a, limit1, limit2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 585
      start: 584
    functionDepth: 0
    functionLinenumber: 584
    functionLinenumberEnd: 585
    functionName: silk_abs
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_abs(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 586
      start: 585
    functionDepth: 0
    functionLinenumber: 585
    functionLinenumberEnd: 586
    functionName: silk_abs_int
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_abs_int(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 587
      start: 586
    functionDepth: 0
    functionLinenumber: 586
    functionLinenumberEnd: 587
    functionName: silk_abs_int32
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_abs_int32(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 588
      start: 587
    functionDepth: 0
    functionLinenumber: 587
    functionLinenumberEnd: 588
    functionName: silk_abs_int64
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_abs_int64(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 590
      start: 589
    functionDepth: 0
    functionLinenumber: 589
    functionLinenumberEnd: 590
    functionName: silk_sign
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_sign(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - seed
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 598
      start: 597
    functionDepth: 0
    functionLinenumber: 597
    functionLinenumberEnd: 598
    functionName: silk_RAND
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_RAND(seed)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a32
    - ','
    - b32
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 609
      start: 608
    functionDepth: 0
    functionLinenumber: 608
    functionLinenumberEnd: 609
    functionName: silk_SMMUL
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMMUL(a32, b32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 19
    argNames:
    - (
    - res_nrg
    - ','
    - res_nrg_Q
    - ','
    - A_Q16
    - ','
    - x
    - ','
    - minInvGain_Q30
    - ','
    - subfr_length
    - ','
    - nb_subfr
    - ','
    - D
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 613
      start: 611
    functionDepth: 0
    functionLinenumber: 611
    functionLinenumberEnd: 613
    functionName: silk_burg_modified
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_burg_modified(res_nrg, res_nrg_Q, A_Q16, x, minInvGain_Q30, subfr_length,
      nb_subfr, D, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - inVec1
    - ','
    - inVec2
    - ','
    - len
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 618
      start: 616
    functionDepth: 0
    functionLinenumber: 616
    functionLinenumberEnd: 618
    functionName: silk_inner_prod16
    functionSourceFile: /src/opus/silk/SigProc_FIX.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_inner_prod16(inVec1, inVec2, len, arch)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/silk/decoder_set_fs.c:43,1
    - Dst: celt_assert
      Src: /src/opus/silk/decoder_set_fs.c:44,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/decoder_set_fs.c:47,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/decoder_set_fs.c:48,1
    - Dst: silk_resampler_init
      Src: /src/opus/silk/decoder_set_fs.c:53,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/decoder_set_fs.c:53,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/decoder_set_fs.c:73,1
    - Dst: celt_assert
      Src: /src/opus/silk/decoder_set_fs.c:89,1
    - Dst: silk_memset
      Src: /src/opus/silk/decoder_set_fs.c:95,1
    - Dst: silk_memset
      Src: /src/opus/silk/decoder_set_fs.c:96,1
    - Dst: celt_assert
      Src: /src/opus/silk/decoder_set_fs.c:104,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 55
    argCount: 3
    argNames:
    - psDec
    - fs_kHz
    - fs_API_Hz
    argTypes:
    - silk_decoder_state*
    - opus_int
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 35
    functionDepth: 2
    functionLinenumber: 35
    functionLinenumberEnd: 107
    functionName: silk_decoder_set_fs
    functionSourceFile: /src/opus/silk/decoder_set_fs.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - silk_SMULBB
    - silk_resampler_init
    - silk_memset
    linkageType: ''
    returnType: opus_int
    signature: "opus_int silk_decoder_set_fs(\n    silk_decoder_state          *psDec,
      \                        /* I/O  Decoder state pointer                       */\n
      \   opus_int                    fs_kHz,                         /* I    Sampling
      frequency (kHz)                    */\n    opus_int32                  fs_API_Hz
      \                      /* I    API Sampling frequency (Hz)                 */\n)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: silk_abs
      Src: /src/opus/silk/LPC_fit.c:52,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/LPC_fit.c:58,1
    - Dst: silk_min
      Src: /src/opus/silk/LPC_fit.c:62,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/LPC_fit.c:63,1
    - Dst: silk_DIV32
      Src: /src/opus/silk/LPC_fit.c:63,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/LPC_fit.c:63,1
    - Dst: silk_RSHIFT32
      Src: /src/opus/silk/LPC_fit.c:64,1
    - Dst: silk_MUL
      Src: /src/opus/silk/LPC_fit.c:64,1
    - Dst: silk_bwexpander_32
      Src: /src/opus/silk/LPC_fit.c:65,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/LPC_fit.c:74,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/LPC_fit.c:74,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/LPC_fit.c:75,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/LPC_fit.c:79,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 5
    argNames:
    - a_QOUT
    - a_QIN
    - QOUT
    - QIN
    - d
    argTypes:
    - opus_int16*
    - opus_int32*
    - opus_int
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 82
    functionName: silk_LPC_fit
    functionSourceFile: /src/opus/silk/LPC_fit.c
    functionUses: 0
    functionsReached:
    - silk_abs
    - silk_min
    - silk_LSHIFT
    - silk_DIV32
    - silk_MUL
    - silk_SAT16
    - silk_RSHIFT32
    - silk_bwexpander_32
    - SILK_FIX_CONST
    - silk_RSHIFT_ROUND
    linkageType: ''
    returnType: void
    signature: "void silk_LPC_fit(\n    opus_int16                  *a_QOUT,            /*
      O    Output signal                                               */\n    opus_int32
      \                   *a_QIN,             /* I/O  Input signal                                                */\n
      \   const opus_int              QOUT,               /* I    Input Q domain                                              */\n
      \   const opus_int              QIN,                /* I    Input Q domain                                              */\n
      \   const opus_int              d                   /* I    Filter order                                                */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/bwexpander.c:47,1
    - Dst: silk_MUL
      Src: /src/opus/silk/bwexpander.c:47,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/bwexpander.c:48,1
    - Dst: silk_MUL
      Src: /src/opus/silk/bwexpander.c:48,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/bwexpander.c:50,1
    - Dst: silk_MUL
      Src: /src/opus/silk/bwexpander.c:50,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - ar
    - d
    - chirp_Q16
    argTypes:
    - opus_int16*
    - opus_int
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 51
    functionName: silk_bwexpander
    functionSourceFile: /src/opus/silk/bwexpander.c
    functionUses: 2
    functionsReached:
    - silk_MUL
    - silk_RSHIFT_ROUND
    linkageType: ''
    returnType: void
    signature: "void silk_bwexpander(\n    opus_int16                  *ar,                /*
      I/O  AR filter to be expanded (without leading 1)                */\n    const
      opus_int              d,                  /* I    Length of ar                                                */\n
      \   opus_int32                  chirp_Q16           /* I    Chirp factor (typically
      in the range 0 to 1)                */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: osce_load_models
      Src: /src/opus/silk/dec_API.c:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 3
    argNames:
    - decState
    - data
    - len
    argTypes:
    - void*
    - unsigned char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 78
    functionName: silk_LoadOSCEModels
    functionSourceFile: /src/opus/silk/dec_API.c
    functionUses: 1
    functionsReached:
    - osce_load_models
    linkageType: ''
    returnType: opus_int
    signature: opus_int silk_LoadOSCEModels(void *decState, const unsigned char *data,
      int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - decSizeBytes
    argTypes:
    - opus_int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 89
    functionName: silk_Get_Decoder_Size
    functionSourceFile: /src/opus/silk/dec_API.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: opus_int
    signature: "opus_int silk_Get_Decoder_Size(                         /* O    Returns
      error code                              */\n    opus_int                        *decSizeBytes
      \      /* O    Number of bytes in SILK decoder state           */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_reset_decoder
      Src: /src/opus/silk/dec_API.c:100,1
    - Dst: silk_memset
      Src: /src/opus/silk/dec_API.c:102,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - decState
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 92
    functionDepth: 3
    functionLinenumber: 92
    functionLinenumberEnd: 107
    functionName: silk_ResetDecoder
    functionSourceFile: /src/opus/silk/dec_API.c
    functionUses: 1
    functionsReached:
    - silk_reset_decoder
    - silk_memset
    linkageType: ''
    returnType: opus_int
    signature: "opus_int silk_ResetDecoder(                              /* O    Returns
      error code                              */\n    void                            *decState
      \          /* I/O  State                                           */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_LoadOSCEModels
      Src: /src/opus/silk/dec_API.c:121,1
    - Dst: silk_init_decoder
      Src: /src/opus/silk/dec_API.c:125,1
    - Dst: silk_memset
      Src: /src/opus/silk/dec_API.c:127,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - decState
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 110
    functionDepth: 4
    functionLinenumber: 110
    functionLinenumberEnd: 132
    functionName: silk_InitDecoder
    functionSourceFile: /src/opus/silk/dec_API.c
    functionUses: 1
    functionsReached:
    - silk_memset
    - silk_init_decoder
    - silk_LoadOSCEModels
    linkageType: ''
    returnType: opus_int
    signature: "opus_int silk_InitDecoder(                              /* O    Returns
      error code                              */\n    void                            *decState
      \          /* I/O  State                                           */\n)"
  - BBCount: 40
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/silk/dec_API.c:152,1
    - Dst: VARDECL
      Src: /src/opus/silk/dec_API.c:153,1
    - Dst: VARDECL
      Src: /src/opus/silk/dec_API.c:161,1
    - Dst: celt_assert
      Src: /src/opus/silk/dec_API.c:165,1
    - Dst: silk_init_decoder
      Src: /src/opus/silk/dec_API.c:178,1
    - Dst: celt_assert
      Src: /src/opus/silk/dec_API.c:204,1
    - Dst: celt_assert
      Src: /src/opus/silk/dec_API.c:210,1
    - Dst: silk_decoder_set_fs
      Src: /src/opus/silk/dec_API.c:214,1
    - Dst: silk_memset
      Src: /src/opus/silk/dec_API.c:219,1
    - Dst: silk_memset
      Src: /src/opus/silk/dec_API.c:220,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/dec_API.c:221,1
    - Dst: ec_dec_bit_logp
      Src: /src/opus/silk/dec_API.c:237,1
    - Dst: ec_dec_bit_logp
      Src: /src/opus/silk/dec_API.c:239,1
    - Dst: silk_memset
      Src: /src/opus/silk/dec_API.c:243,1
    - Dst: ec_dec_icdf
      Src: /src/opus/silk/dec_API.c:248,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/dec_API.c:250,1
    - Dst: silk_stereo_decode_pred
      Src: /src/opus/silk/dec_API.c:265,1
    - Dst: silk_stereo_decode_mid_only
      Src: /src/opus/silk/dec_API.c:267,1
    - Dst: silk_decode_indices
      Src: /src/opus/silk/dec_API.c:276,1
    - Dst: silk_decode_pulses
      Src: /src/opus/silk/dec_API.c:277,1
    - Dst: silk_stereo_decode_pred
      Src: /src/opus/silk/dec_API.c:290,1
    - Dst: silk_stereo_decode_mid_only
      Src: /src/opus/silk/dec_API.c:295,1
    - Dst: silk_memset
      Src: /src/opus/silk/dec_API.c:308,1
    - Dst: silk_memset
      Src: /src/opus/silk/dec_API.c:309,1
    - Dst: ALLOC
      Src: /src/opus/silk/dec_API.c:319,1
    - Dst: osce_reset
      Src: /src/opus/silk/dec_API.c:352,1
    - Dst: silk_decode_frame
      Src: /src/opus/silk/dec_API.c:355,1
    - Dst: silk_memset
      Src: /src/opus/silk/dec_API.c:364,1
    - Dst: silk_stereo_MS_to_LR
      Src: /src/opus/silk/dec_API.c:371,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/dec_API.c:374,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/dec_API.c:375,1
    - Dst: silk_DIV32
      Src: /src/opus/silk/dec_API.c:379,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/dec_API.c:379,1
    - Dst: ALLOC
      Src: /src/opus/silk/dec_API.c:382,1
    - Dst: ALLOC
      Src: /src/opus/silk/dec_API.c:386,1
    - Dst: silk_min
      Src: /src/opus/silk/dec_API.c:389,1
    - Dst: silk_assert
      Src: /src/opus/silk/dec_API.c:394,1
    - Dst: osce_bwe_reset
      Src: /src/opus/silk/dec_API.c:398,1
    - Dst: osce_bwe
      Src: /src/opus/silk/dec_API.c:401,1
    - Dst: silk_resampler
      Src: /src/opus/silk/dec_API.c:407,1
    - Dst: osce_bwe_cross_fade_10ms
      Src: /src/opus/silk/dec_API.c:408,1
    - Dst: silk_resampler
      Src: /src/opus/silk/dec_API.c:411,1
    - Dst: osce_bwe
      Src: /src/opus/silk/dec_API.c:414,1
    - Dst: osce_bwe_cross_fade_10ms
      Src: /src/opus/silk/dec_API.c:417,1
    - Dst: silk_resampler
      Src: /src/opus/silk/dec_API.c:422,1
    - Dst: INT16TORES
      Src: /src/opus/silk/dec_API.c:427,1
    - Dst: INT16TORES
      Src: /src/opus/silk/dec_API.c:431,1
    - Dst: silk_resampler
      Src: /src/opus/silk/dec_API.c:445,1
    - Dst: INT16TORES
      Src: /src/opus/silk/dec_API.c:448,1
    CyclomaticComplexity: 83
    EdgeCount: 83
    ICount: 223
    argCount: 9
    argNames:
    - decState
    - decControl
    - lostFlag
    - newPacketFlag
    - psRangeDec
    - samplesOut
    - nSamplesOut
    - LPCNetPLCState                  *lpcnet
    - arch
    argTypes:
    - void*
    - silk_DecControlStruct*
    - opus_int
    - opus_int
    - ec_dec*
    - opus_res*
    - opus_int32*
    - ENABLE_DEEP_PLC
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 475
      start: 135
    functionDepth: 4
    functionLinenumber: 135
    functionLinenumberEnd: 475
    functionName: silk_Decode
    functionSourceFile: /src/opus/silk/dec_API.c
    functionUses: 0
    functionsReached:
    - silk_DIV32
    - silk_SMULBB
    - silk_decode_pulses
    - silk_min
    - silk_decoder_set_fs
    - silk_RSHIFT
    - silk_assert
    - silk_resampler
    - VARDECL
    - ALLOC
    - osce_bwe_reset
    - silk_stereo_MS_to_LR
    - silk_stereo_decode_mid_only
    - celt_assert
    - osce_bwe
    - silk_memset
    - ec_dec_bit_logp
    - INT16TORES
    - osce_reset
    - osce_bwe_cross_fade_10ms
    - ec_dec_icdf
    - silk_stereo_decode_pred
    - silk_decode_indices
    - silk_memcpy
    - silk_init_decoder
    - silk_decode_frame
    linkageType: ''
    returnType: opus_int
    signature: "opus_int silk_Decode(                                   /* O    Returns
      error code                              */\n    void*                           decState,
      \          /* I/O  State                                           */\n    silk_DecControlStruct*
      \         decControl,         /* I/O  Control Structure                               */\n
      \   opus_int                        lostFlag,           /* I    0: no loss,
      1 loss, 2 decode fec                */\n    opus_int                        newPacketFlag,
      \     /* I    Indicates first decoder call for this packet    */\n    ec_dec
      \                         *psRangeDec,        /* I/O  Compressor data structure
      \                      */\n    opus_res                        *samplesOut,
      \       /* O    Decoded output speech vector                    */\n    opus_int32
      \                     *nSamplesOut,       /* O    Number of samples decoded
      \                      */\n#ifdef ENABLE_DEEP_PLC\n    LPCNetPLCState                  *lpcnet,\n#endif\n
      \   int                             arch                /* I    Run-time architecture
      \                          */\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: silk_memset
      Src: /src/opus/silk/dec_API.c:495,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/dec_API.c:498,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/dec_API.c:498,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/dec_API.c:502,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 4
    argNames:
    - payload
    - nBytesIn
    - nFramesPerPayload
    - Silk_TOC
    argTypes:
    - opus_uint8*
    - opus_int
    - opus_int
    - silk_TOC_struct*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 508
      start: 479
    functionDepth: 1
    functionLinenumber: 479
    functionLinenumberEnd: 508
    functionName: silk_get_TOC
    functionSourceFile: /src/opus/silk/dec_API.c
    functionUses: 0
    functionsReached:
    - silk_memset
    - silk_RSHIFT
    - silk_LSHIFT
    linkageType: ''
    returnType: opus_int
    signature: "opus_int silk_get_TOC(\n    const opus_uint8                *payload,
      \          /* I    Payload data                                */\n    const
      opus_int                  nBytesIn,           /* I    Number of input bytes
      \                      */\n    const opus_int                  nFramesPerPayload,
      \ /* I    Number of SILK frames per payload           */\n    silk_TOC_struct
      \                *Silk_TOC           /* O    Type of content                             */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_ADD_RSHIFT32
      Src: /src/opus/silk/inner_prod_aligned.c:44,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/inner_prod_aligned.c:44,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - inVec1
    - inVec2
    - scale
    - len
    argTypes:
    - opus_int16*
    - opus_int16*
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 47
    functionName: silk_inner_prod_aligned_scale
    functionSourceFile: /src/opus/silk/inner_prod_aligned.c
    functionUses: 1
    functionsReached:
    - silk_SMULBB
    - silk_ADD_RSHIFT32
    linkageType: ''
    returnType: opus_int32
    signature: "opus_int32 silk_inner_prod_aligned_scale(\n    const opus_int16 *const
      \    inVec1,             /*    I input vector 1                                              */\n
      \   const opus_int16 *const     inVec2,             /*    I input vector 2                                              */\n
      \   const opus_int              scale,              /*    I number of bits to
      shift                                     */\n    const opus_int              len
      \                /*    I vector lengths                                              */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/biquad_alt.c:57,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/biquad_alt.c:59,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/biquad_alt.c:64,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/biquad_alt.c:64,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/biquad_alt.c:66,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/biquad_alt.c:66,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/biquad_alt.c:67,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/biquad_alt.c:68,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/biquad_alt.c:70,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/biquad_alt.c:70,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/biquad_alt.c:71,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/biquad_alt.c:72,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/biquad_alt.c:75,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/biquad_alt.c:75,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 6
    argNames:
    - in
    - B_Q28
    - A_Q28
    - S
    - out
    - len
    argTypes:
    - opus_int16*
    - opus_int32*
    - opus_int32*
    - opus_int32*
    - opus_int16*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 77
    functionName: silk_biquad_alt_stride1
    functionSourceFile: /src/opus/silk/biquad_alt.c
    functionUses: 1
    functionsReached:
    - silk_LSHIFT
    - silk_RSHIFT
    - silk_SMULWB
    - silk_SAT16
    - silk_SMLAWB
    - silk_RSHIFT_ROUND
    linkageType: ''
    returnType: void
    signature: "void silk_biquad_alt_stride1(\n    const opus_int16            *in,
      \               /* I     input signal                                               */\n
      \   const opus_int32            *B_Q28,             /* I     MA coefficients
      [3]                                        */\n    const opus_int32            *A_Q28,
      \            /* I     AR coefficients [2]                                        */\n
      \   opus_int32                  *S,                 /* I/O   State vector [2]
      \                                          */\n    opus_int16                  *out,
      \              /* O     output signal                                              */\n
      \   const opus_int32            len                 /* I     signal length (must
      be even)                               */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/biquad_alt.c:94,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/biquad_alt.c:96,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/biquad_alt.c:100,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/biquad_alt.c:100,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/biquad_alt.c:101,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/biquad_alt.c:101,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/biquad_alt.c:103,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/biquad_alt.c:103,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/biquad_alt.c:104,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/biquad_alt.c:104,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/biquad_alt.c:105,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/biquad_alt.c:106,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/biquad_alt.c:107,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/biquad_alt.c:108,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/biquad_alt.c:110,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/biquad_alt.c:110,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/biquad_alt.c:111,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/biquad_alt.c:111,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/biquad_alt.c:112,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/biquad_alt.c:113,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/biquad_alt.c:114,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/biquad_alt.c:115,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/biquad_alt.c:118,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/biquad_alt.c:118,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/biquad_alt.c:119,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/biquad_alt.c:119,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 23
    argCount: 6
    argNames:
    - in
    - B_Q28
    - A_Q28
    - S
    - out
    - len
    argTypes:
    - opus_int16*
    - opus_int32*
    - opus_int32*
    - opus_int32*
    - opus_int16*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 121
    functionName: silk_biquad_alt_stride2_c
    functionSourceFile: /src/opus/silk/biquad_alt.c
    functionUses: 0
    functionsReached:
    - silk_LSHIFT
    - silk_RSHIFT
    - silk_SMULWB
    - silk_SAT16
    - silk_SMLAWB
    - silk_RSHIFT_ROUND
    linkageType: ''
    returnType: void
    signature: "void silk_biquad_alt_stride2_c(\n    const opus_int16            *in,
      \               /* I     input signal                                               */\n
      \   const opus_int32            *B_Q28,             /* I     MA coefficients
      [3]                                        */\n    const opus_int32            *A_Q28,
      \            /* I     AR coefficients [2]                                        */\n
      \   opus_int32                  *S,                 /* I/O   State vector [4]
      \                                          */\n    opus_int16                  *out,
      \              /* O     output signal                                              */\n
      \   const opus_int32            len                 /* I     signal length (must
      be even)                               */\n)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/LP_variable_cutoff.c:55,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/LP_variable_cutoff.c:62,1
    - Dst: silk_assert
      Src: /src/opus/silk/LP_variable_cutoff.c:69,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/LP_variable_cutoff.c:69,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/LP_variable_cutoff.c:72,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/LP_variable_cutoff.c:79,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/LP_variable_cutoff.c:87,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/LP_variable_cutoff.c:88,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/LP_variable_cutoff.c:91,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/LP_variable_cutoff.c:92,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 27
    argCount: 4
    argNames:
    - B_Q28
    - A_Q28
    - ind
    - fac_Q16
    argTypes:
    - opus_int32[]
    - opus_int32[]
    - opus_int
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 94
    functionName: silk_LP_interpolate_filter_taps
    functionSourceFile: /src/opus/silk/LP_variable_cutoff.c
    functionUses: 0
    functionsReached:
    - silk_SMLAWB
    - silk_assert
    - silk_memcpy
    - silk_SAT16
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_LP_interpolate_filter_taps(\n    opus_int32           B_Q28[
      TRANSITION_NB ],\n    opus_int32           A_Q28[ TRANSITION_NA ],\n    const
      opus_int       ind,\n    const opus_int32     fac_Q16\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: silk_assert
      Src: /src/opus/silk/LP_variable_cutoff.c:109,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/LP_variable_cutoff.c:115,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/LP_variable_cutoff.c:117,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/LP_variable_cutoff.c:117,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/LP_variable_cutoff.c:119,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/LP_variable_cutoff.c:120,1
    - Dst: silk_assert
      Src: /src/opus/silk/LP_variable_cutoff.c:122,1
    - Dst: silk_assert
      Src: /src/opus/silk/LP_variable_cutoff.c:123,1
    - Dst: silk_LP_interpolate_filter_taps
      Src: /src/opus/silk/LP_variable_cutoff.c:126,1
    - Dst: silk_LIMIT
      Src: /src/opus/silk/LP_variable_cutoff.c:129,1
    - Dst: silk_assert
      Src: /src/opus/silk/LP_variable_cutoff.c:132,1
    - Dst: silk_biquad_alt_stride1
      Src: /src/opus/silk/LP_variable_cutoff.c:133,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - psLP
    - frame
    - frame_length
    argTypes:
    - silk_LP_state*
    - opus_int16*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 100
    functionDepth: 2
    functionLinenumber: 100
    functionLinenumberEnd: 135
    functionName: silk_LP_variable_cutoff
    functionSourceFile: /src/opus/silk/LP_variable_cutoff.c
    functionUses: 0
    functionsReached:
    - silk_LSHIFT
    - silk_LIMIT
    - silk_RSHIFT
    - silk_assert
    - silk_LP_interpolate_filter_taps
    - silk_DIV32_16
    - silk_biquad_alt_stride1
    linkageType: ''
    returnType: void
    signature: "void silk_LP_variable_cutoff(\n    silk_LP_state               *psLP,
      \                         /* I/O  LP filter state                             */\n
      \   opus_int16                  *frame,                         /* I/O  Low-pass
      filtered output signal             */\n    const opus_int              frame_length
      \                   /* I    Frame length                                */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/NLSF2A.c:53,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/NLSF2A.c:57,1
    - Dst: silk_RSHIFT_ROUND64
      Src: /src/opus/silk/NLSF2A.c:57,1
    - Dst: silk_SMULL
      Src: /src/opus/silk/NLSF2A.c:57,1
    - Dst: silk_RSHIFT_ROUND64
      Src: /src/opus/silk/NLSF2A.c:59,1
    - Dst: silk_SMULL
      Src: /src/opus/silk/NLSF2A.c:59,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - out
    - cLSF
    - dd
    argTypes:
    - opus_int32*
    - opus_int32*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 63
    functionName: silk_NLSF2A_find_poly
    functionSourceFile: /src/opus/silk/NLSF2A.c
    functionUses: 0
    functionsReached:
    - silk_RSHIFT_ROUND64
    - silk_LSHIFT
    - silk_SMULL
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_NLSF2A_find_poly(\n    opus_int32          *out,
      \     /* O    intermediate polynomial, QA [dd+1]        */\n    const opus_int32
      \   *cLSF,     /* I    vector of interleaved 2*cos(LSFs), QA [d] */\n    opus_int
      \           dd         /* I    polynomial order (= 1/2 * filter order)   */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_assert
      Src: /src/opus/silk/NLSF2A.c:88,1
    - Dst: celt_assert
      Src: /src/opus/silk/NLSF2A.c:89,1
    - Dst: silk_assert
      Src: /src/opus/silk/NLSF2A.c:94,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/NLSF2A.c:97,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/NLSF2A.c:100,1
    - Dst: silk_assert
      Src: /src/opus/silk/NLSF2A.c:102,1
    - Dst: silk_assert
      Src: /src/opus/silk/NLSF2A.c:103,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/NLSF2A.c:110,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/NLSF2A.c:110,1
    - Dst: silk_MUL
      Src: /src/opus/silk/NLSF2A.c:110,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/NLSF2A.c:113,1
    - Dst: silk_NLSF2A_find_poly
      Src: /src/opus/silk/NLSF2A.c:116,1
    - Dst: silk_NLSF2A_find_poly
      Src: /src/opus/silk/NLSF2A.c:117,1
    - Dst: silk_LPC_fit
      Src: /src/opus/silk/NLSF2A.c:130,1
    - Dst: silk_LPC_inverse_pred_gain
      Src: /src/opus/silk/NLSF2A.c:132,1
    - Dst: silk_bwexpander_32
      Src: /src/opus/silk/NLSF2A.c:135,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/NLSF2A.c:135,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/NLSF2A.c:137,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 30
    argCount: 4
    argNames:
    - a_Q12
    - NLSF
    - d
    - arch
    argTypes:
    - opus_int16*
    - opus_int16*
    - opus_int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 66
    functionDepth: 2
    functionLinenumber: 66
    functionLinenumberEnd: 140
    functionName: silk_NLSF2A
    functionSourceFile: /src/opus/silk/NLSF2A.c
    functionUses: 3
    functionsReached:
    - celt_assert
    - silk_LPC_inverse_pred_gain
    - silk_LPC_fit
    - silk_LSHIFT
    - silk_assert
    - silk_RSHIFT
    - silk_MUL
    - silk_bwexpander_32
    - silk_NLSF2A_find_poly
    - silk_RSHIFT_ROUND
    linkageType: ''
    returnType: void
    signature: "void silk_NLSF2A(\n    opus_int16                  *a_Q12,             /*
      O    monic whitening filter coefficients in Q12,  [ d ]          */\n    const
      opus_int16            *NLSF,              /* I    normalized line spectral frequencies
      in Q15, [ d ]          */\n    const opus_int              d,                  /*
      I    filter order (should be even)                               */\n    int
      \                        arch                /* I    Run-time architecture                                       */\n)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: silk_abs
      Src: /src/opus/silk/tests/test_unit_LPC_inv_pred_gain.c:50,1
    - Dst: fabs
      Src: /src/opus/silk/tests/test_unit_LPC_inv_pred_gain.c:80,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 34
    argCount: 2
    argNames:
    - A_Q12
    - order
    argTypes:
    - opus_int16*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 88
    functionName: check_stability
    functionSourceFile: /src/opus/silk/tests/test_unit_LPC_inv_pred_gain.c
    functionUses: 0
    functionsReached:
    - silk_abs
    - fabs
    linkageType: ''
    returnType: int
    signature: int check_stability(opus_int16 *A_Q12, int order)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: opus_select_arch
      Src: /src/opus/silk/tests/test_unit_LPC_inv_pred_gain.c:91,1
    - Dst: srand
      Src: /src/opus/silk/tests/test_unit_LPC_inv_pred_gain.c:99,1
    - Dst: printf
      Src: /src/opus/silk/tests/test_unit_LPC_inv_pred_gain.c:101,1
    - Dst: rand
      Src: /src/opus/silk/tests/test_unit_LPC_inv_pred_gain.c:112,1
    - Dst: silk_LPC_inverse_pred_gain
      Src: /src/opus/silk/tests/test_unit_LPC_inv_pred_gain.c:114,1
    - Dst: check_stability
      Src: /src/opus/silk/tests/test_unit_LPC_inv_pred_gain.c:117,1
    - Dst: fprintf
      Src: /src/opus/silk/tests/test_unit_LPC_inv_pred_gain.c:118,1
    - Dst: printf
      Src: /src/opus/silk/tests/test_unit_LPC_inv_pred_gain.c:124,1
    - Dst: printf
      Src: /src/opus/silk/tests/test_unit_LPC_inv_pred_gain.c:127,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 90
    functionDepth: 2
    functionLinenumber: 90
    functionLinenumberEnd: 130
    functionName: main
    functionSourceFile: /src/opus/silk/tests/test_unit_LPC_inv_pred_gain.c
    functionUses: 0
    functionsReached:
    - check_stability
    - rand
    - silk_LPC_inverse_pred_gain
    - opus_select_arch
    - srand
    - fprintf
    - printf
    linkageType: ''
    returnType: int
    signature: int main(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 27
    argNames:
    - (
    - ind
    - ','
    - res_nrg_Q15
    - ','
    - rate_dist_Q8
    - ','
    - gain_Q7
    - ','
    - XX_Q17
    - ','
    - xX_Q17
    - ','
    - cb_Q7
    - ','
    - cb_gain_Q7
    - ','
    - cl_Q5
    - ','
    - subfr_len
    - ','
    - max_gain_Q7
    - ','
    - L
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 59
    functionName: silk_VQ_WMat_EC
    functionSourceFile: /src/opus/silk/x86/main_sse.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: "silk_VQ_WMat_EC(ind, res_nrg_Q15, rate_dist_Q8, gain_Q7, XX_Q17, xX_Q17,
      cb_Q7, cb_gain_Q7, cl_Q5, \\\n                           subfr_len, max_gain_Q7,
      L, arch)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 27
    argNames:
    - (
    - ind
    - ','
    - res_nrg_Q15
    - ','
    - rate_dist_Q8
    - ','
    - gain_Q7
    - ','
    - XX_Q17
    - ','
    - xX_Q17
    - ','
    - cb_Q7
    - ','
    - cb_gain_Q7
    - ','
    - cl_Q5
    - ','
    - subfr_len
    - ','
    - max_gain_Q7
    - ','
    - L
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 82
    functionName: silk_VQ_WMat_EC
    functionSourceFile: /src/opus/silk/x86/main_sse.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: "silk_VQ_WMat_EC(ind, res_nrg_Q15, rate_dist_Q8, gain_Q7, XX_Q17, xX_Q17,
      cb_Q7, cb_gain_Q7, cl_Q5, \\\n                           subfr_len, max_gain_Q7,
      L, arch)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 33
    argNames:
    - (
    - psEncC
    - ','
    - NSQ
    - ','
    - psIndices
    - ','
    - x_Q3
    - ','
    - pulses
    - ','
    - PredCoef_Q12
    - ','
    - LTPCoef_Q14
    - ','
    - AR2_Q13
    - ','
    - HarmShapeGain_Q14
    - ','
    - Tilt_Q14
    - ','
    - LF_shp_Q14
    - ','
    - Gains_Q16
    - ','
    - pitchL
    - ','
    - Lambda_Q10
    - ','
    - LTP_scale_Q14
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 110
    functionName: silk_NSQ
    functionSourceFile: /src/opus/silk/x86/main_sse.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: "silk_NSQ(psEncC, NSQ, psIndices, x_Q3, pulses, PredCoef_Q12, LTPCoef_Q14,
      AR2_Q13, \\\n                    HarmShapeGain_Q14, Tilt_Q14, LF_shp_Q14, Gains_Q16,
      pitchL, Lambda_Q10, LTP_scale_Q14, arch)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 33
    argNames:
    - (
    - psEncC
    - ','
    - NSQ
    - ','
    - psIndices
    - ','
    - x_Q3
    - ','
    - pulses
    - ','
    - PredCoef_Q12
    - ','
    - LTPCoef_Q14
    - ','
    - AR2_Q13
    - ','
    - HarmShapeGain_Q14
    - ','
    - Tilt_Q14
    - ','
    - LF_shp_Q14
    - ','
    - Gains_Q16
    - ','
    - pitchL
    - ','
    - Lambda_Q10
    - ','
    - LTP_scale_Q14
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 136
    functionName: silk_NSQ
    functionSourceFile: /src/opus/silk/x86/main_sse.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: "silk_NSQ(psEncC, NSQ, psIndices, x_Q3, pulses, PredCoef_Q12, LTPCoef_Q14,
      AR2_Q13, \\\n                    HarmShapeGain_Q14, Tilt_Q14, LF_shp_Q14, Gains_Q16,
      pitchL, Lambda_Q10, LTP_scale_Q14, arch)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 33
    argNames:
    - (
    - psEncC
    - ','
    - NSQ
    - ','
    - psIndices
    - ','
    - x16
    - ','
    - pulses
    - ','
    - PredCoef_Q12
    - ','
    - LTPCoef_Q14
    - ','
    - AR_Q13
    - ','
    - HarmShapeGain_Q14
    - ','
    - Tilt_Q14
    - ','
    - LF_shp_Q14
    - ','
    - Gains_Q16
    - ','
    - pitchL
    - ','
    - Lambda_Q10
    - ','
    - LTP_scale_Q14
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 182
    functionName: silk_NSQ_del_dec
    functionSourceFile: /src/opus/silk/x86/main_sse.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: "silk_NSQ_del_dec(psEncC, NSQ, psIndices, x16, pulses, PredCoef_Q12,
      LTPCoef_Q14, AR_Q13, \\\n                            HarmShapeGain_Q14, Tilt_Q14,
      LF_shp_Q14, Gains_Q16, pitchL, Lambda_Q10, LTP_scale_Q14, arch)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 33
    argNames:
    - (
    - psEncC
    - ','
    - NSQ
    - ','
    - psIndices
    - ','
    - x16
    - ','
    - pulses
    - ','
    - PredCoef_Q12
    - ','
    - LTPCoef_Q14
    - ','
    - AR_Q13
    - ','
    - HarmShapeGain_Q14
    - ','
    - Tilt_Q14
    - ','
    - LF_shp_Q14
    - ','
    - Gains_Q16
    - ','
    - pitchL
    - ','
    - Lambda_Q10
    - ','
    - LTP_scale_Q14
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 190
    functionName: silk_NSQ_del_dec
    functionSourceFile: /src/opus/silk/x86/main_sse.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: "silk_NSQ_del_dec(psEncC, NSQ, psIndices, x16, pulses, PredCoef_Q12,
      LTPCoef_Q14, AR_Q13, \\\n                            HarmShapeGain_Q14, Tilt_Q14,
      LF_shp_Q14, Gains_Q16, pitchL, Lambda_Q10, LTP_scale_Q14, arch)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 33
    argNames:
    - (
    - psEncC
    - ','
    - NSQ
    - ','
    - psIndices
    - ','
    - x16
    - ','
    - pulses
    - ','
    - PredCoef_Q12
    - ','
    - LTPCoef_Q14
    - ','
    - AR_Q13
    - ','
    - HarmShapeGain_Q14
    - ','
    - Tilt_Q14
    - ','
    - LF_shp_Q14
    - ','
    - Gains_Q16
    - ','
    - pitchL
    - ','
    - Lambda_Q10
    - ','
    - LTP_scale_Q14
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 216
    functionName: silk_NSQ_del_dec
    functionSourceFile: /src/opus/silk/x86/main_sse.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: "silk_NSQ_del_dec(psEncC, NSQ, psIndices, x16, pulses, PredCoef_Q12,
      LTPCoef_Q14, AR_Q13, \\\n                            HarmShapeGain_Q14, Tilt_Q14,
      LF_shp_Q14, Gains_Q16, pitchL, Lambda_Q10, LTP_scale_Q14, arch)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - psEnC
    - ','
    - pIn
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 258
    functionDepth: 0
    functionLinenumber: 258
    functionLinenumberEnd: 259
    functionName: silk_VAD_GetSA_Q8
    functionSourceFile: /src/opus/silk/x86/main_sse.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_VAD_GetSA_Q8(psEnC, pIn, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - psEnC
    - ','
    - pIn
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 267
    functionDepth: 0
    functionLinenumber: 267
    functionLinenumberEnd: 269
    functionName: silk_VAD_GetSA_Q8
    functionSourceFile: /src/opus/silk/x86/main_sse.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_VAD_GetSA_Q8(psEnC, pIn, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - data1
    - ','
    - data2
    - ','
    - dataSize
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 282
    functionDepth: 0
    functionLinenumber: 282
    functionLinenumberEnd: 283
    functionName: silk_inner_product_FLP
    functionSourceFile: /src/opus/silk/x86/main_sse.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_inner_product_FLP(data1, data2, dataSize, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - data1
    - ','
    - data2
    - ','
    - dataSize
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 293
    functionDepth: 0
    functionLinenumber: 293
    functionLinenumberEnd: 294
    functionName: silk_inner_product_FLP
    functionSourceFile: /src/opus/silk/x86/main_sse.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_inner_product_FLP(data1, data2, dataSize, arch)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/silk/x86/VAD_sse4_1.c:56,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/x86/VAD_sse4_1.c:70,1
    - Dst: silk_VAD_GetSA_Q8_c
      Src: /src/opus/silk/x86/VAD_sse4_1.c:71,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/VAD_sse4_1.c:75,1
    - Dst: celt_assert
      Src: /src/opus/silk/x86/VAD_sse4_1.c:76,1
    - Dst: celt_assert
      Src: /src/opus/silk/x86/VAD_sse4_1.c:77,1
    - Dst: celt_assert
      Src: /src/opus/silk/x86/VAD_sse4_1.c:78,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/x86/VAD_sse4_1.c:78,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/x86/VAD_sse4_1.c:83,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/x86/VAD_sse4_1.c:84,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/x86/VAD_sse4_1.c:85,1
    - Dst: ALLOC
      Src: /src/opus/silk/x86/VAD_sse4_1.c:99,1
    - Dst: silk_ana_filt_bank_1
      Src: /src/opus/silk/x86/VAD_sse4_1.c:102,1
    - Dst: silk_ana_filt_bank_1
      Src: /src/opus/silk/x86/VAD_sse4_1.c:106,1
    - Dst: silk_ana_filt_bank_1
      Src: /src/opus/silk/x86/VAD_sse4_1.c:110,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/x86/VAD_sse4_1.c:116,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/x86/VAD_sse4_1.c:119,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/x86/VAD_sse4_1.c:130,1
    - Dst: silk_min_int
      Src: /src/opus/silk/x86/VAD_sse4_1.c:130,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/x86/VAD_sse4_1.c:133,1
    - Dst: _mm_setzero_si128
      Src: /src/opus/silk/x86/VAD_sse4_1.c:143,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/silk/x86/VAD_sse4_1.c:147,1
    - Dst: _mm_srai_epi16
      Src: /src/opus/silk/x86/VAD_sse4_1.c:148,1
    - Dst: _mm_madd_epi16
      Src: /src/opus/silk/x86/VAD_sse4_1.c:149,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/VAD_sse4_1.c:150,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/VAD_sse4_1.c:153,1
    - Dst: _mm_unpackhi_epi64
      Src: /src/opus/silk/x86/VAD_sse4_1.c:153,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/VAD_sse4_1.c:154,1
    - Dst: _mm_shufflelo_epi16
      Src: /src/opus/silk/x86/VAD_sse4_1.c:154,1
    - Dst: _mm_cvtsi128_si32
      Src: /src/opus/silk/x86/VAD_sse4_1.c:156,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/x86/VAD_sse4_1.c:161,1
    - Dst: silk_SMLABB
      Src: /src/opus/silk/x86/VAD_sse4_1.c:163,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/VAD_sse4_1.c:166,1
    - Dst: silk_ADD_POS_SAT32
      Src: /src/opus/silk/x86/VAD_sse4_1.c:171,1
    - Dst: silk_ADD_POS_SAT32
      Src: /src/opus/silk/x86/VAD_sse4_1.c:174,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/x86/VAD_sse4_1.c:174,1
    - Dst: silk_VAD_GetNoiseLevels
      Src: /src/opus/silk/x86/VAD_sse4_1.c:185,1
    - Dst: silk_DIV32
      Src: /src/opus/silk/x86/VAD_sse4_1.c:197,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/VAD_sse4_1.c:197,1
    - Dst: silk_DIV32
      Src: /src/opus/silk/x86/VAD_sse4_1.c:199,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/x86/VAD_sse4_1.c:199,1
    - Dst: silk_lin2log
      Src: /src/opus/silk/x86/VAD_sse4_1.c:203,1
    - Dst: silk_SMLABB
      Src: /src/opus/silk/x86/VAD_sse4_1.c:206,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/x86/VAD_sse4_1.c:211,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/VAD_sse4_1.c:211,1
    - Dst: silk_SQRT_APPROX
      Src: /src/opus/silk/x86/VAD_sse4_1.c:211,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/x86/VAD_sse4_1.c:213,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/x86/VAD_sse4_1.c:220,1
    - Dst: silk_SQRT_APPROX
      Src: /src/opus/silk/x86/VAD_sse4_1.c:223,1
    - Dst: silk_sigm_Q15
      Src: /src/opus/silk/x86/VAD_sse4_1.c:228,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/x86/VAD_sse4_1.c:228,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/VAD_sse4_1.c:233,1
    - Dst: silk_sigm_Q15
      Src: /src/opus/silk/x86/VAD_sse4_1.c:233,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/x86/VAD_sse4_1.c:241,1
    - Dst: silk_RSHIFT32
      Src: /src/opus/silk/x86/VAD_sse4_1.c:245,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/x86/VAD_sse4_1.c:249,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/x86/VAD_sse4_1.c:251,1
    - Dst: silk_SQRT_APPROX
      Src: /src/opus/silk/x86/VAD_sse4_1.c:254,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/x86/VAD_sse4_1.c:255,1
    - Dst: silk_min_int
      Src: /src/opus/silk/x86/VAD_sse4_1.c:259,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/x86/VAD_sse4_1.c:259,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/x86/VAD_sse4_1.c:265,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/x86/VAD_sse4_1.c:265,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/x86/VAD_sse4_1.c:273,1
    - Dst: silk_lin2log
      Src: /src/opus/silk/x86/VAD_sse4_1.c:277,1
    - Dst: silk_sigm_Q15
      Src: /src/opus/silk/x86/VAD_sse4_1.c:279,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/x86/VAD_sse4_1.c:279,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/VAD_sse4_1.c:283,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/VAD_sse4_1.c:284,1
    - Dst: memcmp
      Src: /src/opus/silk/x86/VAD_sse4_1.c:284,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 113
    argCount: 2
    argNames:
    - psEncC
    - pIn
    argTypes:
    - silk_encoder_state*
    - opus_int16[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 45
    functionDepth: 3
    functionLinenumber: 45
    functionLinenumberEnd: 289
    functionName: silk_VAD_GetSA_Q8_sse4_1
    functionSourceFile: /src/opus/silk/x86/VAD_sse4_1.c
    functionUses: 0
    functionsReached:
    - silk_VAD_GetNoiseLevels
    - _mm_cvtsi128_si32
    - silk_DIV32
    - silk_SMULWB
    - silk_SMLAWB
    - silk_sigm_Q15
    - silk_SQRT_APPROX
    - silk_assert
    - silk_VAD_GetSA_Q8_c
    - silk_RSHIFT
    - silk_ana_filt_bank_1
    - _mm_shufflelo_epi16
    - VARDECL
    - ALLOC
    - silk_lin2log
    - _mm_madd_epi16
    - celt_assert
    - silk_LSHIFT
    - _mm_add_epi32
    - _mm_unpackhi_epi64
    - _mm_loadu_si128
    - _mm_setzero_si128
    - _mm_srai_epi16
    - silk_DIV32_16
    - silk_memcpy
    - memcmp
    - silk_RSHIFT32
    - silk_min_int
    - silk_SMLABB
    - silk_ADD_POS_SAT32
    - silk_LSHIFT32
    linkageType: ''
    returnType: opus_int
    signature: "opus_int silk_VAD_GetSA_Q8_sse4_1(                  /* O    Return
      value, 0 if success                  */\n    silk_encoder_state          *psEncC,
      \           /* I/O  Encoder state                               */\n    const
      opus_int16            pIn[]               /* I    PCM input                                   */\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:62,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:63,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:64,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:65,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:66,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:68,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:69,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:69,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:82,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:85,1
    - Dst: silk_max
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:85,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:85,1
    - Dst: OP_CVTEPI8_EPI32_M32
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:88,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:89,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:89,1
    - Dst: _mm_mul_epi32
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:90,1
    - Dst: _mm_mul_epi32
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:91,1
    - Dst: _mm_add_epi64
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:92,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:93,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:93,1
    - Dst: _mm_add_epi64
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:94,1
    - Dst: _mm_cvtsi128_si32
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:95,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:96,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:97,1
    - Dst: silk_MLA
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:98,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:99,1
    - Dst: silk_MLA
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:102,1
    - Dst: silk_MLA
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:103,1
    - Dst: silk_MLA
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:104,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:105,1
    - Dst: silk_MLA
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:106,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:107,1
    - Dst: silk_MLA
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:110,1
    - Dst: silk_MLA
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:111,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:112,1
    - Dst: silk_MLA
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:113,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:114,1
    - Dst: silk_MLA
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:117,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:118,1
    - Dst: silk_MLA
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:119,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:120,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:123,1
    - Dst: silk_MLA
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:124,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:125,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:130,1
    - Dst: silk_lin2log
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:130,1
    - Dst: silk_ADD_LSHIFT32
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:132,1
    - Dst: silk_VQ_WMat_EC_c
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:152,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:167,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:168,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:169,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c:170,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 64
    argCount: 12
    argNames:
    - ind
    - res_nrg_Q15
    - rate_dist_Q8
    - gain_Q7
    - XX_Q17
    - xX_Q17
    - cb_Q7
    - cb_gain_Q7
    - cl_Q5
    - subfr_len
    - max_gain_Q7
    - L
    argTypes:
    - opus_int8*
    - opus_int32*
    - opus_int32*
    - opus_int*
    - opus_int32*
    - opus_int32*
    - opus_int8*
    - opus_uint8*
    - opus_uint8*
    - opus_int
    - opus_int32
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 39
    functionDepth: 3
    functionLinenumber: 39
    functionLinenumberEnd: 173
    functionName: silk_VQ_WMat_EC_sse4_1
    functionSourceFile: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c
    functionUses: 0
    functionsReached:
    - _mm_shuffle_epi32
    - _mm_cvtsi128_si32
    - silk_ADD32
    - silk_SMULBB
    - silk_SUB32
    - silk_SMLAWB
    - _MM_SHUFFLE
    - OP_CVTEPI8_EPI32_M32
    - silk_MLA
    - silk_assert
    - silk_lin2log
    - silk_ADD_LSHIFT32
    - silk_LSHIFT32
    - silk_VQ_WMat_EC_c
    - _mm_add_epi64
    - _mm_mul_epi32
    - _mm_loadu_si128
    - SILK_FIX_CONST
    - silk_max
    linkageType: ''
    returnType: void
    signature: "void silk_VQ_WMat_EC_sse4_1(\n    opus_int8                   *ind,
      \                          /* O    index of best codebook vector               */\n
      \   opus_int32                  *res_nrg_Q15,                   /* O    best
      residual energy                        */\n    opus_int32                  *rate_dist_Q8,
      \                 /* O    best total bitrate                          */\n    opus_int
      \                   *gain_Q7,                       /* O    sum of absolute
      LTP coefficients            */\n    const opus_int32            *XX_Q17,                        /*
      I    correlation matrix                          */\n    const opus_int32            *xX_Q17,
      \                       /* I    correlation vector                          */\n
      \   const opus_int8             *cb_Q7,                         /* I    codebook
      \                                   */\n    const opus_uint8            *cb_gain_Q7,
      \                   /* I    codebook effective gain                     */\n
      \   const opus_uint8            *cl_Q5,                         /* I    code
      length for each codebook vector        */\n    const opus_int              subfr_len,
      \                     /* I    number of samples per subframe              */\n
      \   const opus_int32            max_gain_Q7,                    /* I    maximum
      sum of absolute LTP coefficients    */\n    const opus_int              L                               /*
      I    number of vectors in codebook               */\n)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:138,1
    - Dst: VARDECL
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:139,1
    - Dst: VARDECL
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:143,1
    - Dst: VARDECL
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:144,1
    - Dst: VARDECL
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:145,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:157,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:158,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:159,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:160,1
    - Dst: silk_NSQ_del_dec_c
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:161,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:183,1
    - Dst: ALLOC
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:186,1
    - Dst: silk_memset
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:187,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:196,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:197,1
    - Dst: silk_min_int
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:203,1
    - Dst: silk_min_int
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:208,1
    - Dst: silk_min_int
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:212,1
    - Dst: ALLOC
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:222,1
    - Dst: ALLOC
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:223,1
    - Dst: ALLOC
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:224,1
    - Dst: ALLOC
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:225,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:237,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:238,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:239,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:239,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:247,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:262,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:272,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:273,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:273,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:274,1
    - Dst: celt_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:283,1
    - Dst: silk_LPC_analysis_filter
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:285,1
    - Dst: silk_nsq_del_dec_scale_states_sse4_1
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:293,1
    - Dst: silk_noise_shape_quantizer_del_dec_sse4_1
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:296,1
    - Dst: silk_RSHIFT32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:320,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:325,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:326,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:326,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:327,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:330,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:331,1
    - Dst: silk_memmove
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:339,1
    - Dst: silk_memmove
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:340,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:343,1
    - Dst: memcmp
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:343,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:344,1
    - Dst: memcmp
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:344,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:345,1
    - Dst: memcmp
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:345,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 135
    argCount: 15
    argNames:
    - psEncC
    - NSQ
    - psIndices
    - x16
    - pulses
    - PredCoef_Q12
    - LTPCoef_Q14
    - AR_Q13
    - HarmShapeGain_Q14
    - Tilt_Q14
    - LF_shp_Q14
    - Gains_Q16
    - pitchL
    - Lambda_Q10
    - LTP_scale_Q14
    argTypes:
    - silk_encoder_state*
    - silk_nsq_state*
    - SideInfoIndices*
    - opus_int16[]
    - opus_int8[]
    - opus_int16*
    - opus_int16[]
    - opus_int16[]
    - opus_int[]
    - opus_int[]
    - opus_int32[]
    - opus_int32[]
    - opus_int[]
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 116
    functionDepth: 2
    functionLinenumber: 116
    functionLinenumberEnd: 349
    functionName: silk_NSQ_del_dec_sse4_1
    functionSourceFile: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c
    functionUses: 0
    functionsReached:
    - silk_NSQ_del_dec_c
    - silk_assert
    - silk_RSHIFT
    - silk_RSHIFT_ROUND
    - silk_SAT16
    - VARDECL
    - ALLOC
    - celt_assert
    - silk_LSHIFT
    - silk_memset
    - silk_memmove
    - silk_memcpy
    - silk_nsq_del_dec_scale_states_sse4_1
    - memcmp
    - silk_min_int
    - silk_SMULWW
    - silk_RSHIFT32
    - silk_noise_shape_quantizer_del_dec_sse4_1
    - silk_LPC_analysis_filter
    linkageType: ''
    returnType: void
    signature: "void silk_NSQ_del_dec_sse4_1(\n    const silk_encoder_state    *psEncC,
      \                                     /* I    Encoder State                   */\n
      \   silk_nsq_state              *NSQ,                                         /*
      I/O  NSQ state                       */\n    SideInfoIndices             *psIndices,
      \                                  /* I/O  Quantization Indices            */\n
      \   const opus_int16            x16[],                                        /*
      I    Input                           */\n    opus_int8                   pulses[],
      \                                    /* O    Quantized pulse signal          */\n
      \   const opus_int16            *PredCoef_Q12,                                /*
      I    Short term prediction coefs     */\n    const opus_int16            LTPCoef_Q14[
      LTP_ORDER * MAX_NB_SUBFR ],      /* I    Long term prediction coefs      */\n
      \   const opus_int16            AR_Q13[ MAX_NB_SUBFR * MAX_SHAPE_LPC_ORDER ],
      /* I    Noise shaping coefs             */\n    const opus_int              HarmShapeGain_Q14[
      MAX_NB_SUBFR ],            /* I    Long term shaping coefs         */\n    const
      opus_int              Tilt_Q14[ MAX_NB_SUBFR ],                     /* I    Spectral
      tilt                   */\n    const opus_int32            LF_shp_Q14[ MAX_NB_SUBFR
      ],                   /* I    Low frequency shaping coefs     */\n    const opus_int32
      \           Gains_Q16[ MAX_NB_SUBFR ],                    /* I    Quantization
      step sizes         */\n    const opus_int              pitchL[ MAX_NB_SUBFR
      ],                       /* I    Pitch lags                      */\n    const
      opus_int              Lambda_Q10,                                   /* I    Rate/distortion
      tradeoff        */\n    const opus_int              LTP_scale_Q14                                 /*
      I    LTP state scaling               */\n)"
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:392,1
    - Dst: celt_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:400,1
    - Dst: ALLOC
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:401,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:407,1
    - Dst: OP_CVTEPI16_EPI32_M64
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:409,1
    - Dst: OP_CVTEPI16_EPI32_M64
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:410,1
    - Dst: opus_likely
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:412,1
    - Dst: OP_CVTEPI16_EPI32_M64
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:413,1
    - Dst: OP_CVTEPI16_EPI32_M64
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:414,1
    - Dst: OP_CVTEPI16_EPI32_M64
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:418,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:419,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:419,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:431,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:432,1
    - Dst: _mm_mul_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:433,1
    - Dst: _mm_srli_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:434,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:436,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:436,1
    - Dst: _mm_mul_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:437,1
    - Dst: _mm_srli_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:438,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:439,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:441,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:441,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:442,1
    - Dst: _mm_cvtsi128_si32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:443,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:445,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:446,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:456,1
    - Dst: silk_ADD_SAT32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:456,1
    - Dst: silk_SMLAWT
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:457,1
    - Dst: silk_SUB_LSHIFT32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:458,1
    - Dst: silk_RAND
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:474,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:479,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:481,1
    - Dst: _mm_setzero_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:483,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:486,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:487,1
    - Dst: _mm_mul_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:488,1
    - Dst: _mm_srli_epi64
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:490,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:491,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:493,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:493,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:494,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:494,1
    - Dst: _mm_mul_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:495,1
    - Dst: _mm_srli_epi64
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:496,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:497,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:500,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:501,1
    - Dst: _mm_mul_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:502,1
    - Dst: _mm_srli_epi64
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:503,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:504,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:506,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:506,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:507,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:507,1
    - Dst: _mm_mul_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:508,1
    - Dst: _mm_srli_epi64
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:509,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:510,1
    - Dst: opus_likely
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:512,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:515,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:516,1
    - Dst: _mm_mul_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:517,1
    - Dst: _mm_srli_epi64
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:518,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:519,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:521,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:521,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:522,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:522,1
    - Dst: _mm_mul_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:523,1
    - Dst: _mm_srli_epi64
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:524,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:525,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:528,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:529,1
    - Dst: _mm_mul_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:530,1
    - Dst: _mm_srli_epi64
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:531,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:532,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:534,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:534,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:535,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:535,1
    - Dst: _mm_mul_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:536,1
    - Dst: _mm_srli_epi64
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:537,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:538,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:542,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:542,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:543,1
    - Dst: _mm_cvtsi128_si32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:544,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:549,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:549,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:550,1
    - Dst: _mm_cvtsi128_si32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:551,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:553,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:554,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:557,1
    - Dst: celt_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:560,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:562,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:564,1
    - Dst: silk_SUB32_ovflw
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:564,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:566,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:567,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:571,1
    - Dst: silk_SUB32_ovflw
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:571,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:573,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:575,1
    - Dst: silk_SUB32_ovflw
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:575,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:577,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:580,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:582,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:583,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:584,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:586,1
    - Dst: silk_SMLAWT
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:587,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:588,1
    - Dst: silk_ADD_SAT32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:592,1
    - Dst: silk_ADD32_ovflw
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:593,1
    - Dst: silk_SUB_SAT32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:594,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:595,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:597,1
    - Dst: silk_LIMIT_32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:603,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:606,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:607,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:611,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:613,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:621,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:621,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:622,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:623,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:624,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:625,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:628,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:629,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:630,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:633,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:634,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:635,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:637,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:637,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:638,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:639,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:640,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:641,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:643,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:644,1
    - Dst: silk_SMLABB
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:644,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:645,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:646,1
    - Dst: silk_SMLABB
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:646,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:649,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:650,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:654,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:655,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:663,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:669,1
    - Dst: silk_ADD32_ovflw
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:670,1
    - Dst: silk_SUB32_ovflw
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:673,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:673,1
    - Dst: silk_SUB32_ovflw
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:674,1
    - Dst: silk_SUB_SAT32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:675,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:683,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:689,1
    - Dst: silk_ADD32_ovflw
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:690,1
    - Dst: silk_SUB32_ovflw
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:693,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:693,1
    - Dst: silk_SUB32_ovflw
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:694,1
    - Dst: silk_SUB_SAT32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:695,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:719,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:720,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:721,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:745,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:747,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:753,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:754,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:754,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:755,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:771,1
    - Dst: silk_ADD32_ovflw
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:773,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:773,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:782,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 288
    argCount: 26
    argNames:
    - NSQ
    - psDelDec
    - signalType
    - x_Q10
    - pulses
    - xq
    - sLTP_Q15
    - delayedGain_Q10
    - a_Q12
    - b_Q14
    - AR_shp_Q13
    - lag
    - HarmShapeFIRPacked_Q14
    - Tilt_Q14
    - LF_shp_Q14
    - Gain_Q16
    - Lambda_Q10
    - offset_Q10
    - length
    - subfr
    - shapingLPCOrder
    - predictLPCOrder
    - warping_Q16
    - nStatesDelayedDecision
    - smpl_buf_idx
    - decisionDelay
    argTypes:
    - silk_nsq_state*
    - NSQ_del_dec_struct[]
    - opus_int
    - opus_int32[]
    - opus_int8[]
    - opus_int16[]
    - opus_int32[]
    - opus_int32[]
    - opus_int16[]
    - opus_int16[]
    - opus_int16[]
    - opus_int
    - opus_int32
    - opus_int
    - opus_int32
    - opus_int32
    - opus_int
    - opus_int
    - opus_int
    - opus_int
    - opus_int
    - opus_int
    - opus_int
    - opus_int
    - opus_int*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 785
      start: 354
    functionDepth: 1
    functionLinenumber: 354
    functionLinenumberEnd: 785
    functionName: silk_noise_shape_quantizer_del_dec_sse4_1
    functionSourceFile: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c
    functionUses: 1
    functionsReached:
    - _mm_shuffle_epi32
    - _mm_srli_epi64
    - _mm_cvtsi128_si32
    - silk_SMULWB
    - silk_ADD32
    - silk_SMULBB
    - silk_SUB_LSHIFT32
    - silk_SUB32
    - silk_SMLAWB
    - _MM_SHUFFLE
    - silk_ADD_SAT32
    - silk_LIMIT_32
    - silk_SUB32_ovflw
    - opus_likely
    - silk_RSHIFT
    - silk_assert
    - silk_SMLAWT
    - OP_CVTEPI16_EPI32_M64
    - silk_SAT16
    - VARDECL
    - ALLOC
    - silk_SUB_SAT32
    - celt_assert
    - _mm_srli_si128
    - silk_LSHIFT32
    - silk_LSHIFT
    - _mm_add_epi32
    - _mm_mul_epi32
    - _mm_loadu_si128
    - _mm_setzero_si128
    - silk_ADD32_ovflw
    - silk_memcpy
    - silk_RAND
    - silk_SMULWW
    - silk_SMLABB
    - silk_RSHIFT_ROUND
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_noise_shape_quantizer_del_dec_sse4_1(\n    silk_nsq_state
      \     *NSQ,                   /* I/O  NSQ state                           */\n
      \   NSQ_del_dec_struct  psDelDec[],             /* I/O  Delayed decision states
      \            */\n    opus_int            signalType,             /* I    Signal
      type                         */\n    const opus_int32    x_Q10[],                /*
      I                                        */\n    opus_int8           pulses[],
      \              /* O                                        */\n    opus_int16
      \         xq[],                   /* O                                        */\n
      \   opus_int32          sLTP_Q15[],             /* I/O  LTP filter state                    */\n
      \   opus_int32          delayedGain_Q10[],      /* I/O  Gain delay buffer                   */\n
      \   const opus_int16    a_Q12[],                /* I    Short term prediction
      coefs         */\n    const opus_int16    b_Q14[],                /* I    Long
      term prediction coefs          */\n    const opus_int16    AR_shp_Q13[],           /*
      I    Noise shaping coefs                 */\n    opus_int            lag,                    /*
      I    Pitch lag                           */\n    opus_int32          HarmShapeFIRPacked_Q14,
      /* I                                        */\n    opus_int            Tilt_Q14,
      \              /* I    Spectral tilt                       */\n    opus_int32
      \         LF_shp_Q14,             /* I                                        */\n
      \   opus_int32          Gain_Q16,               /* I                                        */\n
      \   opus_int            Lambda_Q10,             /* I                                        */\n
      \   opus_int            offset_Q10,             /* I                                        */\n
      \   opus_int            length,                 /* I    Input length                        */\n
      \   opus_int            subfr,                  /* I    Subframe number                     */\n
      \   opus_int            shapingLPCOrder,        /* I    Shaping LPC filter order
      \           */\n    opus_int            predictLPCOrder,        /* I    Prediction
      filter order             */\n    opus_int            warping_Q16,            /*
      I                                        */\n    opus_int            nStatesDelayedDecision,
      /* I    Number of states in decision tree   */\n    opus_int            *smpl_buf_idx,
      \         /* I/O  Index to newest samples in buffers  */\n    opus_int            decisionDelay
      \          /* I                                        */\n)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: silk_INVERSE32_varQ
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:810,1
    - Dst: silk_max
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:810,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:811,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:814,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:817,1
    - Dst: OP_CVTEPI16_EPI32_M64
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:820,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:823,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:823,1
    - Dst: _mm_mul_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:825,1
    - Dst: _mm_mul_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:826,1
    - Dst: _mm_srli_epi64
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:828,1
    - Dst: _mm_slli_epi64
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:829,1
    - Dst: _mm_blend_epi16
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:831,1
    - Dst: _mm_storeu_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:833,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:837,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:844,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:844,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:847,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:848,1
    - Dst: silk_DIV32_varQ
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:854,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:861,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:865,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:867,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:867,1
    - Dst: _mm_mul_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:869,1
    - Dst: _mm_mul_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:870,1
    - Dst: _mm_srli_epi64
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:872,1
    - Dst: _mm_slli_epi64
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:873,1
    - Dst: _mm_blend_epi16
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:875,1
    - Dst: _mm_storeu_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:877,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:881,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:887,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:895,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:896,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:900,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:903,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:906,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c:907,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 67
    argCount: 14
    argNames:
    - psEncC
    - NSQ
    - psDelDec
    - x16
    - x_sc_Q10
    - sLTP
    - sLTP_Q15
    - subfr
    - nStatesDelayedDecision
    - LTP_scale_Q14
    - Gains_Q16
    - pitchL
    - signal_type
    - decisionDelay
    argTypes:
    - silk_encoder_state*
    - silk_nsq_state*
    - NSQ_del_dec_struct[]
    - opus_int16[]
    - opus_int32[]
    - opus_int16[]
    - opus_int32[]
    - opus_int
    - opus_int
    - opus_int
    - opus_int32[]
    - opus_int[]
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 915
      start: 787
    functionDepth: 2
    functionLinenumber: 787
    functionLinenumberEnd: 915
    functionName: silk_nsq_del_dec_scale_states_sse4_1
    functionSourceFile: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c
    functionUses: 1
    functionsReached:
    - _mm_shuffle_epi32
    - _mm_storeu_si128
    - silk_DIV32_varQ
    - silk_LSHIFT
    - _mm_blend_epi16
    - _mm_srli_epi64
    - _mm_set1_epi32
    - silk_assert
    - silk_SMULWW
    - silk_RSHIFT_ROUND
    - OP_CVTEPI16_EPI32_M64
    - _mm_mul_epi32
    - _mm_slli_epi64
    - silk_SMULWB
    - _mm_loadu_si128
    - _MM_SHUFFLE
    - silk_INVERSE32_varQ
    - silk_max
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_nsq_del_dec_scale_states_sse4_1(\n    const silk_encoder_state
      *psEncC,               /* I    Encoder State                       */\n    silk_nsq_state
      \     *NSQ,                       /* I/O  NSQ state                           */\n
      \   NSQ_del_dec_struct  psDelDec[],                 /* I/O  Delayed decision
      states             */\n    const opus_int16    x16[],                      /*
      I    Input                               */\n    opus_int32          x_sc_Q10[],
      \                /* O    Input scaled with 1/Gain in Q10     */\n    const opus_int16
      \   sLTP[],                     /* I    Re-whitened LTP state in Q0         */\n
      \   opus_int32          sLTP_Q15[],                 /* O    LTP state matching
      scaled input     */\n    opus_int            subfr,                      /*
      I    Subframe number                     */\n    opus_int            nStatesDelayedDecision,
      \    /* I    Number of del dec states            */\n    const opus_int      LTP_scale_Q14,
      \             /* I    LTP state scaling                   */\n    const opus_int32
      \   Gains_Q16[ MAX_NB_SUBFR ],  /* I                                        */\n
      \   const opus_int      pitchL[ MAX_NB_SUBFR ],     /* I    Pitch lag                           */\n
      \   const opus_int      signal_type,                /* I    Signal type                         */\n
      \   const opus_int      decisionDelay               /* I    Decision delay                      */\n)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:95,1
    - Dst: VARDECL
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:96,1
    - Dst: VARDECL
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:99,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:116,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:117,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:118,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:119,1
    - Dst: silk_NSQ_c
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:121,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:145,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:174,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:190,1
    - Dst: ALLOC
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:209,1
    - Dst: ALLOC
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:210,1
    - Dst: ALLOC
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:211,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:222,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:223,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:224,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:224,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:232,1
    - Dst: celt_assert
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:235,1
    - Dst: silk_LPC_analysis_filter
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:237,1
    - Dst: silk_nsq_scale_states_sse4_1
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:245,1
    - Dst: opus_likely
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:247,1
    - Dst: silk_noise_shape_quantizer_10_16_sse4_1
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:249,1
    - Dst: silk_noise_shape_quantizer
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:255,1
    - Dst: silk_memmove
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:269,1
    - Dst: silk_memmove
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:270,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:273,1
    - Dst: memcmp
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:273,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:274,1
    - Dst: memcmp
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:274,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:275,1
    - Dst: memcmp
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:275,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 99
    argCount: 15
    argNames:
    - psEncC
    - NSQ
    - psIndices
    - x16
    - pulses
    - PredCoef_Q12
    - LTPCoef_Q14
    - AR_Q13
    - HarmShapeGain_Q14
    - Tilt_Q14
    - LF_shp_Q14
    - Gains_Q16
    - pitchL
    - Lambda_Q10
    - LTP_scale_Q14
    argTypes:
    - silk_encoder_state*
    - silk_nsq_state*
    - SideInfoIndices*
    - opus_int16[]
    - opus_int8[]
    - opus_int16*
    - opus_int16[]
    - opus_int16[]
    - opus_int[]
    - opus_int[]
    - opus_int32[]
    - opus_int32[]
    - opus_int[]
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 74
    functionDepth: 3
    functionLinenumber: 74
    functionLinenumberEnd: 279
    functionName: silk_NSQ_sse4_1
    functionSourceFile: /src/opus/silk/x86/NSQ_sse4_1.c
    functionUses: 0
    functionsReached:
    - silk_nsq_scale_states_sse4_1
    - celt_assert
    - silk_memcpy
    - silk_LSHIFT
    - memcmp
    - silk_NSQ_c
    - opus_likely
    - silk_assert
    - silk_RSHIFT
    - silk_noise_shape_quantizer_10_16_sse4_1
    - VARDECL
    - ALLOC
    - silk_memmove
    - silk_noise_shape_quantizer
    - silk_LPC_analysis_filter
    linkageType: ''
    returnType: void
    signature: "void silk_NSQ_sse4_1(\n    const silk_encoder_state    *psEncC,                                      /*
      I    Encoder State                   */\n    silk_nsq_state              *NSQ,
      \                                        /* I/O  NSQ state                       */\n
      \   SideInfoIndices             *psIndices,                                   /*
      I/O  Quantization Indices            */\n    const opus_int16            x16[],
      \                                       /* I    Input                           */\n
      \   opus_int8                   pulses[],                                     /*
      O    Quantized pulse signal          */\n    const opus_int16            *PredCoef_Q12,
      \                               /* I    Short term prediction coefs     */\n
      \   const opus_int16            LTPCoef_Q14[ LTP_ORDER * MAX_NB_SUBFR ],      /*
      I    Long term prediction coefs      */\n    const opus_int16            AR_Q13[
      MAX_NB_SUBFR * MAX_SHAPE_LPC_ORDER ], /* I    Noise shaping coefs             */\n
      \   const opus_int              HarmShapeGain_Q14[ MAX_NB_SUBFR ],            /*
      I    Long term shaping coefs         */\n    const opus_int              Tilt_Q14[
      MAX_NB_SUBFR ],                     /* I    Spectral tilt                   */\n
      \   const opus_int32            LF_shp_Q14[ MAX_NB_SUBFR ],                   /*
      I    Low frequency shaping coefs     */\n    const opus_int32            Gains_Q16[
      MAX_NB_SUBFR ],                    /* I    Quantization step sizes         */\n
      \   const opus_int              pitchL[ MAX_NB_SUBFR ],                       /*
      I    Pitch lags                      */\n    const opus_int              Lambda_Q10,
      \                                  /* I    Rate/distortion tradeoff        */\n
      \   const opus_int              LTP_scale_Q14                                 /*
      I    LTP state scaling               */\n)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:327,1
    - Dst: _mm_set_epi8
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:338,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:341,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:343,1
    - Dst: _mm_shuffle_epi8
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:345,1
    - Dst: _mm_shuffle_epi8
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:346,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:349,1
    - Dst: _mm_set_epi8
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:352,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:354,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:355,1
    - Dst: _mm_shuffle_epi8
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:357,1
    - Dst: _mm_shuffle_epi8
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:358,1
    - Dst: _mm_unpackhi_epi64
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:360,1
    - Dst: _mm_unpacklo_epi64
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:361,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:363,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:364,1
    - Dst: _mm_shuffle_epi8
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:366,1
    - Dst: _mm_shuffle_epi8
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:367,1
    - Dst: _mm_unpackhi_epi64
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:369,1
    - Dst: _mm_unpacklo_epi64
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:370,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:373,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:374,1
    - Dst: _mm_shuffle_epi8
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:376,1
    - Dst: _mm_shuffle_epi8
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:377,1
    - Dst: _mm_unpackhi_epi64
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:379,1
    - Dst: _mm_unpacklo_epi64
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:380,1
    - Dst: _mm_set1_epi16
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:383,1
    - Dst: _mm_alignr_epi8
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:394,1
    - Dst: _mm_alignr_epi8
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:395,1
    - Dst: _mm_srli_si128
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:397,1
    - Dst: _mm_srli_si128
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:398,1
    - Dst: _mm_insert_epi16
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:400,1
    - Dst: _mm_insert_epi16
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:401,1
    - Dst: _mm_madd_epi16
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:404,1
    - Dst: _mm_madd_epi16
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:405,1
    - Dst: _mm_cmpgt_epi16
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:408,1
    - Dst: _mm_setzero_si128
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:408,1
    - Dst: _mm_cmpgt_epi16
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:409,1
    - Dst: _mm_setzero_si128
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:409,1
    - Dst: _mm_and_si128
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:411,1
    - Dst: _mm_and_si128
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:412,1
    - Dst: _mm_mulhi_epi16
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:414,1
    - Dst: _mm_mulhi_epi16
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:415,1
    - Dst: _mm_add_epi16
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:417,1
    - Dst: _mm_add_epi16
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:418,1
    - Dst: _mm_madd_epi16
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:420,1
    - Dst: _mm_madd_epi16
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:421,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:424,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:425,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:427,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:429,1
    - Dst: _mm_unpackhi_epi64
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:429,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:430,1
    - Dst: _mm_shufflelo_epi16
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:430,1
    - Dst: _mm_cvtsi128_si32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:432,1
    - Dst: opus_likely
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:435,1
    - Dst: OP_CVTEPI16_EPI32_M64
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:442,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:443,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:446,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:448,1
    - Dst: _mm_mul_epi32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:450,1
    - Dst: _mm_srli_si128
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:452,1
    - Dst: _mm_mul_epi32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:455,1
    - Dst: _mm_srli_si128
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:456,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:458,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:460,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:460,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:461,1
    - Dst: _mm_cvtsi128_si32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:463,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:465,1
    - Dst: _mm_cvtsi128_si32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:472,1
    - Dst: _mm_srli_si128
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:472,1
    - Dst: _mm_unpackhi_epi16
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:472,1
    - Dst: _mm_slli_si128
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:474,1
    - Dst: _mm_slli_si128
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:475,1
    - Dst: _mm_insert_epi16
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:477,1
    - Dst: _mm_insert_epi16
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:478,1
    - Dst: _mm_madd_epi16
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:481,1
    - Dst: _mm_cmpgt_epi16
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:484,1
    - Dst: _mm_setzero_si128
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:484,1
    - Dst: _mm_and_si128
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:485,1
    - Dst: _mm_mulhi_epi16
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:487,1
    - Dst: _mm_add_epi16
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:488,1
    - Dst: _mm_madd_epi16
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:490,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:493,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:495,1
    - Dst: _mm_unpackhi_epi64
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:495,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:496,1
    - Dst: _mm_shufflelo_epi16
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:496,1
    - Dst: _mm_cvtsi128_si32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:498,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:500,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:501,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:503,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:504,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:506,1
    - Dst: silk_SMLAWT
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:507,1
    - Dst: celt_assert
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:509,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:512,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:512,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:513,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:516,1
    - Dst: silk_ADD_SAT32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:516,1
    - Dst: silk_SMLAWT
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:517,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:518,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:521,1
    - Dst: silk_ADD_LSHIFT32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:522,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:523,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:525,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:528,1
    - Dst: silk_RAND
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:531,1
    - Dst: silk_LIMIT_32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:537,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:540,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:541,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:545,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:547,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:563,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:566,1
    - Dst: silk_ADD_LSHIFT32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:572,1
    - Dst: silk_ADD_LSHIFT32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:573,1
    - Dst: silk_SUB_LSHIFT32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:578,1
    - Dst: silk_SUB_LSHIFT32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:579,1
    - Dst: silk_SUB_LSHIFT32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:581,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:582,1
    - Dst: silk_ADD32_ovflw
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:587,1
    - Dst: _mm_unpackhi_epi16
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:596,1
    - Dst: _mm_unpacklo_epi16
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:597,1
    - Dst: _mm_storeu_si128
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:598,1
    - Dst: _mm_storeu_si128
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:599,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:607,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:610,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:615,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:616,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:619,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:619,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:621,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:621,1
    - Dst: _mm_mul_epi32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:623,1
    - Dst: _mm_mul_epi32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:624,1
    - Dst: _mm_mul_epi32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:625,1
    - Dst: _mm_mul_epi32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:626,1
    - Dst: _mm_srli_epi64
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:628,1
    - Dst: _mm_slli_epi64
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:629,1
    - Dst: _mm_srli_epi64
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:630,1
    - Dst: _mm_slli_epi64
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:631,1
    - Dst: _mm_blend_epi16
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:633,1
    - Dst: _mm_blend_epi16
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:634,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:637,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:638,1
    - Dst: _mm_srai_epi32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:640,1
    - Dst: _mm_srai_epi32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:641,1
    - Dst: _mm_packs_epi32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:644,1
    - Dst: _mm_storeu_si128
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:647,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:652,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:652,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:652,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:656,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 193
    argCount: 18
    argNames:
    - NSQ
    - signalType
    - x_sc_Q10
    - pulses
    - xq
    - sLTP_Q15
    - a_Q12
    - b_Q14
    - AR_shp_Q13
    - lag
    - HarmShapeFIRPacked_Q14
    - Tilt_Q14
    - LF_shp_Q14
    - Gain_Q16
    - Lambda_Q10
    - offset_Q10
    - length
    - table
    argTypes:
    - silk_nsq_state*
    - opus_int
    - opus_int32[]
    - opus_int8[]
    - opus_int16[]
    - opus_int32[]
    - opus_int16[]
    - opus_int16[]
    - opus_int16[]
    - opus_int
    - opus_int32
    - opus_int
    - opus_int32
    - opus_int32
    - opus_int
    - opus_int
    - opus_int
    - opus_int32[][]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 657
      start: 284
    functionDepth: 1
    functionLinenumber: 284
    functionLinenumberEnd: 657
    functionName: silk_noise_shape_quantizer_10_16_sse4_1
    functionSourceFile: /src/opus/silk/x86/NSQ_sse4_1.c
    functionUses: 1
    functionsReached:
    - _mm_shuffle_epi32
    - _mm_storeu_si128
    - _mm_srli_epi64
    - _mm_cvtsi128_si32
    - silk_SMULWB
    - silk_SUB_LSHIFT32
    - silk_SUB32
    - silk_SMLAWB
    - _MM_SHUFFLE
    - silk_ADD_SAT32
    - silk_LIMIT_32
    - _mm_shuffle_epi8
    - _mm_unpacklo_epi64
    - _mm_unpacklo_epi16
    - opus_likely
    - _mm_set_epi8
    - silk_RSHIFT
    - silk_SMLAWT
    - OP_CVTEPI16_EPI32_M64
    - _mm_shufflelo_epi16
    - silk_RSHIFT_ROUND
    - silk_SAT16
    - _mm_madd_epi16
    - _mm_cmpgt_epi16
    - _mm_mulhi_epi16
    - _mm_unpackhi_epi16
    - celt_assert
    - _mm_srli_si128
    - silk_LSHIFT32
    - silk_LSHIFT
    - silk_ADD_LSHIFT32
    - _mm_add_epi32
    - _mm_unpackhi_epi64
    - _mm_mul_epi32
    - _mm_slli_epi64
    - _mm_loadu_si128
    - _mm_alignr_epi8
    - _mm_setzero_si128
    - silk_ADD32_ovflw
    - _mm_blend_epi16
    - _mm_add_epi16
    - _mm_packs_epi32
    - silk_memcpy
    - _mm_slli_si128
    - _mm_and_si128
    - silk_RAND
    - _mm_set1_epi32
    - silk_SMULWW
    - _mm_insert_epi16
    - _mm_srai_epi32
    - _mm_set1_epi16
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_noise_shape_quantizer_10_16_sse4_1(\n    silk_nsq_state
      \     *NSQ,                   /* I/O  NSQ state                       */\n    opus_int
      \           signalType,             /* I    Signal type                     */\n
      \   const opus_int32    x_sc_Q10[],             /* I                                    */\n
      \   opus_int8           pulses[],               /* O                                    */\n
      \   opus_int16          xq[],                   /* O                                    */\n
      \   opus_int32          sLTP_Q15[],             /* I/O  LTP state                       */\n
      \   const opus_int16    a_Q12[],                /* I    Short term prediction
      coefs     */\n    const opus_int16    b_Q14[],                /* I    Long term
      prediction coefs      */\n    const opus_int16    AR_shp_Q13[],           /*
      I    Noise shaping AR coefs          */\n    opus_int            lag,                    /*
      I    Pitch lag                       */\n    opus_int32          HarmShapeFIRPacked_Q14,
      /* I                                    */\n    opus_int            Tilt_Q14,
      \              /* I    Spectral tilt                   */\n    opus_int32          LF_shp_Q14,
      \            /* I                                    */\n    opus_int32          Gain_Q16,
      \              /* I                                    */\n    opus_int            Lambda_Q10,
      \            /* I                                    */\n    opus_int            offset_Q10,
      \            /* I                                    */\n    opus_int            length,
      \                /* I    Input length                    */\n    opus_int32
      \         table[][4]              /* I                                    */\n)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: silk_INVERSE32_varQ
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:678,1
    - Dst: silk_max
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:678,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:679,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:682,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:685,1
    - Dst: OP_CVTEPI16_EPI32_M64
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:688,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:691,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:691,1
    - Dst: _mm_mul_epi32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:693,1
    - Dst: _mm_mul_epi32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:694,1
    - Dst: _mm_srli_epi64
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:696,1
    - Dst: _mm_slli_epi64
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:697,1
    - Dst: _mm_blend_epi16
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:699,1
    - Dst: _mm_storeu_si128
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:701,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:705,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:712,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:712,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:715,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:716,1
    - Dst: silk_DIV32_varQ
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:723,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:728,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:732,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:734,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:734,1
    - Dst: _mm_mul_epi32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:736,1
    - Dst: _mm_mul_epi32
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:737,1
    - Dst: _mm_srli_epi64
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:739,1
    - Dst: _mm_slli_epi64
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:740,1
    - Dst: _mm_blend_epi16
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:742,1
    - Dst: _mm_storeu_si128
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:744,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:748,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:754,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:758,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:759,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:763,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/x86/NSQ_sse4_1.c:766,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 59
    argCount: 11
    argNames:
    - psEncC
    - NSQ
    - x16
    - x_sc_Q10
    - sLTP
    - sLTP_Q15
    - subfr
    - LTP_scale_Q14
    - Gains_Q16
    - pitchL
    - signal_type
    argTypes:
    - silk_encoder_state*
    - silk_nsq_state*
    - opus_int16[]
    - opus_int32[]
    - opus_int16[]
    - opus_int32[]
    - opus_int
    - opus_int
    - opus_int32[]
    - opus_int[]
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 772
      start: 659
    functionDepth: 2
    functionLinenumber: 659
    functionLinenumberEnd: 772
    functionName: silk_nsq_scale_states_sse4_1
    functionSourceFile: /src/opus/silk/x86/NSQ_sse4_1.c
    functionUses: 1
    functionsReached:
    - _mm_shuffle_epi32
    - _mm_storeu_si128
    - silk_DIV32_varQ
    - silk_LSHIFT
    - _mm_blend_epi16
    - _mm_srli_epi64
    - _mm_set1_epi32
    - silk_assert
    - silk_SMULWW
    - silk_RSHIFT_ROUND
    - OP_CVTEPI16_EPI32_M64
    - _mm_mul_epi32
    - _mm_slli_epi64
    - silk_SMULWB
    - _mm_loadu_si128
    - _MM_SHUFFLE
    - silk_INVERSE32_varQ
    - silk_max
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_nsq_scale_states_sse4_1(\n    const silk_encoder_state
      *psEncC,              /* I    Encoder State                   */\n    silk_nsq_state
      \     *NSQ,                      /* I/O  NSQ state                       */\n
      \   const opus_int16    x16[],                     /* I    input                           */\n
      \   opus_int32          x_sc_Q10[],                /* O    input scaled with
      1/Gain        */\n    const opus_int16    sLTP[],                    /* I    re-whitened
      LTP state in Q0     */\n    opus_int32          sLTP_Q15[],                /*
      O    LTP state matching scaled input */\n    opus_int            subfr,                     /*
      I    subframe number                 */\n    const opus_int      LTP_scale_Q14,
      \            /* I                                    */\n    const opus_int32
      \   Gains_Q16[ MAX_NB_SUBFR ], /* I                                    */\n
      \   const opus_int      pitchL[ MAX_NB_SUBFR ],    /* I    Pitch lag                       */\n
      \   const opus_int      signal_type                /* I    Signal type                     */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:52,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:56,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:59,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:61,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:63,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 7
    argCount: 1
    argNames:
    - psEncC
    argTypes:
    - silk_encoder_state*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 71
    functionName: verify_assumptions
    functionSourceFile: /src/opus/silk/x86/NSQ_del_dec_avx2.c
    functionUses: 0
    functionsReached:
    - silk_assert
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE verify_assumptions(const silk_encoder_state *psEncC)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - a
    - b
    - res
    argTypes:
    - opus_int32
    - opus_int32
    - opus_int32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 80
    functionName: __builtin_sadd_overflow
    functionSourceFile: /src/opus/silk/x86/NSQ_del_dec_avx2.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int __builtin_sadd_overflow(opus_int32 a, opus_int32 b, opus_int32*
      res)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _BitScanForward
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 85
    functionName: __builtin_ctz
    functionSourceFile: /src/opus/silk/x86/NSQ_del_dec_avx2.c
    functionUses: 0
    functionsReached:
    - _BitScanForward
    linkageType: ''
    returnType: int
    signature: int __builtin_ctz(unsigned int x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm256_castsi256_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:90,1
    - Dst: _mm256_permutevar8x32_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:90,1
    - Dst: _mm256_set_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - num
    argTypes:
    - __m256i
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 91
    functionName: silk_cvtepi64_epi32_high
    functionSourceFile: /src/opus/silk/x86/NSQ_del_dec_avx2.c
    functionUses: 0
    functionsReached:
    - _mm256_castsi256_si128
    - _mm256_set_epi32
    - _mm256_permutevar8x32_epi32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_cvtepi64_epi32_high(__m256i num)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - num
    argTypes:
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 98
    functionName: silk_sat16
    functionSourceFile: /src/opus/silk/x86/NSQ_del_dec_avx2.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_sat16(opus_int32 num)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:102,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - a
    - bits
    argTypes:
    - opus_int32
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 100
    functionDepth: 1
    functionLinenumber: 100
    functionLinenumberEnd: 105
    functionName: silk_sar_round_32
    functionSourceFile: /src/opus/silk/x86/NSQ_del_dec_avx2.c
    functionUses: 0
    functionsReached:
    - silk_assert
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_sar_round_32(opus_int32 a, int bits)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:112,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:114,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:114,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:117,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - a
    - b
    - bits
    argTypes:
    - opus_int32
    - opus_int32
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 107
    functionDepth: 1
    functionLinenumber: 107
    functionLinenumberEnd: 123
    functionName: silk_sar_round_smulww
    functionSourceFile: /src/opus/silk/x86/NSQ_del_dec_avx2.c
    functionUses: 0
    functionsReached:
    - silk_SMULWW
    - silk_assert
    - silk_RSHIFT_ROUND
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_sar_round_smulww(opus_int32 a, opus_int32 b, int bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: __builtin_sadd_overflow
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:128,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 125
    functionDepth: 1
    functionLinenumber: 125
    functionLinenumberEnd: 133
    functionName: silk_add_sat32
    functionSourceFile: /src/opus/silk/x86/NSQ_del_dec_avx2.c
    functionUses: 0
    functionsReached:
    - __builtin_sadd_overflow
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_add_sat32(opus_int32 a, opus_int32 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:137,1
    - Dst: _mm_srai_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:138,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:138,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:138,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - a
    - bits
    argTypes:
    - __m128i
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 135
    functionDepth: 1
    functionLinenumber: 135
    functionLinenumberEnd: 139
    functionName: silk_mm_srai_round_epi32
    functionSourceFile: /src/opus/silk/x86/NSQ_del_dec_avx2.c
    functionUses: 0
    functionsReached:
    - _mm_srai_epi32
    - _mm_add_epi32
    - silk_assert
    - _mm_set1_epi32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_mm_srai_round_epi32(__m128i a, int bits)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:144,1
    - Dst: _mm_and_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:145,1
    - Dst: _mm_xor_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:145,1
    - Dst: _mm_xor_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:145,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:146,1
    - Dst: _mm_srli_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:146,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:146,1
    - Dst: _mm_blendv_epi8
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:147,1
    - Dst: _mm_srai_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - __m128i
    - __m128i
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 148
    functionName: silk_mm_add_sat_epi32
    functionSourceFile: /src/opus/silk/x86/NSQ_del_dec_avx2.c
    functionUses: 0
    functionsReached:
    - _mm_and_si128
    - _mm_set1_epi32
    - _mm_add_epi32
    - _mm_srli_epi32
    - _mm_srai_epi32
    - _mm_xor_si128
    - _mm_blendv_epi8
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_mm_add_sat_epi32(__m128i a, __m128i b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_sub_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:151,1
    - Dst: _mm_andnot_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:152,1
    - Dst: _mm_xor_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:152,1
    - Dst: _mm_xor_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:152,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:153,1
    - Dst: _mm_srli_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:153,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:153,1
    - Dst: _mm_blendv_epi8
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:154,1
    - Dst: _mm_srai_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - __m128i
    - __m128i
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 155
    functionName: silk_mm_sub_sat_epi32
    functionSourceFile: /src/opus/silk/x86/NSQ_del_dec_avx2.c
    functionUses: 0
    functionsReached:
    - _mm_sub_epi32
    - _mm_set1_epi32
    - _mm_add_epi32
    - _mm_srli_epi32
    - _mm_srai_epi32
    - _mm_xor_si128
    - _mm_blendv_epi8
    - _mm_andnot_si128
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_mm_sub_sat_epi32(__m128i a, __m128i b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm256_sub_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:158,1
    - Dst: _mm256_andnot_si256
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:159,1
    - Dst: _mm256_xor_si256
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:159,1
    - Dst: _mm256_xor_si256
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:159,1
    - Dst: _mm256_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:160,1
    - Dst: _mm256_srli_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:160,1
    - Dst: _mm256_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:160,1
    - Dst: _mm256_blendv_epi8
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:161,1
    - Dst: _mm256_srai_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - __m256i
    - __m256i
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 156
    functionDepth: 1
    functionLinenumber: 156
    functionLinenumberEnd: 162
    functionName: silk_mm256_sub_sat_epi32
    functionSourceFile: /src/opus/silk/x86/NSQ_del_dec_avx2.c
    functionUses: 0
    functionsReached:
    - _mm256_srai_epi32
    - _mm256_sub_epi32
    - _mm256_add_epi32
    - _mm256_blendv_epi8
    - _mm256_srli_epi32
    - _mm256_set1_epi32
    - _mm256_andnot_si256
    - _mm256_xor_si256
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_mm256_sub_sat_epi32(__m256i a, __m256i b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_min_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:169,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:169,1
    - Dst: _mm_max_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:170,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - num
    - limit1
    - limit2
    argTypes:
    - __m128i
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 172
    functionName: silk_mm_limit_epi32
    functionSourceFile: /src/opus/silk/x86/NSQ_del_dec_avx2.c
    functionUses: 0
    functionsReached:
    - _mm_min_epi32
    - _mm_max_epi32
    - _mm_set1_epi32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_mm_limit_epi32(__m128i num, opus_int32 limit1, opus_int32
      limit2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_sign_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:177,1
    - Dst: _mm_or_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:177,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:177,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - num
    - cond
    argTypes:
    - __m128i
    - __m128i
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 178
    functionName: silk_mm_sign_epi32
    functionSourceFile: /src/opus/silk/x86/NSQ_del_dec_avx2.c
    functionUses: 0
    functionsReached:
    - _mm_or_si128
    - _mm_set1_epi32
    - _mm_sign_epi32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_mm_sign_epi32(__m128i num, __m128i cond)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm256_sign_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:181,1
    - Dst: _mm256_or_si256
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:181,1
    - Dst: _mm256_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - num
    - cond
    argTypes:
    - __m256i
    - __m256i
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 179
    functionDepth: 1
    functionLinenumber: 179
    functionLinenumberEnd: 182
    functionName: silk_mm256_sign_epi32
    functionSourceFile: /src/opus/silk/x86/NSQ_del_dec_avx2.c
    functionUses: 0
    functionsReached:
    - _mm256_sign_epi32
    - _mm256_or_si256
    - _mm256_set1_epi32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_mm256_sign_epi32(__m256i num, __m256i cond)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_cvtepi64_epi32_high
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:187,1
    - Dst: _mm256_slli_epi64
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:187,1
    - Dst: _mm256_mul_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:187,1
    - Dst: _mm256_cvtepi32_epi64
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:187,1
    - Dst: _mm256_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:187,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - __m128i
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 185
    functionDepth: 1
    functionLinenumber: 185
    functionLinenumberEnd: 188
    functionName: silk_mm_smulww_epi32
    functionSourceFile: /src/opus/silk/x86/NSQ_del_dec_avx2.c
    functionUses: 0
    functionsReached:
    - silk_cvtepi64_epi32_high
    - _mm256_mul_epi32
    - _mm256_set1_epi32
    - _mm256_slli_epi64
    - _mm256_cvtepi32_epi64
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_mm_smulww_epi32(__m128i a, opus_int32 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_cvtepi64_epi32_high
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:193,1
    - Dst: _mm256_mul_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:193,1
    - Dst: _mm256_cvtepi32_epi64
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:193,1
    - Dst: _mm256_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - __m128i
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 191
    functionDepth: 1
    functionLinenumber: 191
    functionLinenumberEnd: 194
    functionName: silk_mm_smulwb_epi32
    functionSourceFile: /src/opus/silk/x86/NSQ_del_dec_avx2.c
    functionUses: 0
    functionsReached:
    - silk_cvtepi64_epi32_high
    - _mm256_mul_epi32
    - _mm256_cvtepi32_epi64
    - _mm256_set1_epi32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_mm_smulwb_epi32(__m128i a, opus_int32 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm256_set_epi8
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:200,1
    - Dst: _mm256_mullo_epi16
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:203,1
    - Dst: _mm256_mulhi_epi16
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:204,1
    - Dst: _mm256_shuffle_epi8
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:205,1
    - Dst: _mm256_shuffle_epi8
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:206,1
    - Dst: _mm256_unpacklo_epi16
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:207,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - __m256i
    - __m256i
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 208
    functionName: silk_mm256_smulbb_epi32
    functionSourceFile: /src/opus/silk/x86/NSQ_del_dec_avx2.c
    functionUses: 0
    functionsReached:
    - _mm256_mulhi_epi16
    - _mm256_shuffle_epi8
    - _mm256_mullo_epi16
    - _mm256_set_epi8
    - _mm256_unpacklo_epi16
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_mm256_smulbb_epi32(__m256i a, __m256i b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm256_shuffle_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:212,1
    - Dst: _mm256_permute4x64_epi64
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:213,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - v
    argTypes:
    - __m256i
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 215
    functionName: silk_mm256_reverse_epi32
    functionSourceFile: /src/opus/silk/x86/NSQ_del_dec_avx2.c
    functionUses: 0
    functionsReached:
    - _mm256_permute4x64_epi64
    - _mm256_shuffle_epi32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_mm256_reverse_epi32(__m256i v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:219,1
    - Dst: _mm256_extracti128_si256
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:219,1
    - Dst: _mm256_extracti128_si256
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:219,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:220,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:220,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:221,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:221,1
    - Dst: _mm_cvtsi128_si32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:222,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - v
    argTypes:
    - __m256i
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 223
    functionName: silk_mm256_hsum_epi32
    functionSourceFile: /src/opus/silk/x86/NSQ_del_dec_avx2.c
    functionUses: 0
    functionsReached:
    - _mm_shuffle_epi32
    - _mm256_extracti128_si256
    - _mm_add_epi32
    - _mm_cvtsi128_si32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_mm256_hsum_epi32(__m256i v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_min_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:227,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:227,1
    - Dst: _mm_min_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:228,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:228,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - num
    argTypes:
    - __m128i
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 230
    functionName: silk_mm_hmin_epi32
    functionSourceFile: /src/opus/silk/x86/NSQ_del_dec_avx2.c
    functionUses: 0
    functionsReached:
    - _mm_shuffle_epi32
    - _mm_min_epi32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_mm_hmin_epi32(__m128i num)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_max_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:234,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:234,1
    - Dst: _mm_max_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:235,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:235,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - num
    argTypes:
    - __m128i
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 232
    functionDepth: 0
    functionLinenumber: 232
    functionLinenumberEnd: 237
    functionName: silk_mm_hmax_epi32
    functionSourceFile: /src/opus/silk/x86/NSQ_del_dec_avx2.c
    functionUses: 0
    functionsReached:
    - _mm_shuffle_epi32
    - _mm_max_epi32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_mm_hmax_epi32(__m128i num)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_blendv_epi8
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:241,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:241,1
    - Dst: silk_mm_hmin_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:242,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - num
    - mask
    argTypes:
    - __m128i
    - __m128i
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 239
    functionDepth: 1
    functionLinenumber: 239
    functionLinenumberEnd: 243
    functionName: silk_mm_mask_hmin_epi32
    functionSourceFile: /src/opus/silk/x86/NSQ_del_dec_avx2.c
    functionUses: 0
    functionsReached:
    - _mm_set1_epi32
    - _mm_blendv_epi8
    - silk_mm_hmin_epi32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_mm_mask_hmin_epi32(__m128i num, __m128i mask)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_blendv_epi8
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:247,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:247,1
    - Dst: silk_mm_hmax_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:248,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - num
    - mask
    argTypes:
    - __m128i
    - __m128i
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 245
    functionDepth: 1
    functionLinenumber: 245
    functionLinenumberEnd: 249
    functionName: silk_mm_mask_hmax_epi32
    functionSourceFile: /src/opus/silk/x86/NSQ_del_dec_avx2.c
    functionUses: 0
    functionsReached:
    - _mm_set1_epi32
    - _mm_blendv_epi8
    - silk_mm_hmax_epi32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_mm_mask_hmax_epi32(__m128i num, __m128i mask)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_mullo_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:253,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:253,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:254,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:254,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - seed
    argTypes:
    - __m128i
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 251
    functionDepth: 0
    functionLinenumber: 251
    functionLinenumberEnd: 256
    functionName: silk_mm256_rand_epi32
    functionSourceFile: /src/opus/silk/x86/NSQ_del_dec_avx2.c
    functionUses: 0
    functionsReached:
    - _mm_mullo_epi32
    - _mm_add_epi32
    - _mm_set1_epi32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_mm256_rand_epi32(__m128i seed)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_movemask_epi8
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:260,1
    - Dst: _mm_cmpeq_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:260,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:261,1
    - Dst: __builtin_ctz
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:262,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - __m128i
    - __m128i
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 258
    functionDepth: 1
    functionLinenumber: 258
    functionLinenumberEnd: 263
    functionName: silk_index_of_first_equal_epi32
    functionSourceFile: /src/opus/silk/x86/NSQ_del_dec_avx2.c
    functionUses: 0
    functionsReached:
    - __builtin_ctz
    - silk_assert
    - _mm_movemask_epi8
    - _mm_cmpeq_epi32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_index_of_first_equal_epi32(__m128i a, __m128i b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:267,1
    - Dst: _mm_set_epi8
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:269,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - index
    argTypes:
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 265
    functionDepth: 1
    functionLinenumber: 265
    functionLinenumberEnd: 274
    functionName: silk_index_to_selector
    functionSourceFile: /src/opus/silk/x86/NSQ_del_dec_avx2.c
    functionUses: 0
    functionsReached:
    - _mm_set_epi8
    - silk_assert
    linkageType: ''
    returnType: __m128i
    signature: __m128i silk_index_to_selector(opus_int32 index)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_cvtsi128_si32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:278,1
    - Dst: _mm_shuffle_epi8
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:278,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - num
    - selector
    argTypes:
    - __m128i
    - __m128i
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 276
    functionDepth: 0
    functionLinenumber: 276
    functionLinenumberEnd: 279
    functionName: silk_select_winner
    functionSourceFile: /src/opus/silk/x86/NSQ_del_dec_avx2.c
    functionUses: 0
    functionsReached:
    - _mm_cvtsi128_si32
    - _mm_shuffle_epi8
    linkageType: ''
    returnType: opus_int32
    signature: opus_int32 silk_select_winner(__m128i num, __m128i selector)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: silk_memcpy
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:388,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:389,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:390,1
    - Dst: silk_NSQ_del_dec_c
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:391,1
    - Dst: verify_assumptions
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:395,1
    - Dst: silk_NSQ_del_dec_c
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:397,1
    - Dst: VARDECL
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:405,1
    - Dst: VARDECL
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:406,1
    - Dst: _mm_cvtepi8_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:417,1
    - Dst: _mm_cvtsi32_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:417,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:422,1
    - Dst: _mm_and_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:423,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:424,1
    - Dst: _mm_set_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:424,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:424,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:425,1
    - Dst: _mm_setzero_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:427,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:428,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:429,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:430,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:433,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:437,1
    - Dst: silk_min_int
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:443,1
    - Dst: silk_min_int
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:450,1
    - Dst: silk_min_int
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:457,1
    - Dst: ALLOC
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:470,1
    - Dst: ALLOC
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:471,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:484,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:485,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:486,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:486,1
    - Dst: silk_mm_mask_hmin_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:501,1
    - Dst: silk_index_of_first_equal_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:502,1
    - Dst: silk_index_to_selector
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:503,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:504,1
    - Dst: _mm_blendv_epi8
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:506,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:507,1
    - Dst: _mm_setzero_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:508,1
    - Dst: _mm_cvtepi8_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:509,1
    - Dst: _mm_cvtsi32_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:509,1
    - Dst: silk_sar_round_32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:518,1
    - Dst: silk_select_winner
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:518,1
    - Dst: silk_sat16
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:520,1
    - Dst: silk_sar_round_smulww
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:520,1
    - Dst: silk_select_winner
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:520,1
    - Dst: silk_select_winner
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:522,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:530,1
    - Dst: silk_LPC_analysis_filter_avx2
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:532,1
    - Dst: silk_nsq_del_dec_scale_states_avx2
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:540,1
    - Dst: silk_noise_shape_quantizer_del_dec_avx2
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:543,1
    - Dst: silk_mm_mask_hmin_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:554,1
    - Dst: silk_index_to_selector
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:555,1
    - Dst: silk_index_of_first_equal_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:555,1
    - Dst: silk_select_winner
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:558,1
    - Dst: silk_sar_round_32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:567,1
    - Dst: silk_select_winner
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:567,1
    - Dst: silk_sat16
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:569,1
    - Dst: silk_sar_round_smulww
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:569,1
    - Dst: silk_select_winner
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:569,1
    - Dst: silk_select_winner
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:571,1
    - Dst: silk_select_winner
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:575,1
    - Dst: silk_select_winner
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:579,1
    - Dst: silk_select_winner
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:583,1
    - Dst: silk_select_winner
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:584,1
    - Dst: silk_memmove
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:588,1
    - Dst: silk_memmove
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:589,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:592,1
    - Dst: memcmp
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:592,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:593,1
    - Dst: memcmp
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:593,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:594,1
    - Dst: memcmp
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:594,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 116
    argCount: 15
    argNames:
    - psEncC
    - NSQ
    - psIndices
    - x16
    - pulses
    - PredCoef_Q12
    - LTPCoef_Q14
    - AR_Q13
    - HarmShapeGain_Q14
    - Tilt_Q14
    - LF_shp_Q14
    - Gains_Q16
    - pitchL
    - Lambda_Q10
    - LTP_scale_Q14
    argTypes:
    - silk_encoder_state*
    - silk_nsq_state*
    - SideInfoIndices*
    - opus_int16[]
    - opus_int8[]
    - opus_int16*
    - opus_int16[]
    - opus_int16[]
    - opus_int[]
    - opus_int[]
    - opus_int32[]
    - opus_int32[]
    - opus_int32[]
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 598
      start: 364
    functionDepth: 2
    functionLinenumber: 364
    functionLinenumberEnd: 598
    functionName: silk_NSQ_del_dec_avx2
    functionSourceFile: /src/opus/silk/x86/NSQ_del_dec_avx2.c
    functionUses: 0
    functionsReached:
    - _mm_set_epi32
    - silk_sar_round_smulww
    - silk_sar_round_32
    - silk_index_of_first_equal_epi32
    - silk_index_to_selector
    - silk_noise_shape_quantizer_del_dec_avx2
    - silk_NSQ_del_dec_c
    - silk_sat16
    - silk_nsq_del_dec_scale_states_avx2
    - silk_assert
    - silk_RSHIFT
    - silk_mm_mask_hmin_epi32
    - VARDECL
    - ALLOC
    - silk_select_winner
    - verify_assumptions
    - silk_LSHIFT
    - _mm_add_epi32
    - silk_memmove
    - _mm_setzero_si128
    - silk_memcpy
    - silk_LPC_analysis_filter_avx2
    - memcmp
    - _mm_and_si128
    - _mm_set1_epi32
    - _mm_blendv_epi8
    - _mm_cvtepi8_epi32
    - silk_min_int
    - _mm_cvtsi32_si128
    linkageType: ''
    returnType: void
    signature: "void silk_NSQ_del_dec_avx2(\n    const silk_encoder_state *psEncC,
      \                           /* I    Encoder State               */\n    silk_nsq_state
      *NSQ,                                         /* I/O  NSQ state                   */\n
      \   SideInfoIndices *psIndices,                                  /* I/O  Quantization
      Indices        */\n    const opus_int16 x16[],                                      /*
      I    Input                       */\n    opus_int8 pulses[],                                          /*
      O    Quantized pulse signal      */\n    const opus_int16 *PredCoef_Q12,                              /*
      I    Short term prediction coefs */\n    const opus_int16 LTPCoef_Q14[LTP_ORDER
      * MAX_NB_SUBFR],      /* I    Long term prediction coefs  */\n    const opus_int16
      AR_Q13[MAX_NB_SUBFR * MAX_SHAPE_LPC_ORDER], /* I    Noise shaping coefs         */\n
      \   const opus_int HarmShapeGain_Q14[MAX_NB_SUBFR],              /* I    Long
      term shaping coefs     */\n    const opus_int Tilt_Q14[MAX_NB_SUBFR],                       /*
      I    Spectral tilt               */\n    const opus_int32 LF_shp_Q14[MAX_NB_SUBFR],
      \                  /* I    Low frequency shaping coefs */\n    const opus_int32
      Gains_Q16[MAX_NB_SUBFR],                    /* I    Quantization step sizes
      \    */\n    const opus_int32 pitchL[MAX_NB_SUBFR],                       /*
      I    Pitch lags                  */\n    const opus_int Lambda_Q10,                                   /*
      I    Rate/distortion tradeoff    */\n    const opus_int LTP_scale_Q14                                 /*
      I    LTP state scaling           */\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:603,1
    - Dst: _mm256_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:606,1
    - Dst: _mm256_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:607,1
    - Dst: _mm256_mul_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:607,1
    - Dst: _mm256_cvtepi32_epi64
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:607,1
    - Dst: _mm256_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:607,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:607,1
    - Dst: _mm256_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:608,1
    - Dst: _mm256_mul_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:608,1
    - Dst: _mm256_cvtepi32_epi64
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:608,1
    - Dst: _mm256_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:608,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:608,1
    - Dst: _mm256_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:609,1
    - Dst: _mm256_mul_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:609,1
    - Dst: _mm256_cvtepi32_epi64
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:609,1
    - Dst: _mm256_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:609,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:609,1
    - Dst: _mm256_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:610,1
    - Dst: _mm256_mul_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:610,1
    - Dst: _mm256_cvtepi32_epi64
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:610,1
    - Dst: _mm256_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:610,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:610,1
    - Dst: _mm256_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:611,1
    - Dst: _mm256_mul_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:611,1
    - Dst: _mm256_cvtepi32_epi64
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:611,1
    - Dst: _mm256_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:611,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:611,1
    - Dst: _mm256_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:612,1
    - Dst: _mm256_mul_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:612,1
    - Dst: _mm256_cvtepi32_epi64
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:612,1
    - Dst: _mm256_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:612,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:612,1
    - Dst: _mm256_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:613,1
    - Dst: _mm256_mul_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:613,1
    - Dst: _mm256_cvtepi32_epi64
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:613,1
    - Dst: _mm256_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:613,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:613,1
    - Dst: _mm256_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:614,1
    - Dst: _mm256_mul_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:614,1
    - Dst: _mm256_cvtepi32_epi64
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:614,1
    - Dst: _mm256_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:614,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:614,1
    - Dst: _mm256_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:615,1
    - Dst: _mm256_mul_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:615,1
    - Dst: _mm256_cvtepi32_epi64
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:615,1
    - Dst: _mm256_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:615,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:615,1
    - Dst: _mm256_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:616,1
    - Dst: _mm256_mul_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:616,1
    - Dst: _mm256_cvtepi32_epi64
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:616,1
    - Dst: _mm256_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:616,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:616,1
    - Dst: _mm256_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:620,1
    - Dst: _mm256_mul_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:620,1
    - Dst: _mm256_cvtepi32_epi64
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:620,1
    - Dst: _mm256_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:620,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:620,1
    - Dst: _mm256_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:621,1
    - Dst: _mm256_mul_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:621,1
    - Dst: _mm256_cvtepi32_epi64
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:621,1
    - Dst: _mm256_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:621,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:621,1
    - Dst: _mm256_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:622,1
    - Dst: _mm256_mul_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:622,1
    - Dst: _mm256_cvtepi32_epi64
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:622,1
    - Dst: _mm256_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:622,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:622,1
    - Dst: _mm256_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:623,1
    - Dst: _mm256_mul_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:623,1
    - Dst: _mm256_cvtepi32_epi64
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:623,1
    - Dst: _mm256_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:623,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:623,1
    - Dst: _mm256_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:624,1
    - Dst: _mm256_mul_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:624,1
    - Dst: _mm256_cvtepi32_epi64
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:624,1
    - Dst: _mm256_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:624,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:624,1
    - Dst: _mm256_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:625,1
    - Dst: _mm256_mul_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:625,1
    - Dst: _mm256_cvtepi32_epi64
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:625,1
    - Dst: _mm256_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:625,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:625,1
    - Dst: silk_cvtepi64_epi32_high
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:627,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 3
    argNames:
    - buf32
    - coef16
    - order
    argTypes:
    - __m128i*
    - opus_int16*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 628
      start: 600
    functionDepth: 1
    functionLinenumber: 600
    functionLinenumberEnd: 628
    functionName: silk_noise_shape_quantizer_short_prediction_x4
    functionSourceFile: /src/opus/silk/x86/NSQ_del_dec_avx2.c
    functionUses: 0
    functionsReached:
    - silk_LSHIFT
    - silk_cvtepi64_epi32_high
    - _mm256_mul_epi32
    - _mm256_add_epi32
    - silk_assert
    - _mm256_set1_epi32
    - _mm256_cvtepi32_epi64
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_noise_shape_quantizer_short_prediction_x4(const __m128i
      *buf32, const opus_int16 *coef16, opus_int order)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: silk_SMULWB
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:700,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:701,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:702,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:703,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:704,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:705,1
    - Dst: silk_add_sat32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:717,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:718,1
    - Dst: silk_SMULWT
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:719,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:720,1
    - Dst: silk_mm256_rand_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:731,1
    - Dst: silk_noise_shape_quantizer_short_prediction_x4
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:734,1
    - Dst: _mm_slli_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:735,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:738,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:739,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:741,1
    - Dst: silk_mm_smulwb_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:741,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:742,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:748,1
    - Dst: silk_mm_smulwb_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:748,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:749,1
    - Dst: silk_mm_smulwb_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:749,1
    - Dst: _mm_sub_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:749,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:752,1
    - Dst: silk_mm_smulwb_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:752,1
    - Dst: _mm_slli_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:754,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:755,1
    - Dst: silk_mm_smulwb_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:755,1
    - Dst: _mm_slli_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:756,1
    - Dst: silk_mm_smulwb_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:758,1
    - Dst: silk_mm_smulwb_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:759,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:760,1
    - Dst: _mm_slli_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:761,1
    - Dst: silk_mm_add_sat_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:765,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:766,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:766,1
    - Dst: silk_mm_sub_sat_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:767,1
    - Dst: silk_mm_srai_round_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:768,1
    - Dst: _mm_sub_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:770,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:770,1
    - Dst: silk_mm_sign_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:773,1
    - Dst: silk_mm_limit_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:774,1
    - Dst: _mm_sub_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:777,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:777,1
    - Dst: _mm_srai_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:778,1
    - Dst: _mm_sub_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:782,1
    - Dst: _mm_abs_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:782,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:782,1
    - Dst: _mm_srai_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:783,1
    - Dst: _mm_cmpgt_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:784,1
    - Dst: _mm_setzero_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:784,1
    - Dst: _mm_srai_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:785,1
    - Dst: silk_mm_sign_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:785,1
    - Dst: _mm_blendv_epi8
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:786,1
    - Dst: _mm_sign_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:789,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:789,1
    - Dst: _mm_sub_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:790,1
    - Dst: _mm_slli_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:790,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:791,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:791,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:794,1
    - Dst: _mm_srli_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:794,1
    - Dst: _mm_cmpeq_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:795,1
    - Dst: _mm_setzero_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:795,1
    - Dst: _mm_blendv_epi8
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:796,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:796,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:796,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:797,1
    - Dst: _mm256_set_m128i
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:798,1
    - Dst: _mm256_sub_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:800,1
    - Dst: _mm256_broadcastsi128_si256
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:800,1
    - Dst: _mm256_abs_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:801,1
    - Dst: silk_mm256_smulbb_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:802,1
    - Dst: silk_mm256_smulbb_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:803,1
    - Dst: _mm256_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:803,1
    - Dst: _mm256_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:804,1
    - Dst: _mm256_srai_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:805,1
    - Dst: _mm256_broadcastsi128_si256
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:807,1
    - Dst: _mm_cmplt_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:807,1
    - Dst: _mm256_extracti128_si256
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:807,1
    - Dst: _mm256_extracti128_si256
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:807,1
    - Dst: _mm256_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:808,1
    - Dst: _mm256_broadcastsi128_si256
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:809,1
    - Dst: _mm256_blendv_epi8
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:810,1
    - Dst: _mm256_permute2x128_si256
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:811,1
    - Dst: _mm256_blendv_epi8
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:814,1
    - Dst: _mm256_permute2x128_si256
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:815,1
    - Dst: silk_mm256_sign_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:822,1
    - Dst: _mm256_slli_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:822,1
    - Dst: _mm256_broadcastsi128_si256
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:822,1
    - Dst: _mm256_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:825,1
    - Dst: _mm256_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:825,1
    - Dst: _mm256_slli_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:826,1
    - Dst: _mm256_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:827,1
    - Dst: _mm256_broadcastsi128_si256
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:827,1
    - Dst: _mm256_sub_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:830,1
    - Dst: _mm256_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:830,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:830,1
    - Dst: _mm256_sub_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:831,1
    - Dst: _mm256_broadcastsi128_si256
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:831,1
    - Dst: silk_mm256_sub_sat_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:832,1
    - Dst: _mm256_broadcastsi128_si256
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:832,1
    - Dst: silk_mm_mask_hmin_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:841,1
    - Dst: _mm256_castsi256_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:841,1
    - Dst: silk_index_to_selector
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:842,1
    - Dst: silk_index_of_first_equal_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:842,1
    - Dst: _mm256_castsi256_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:842,1
    - Dst: _mm_shuffle_epi8
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:845,1
    - Dst: _mm256_blendv_epi8
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:847,1
    - Dst: _mm256_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:848,1
    - Dst: _mm256_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:848,1
    - Dst: _mm256_broadcastsi128_si256
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:850,1
    - Dst: _mm_cmpeq_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:850,1
    - Dst: silk_mm_mask_hmax_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:853,1
    - Dst: _mm256_extracti128_si256
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:853,1
    - Dst: silk_mm_mask_hmin_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:855,1
    - Dst: _mm256_extracti128_si256
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:855,1
    - Dst: _mm_cmplt_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:858,1
    - Dst: _mm_test_all_zeros
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:859,1
    - Dst: silk_index_of_first_equal_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:862,1
    - Dst: _mm256_extracti128_si256
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:862,1
    - Dst: silk_index_of_first_equal_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:863,1
    - Dst: _mm256_extracti128_si256
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:863,1
    - Dst: _mm_cvtepi8_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:864,1
    - Dst: _mm_cvtsi32_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:864,1
    - Dst: _mm_blendv_epi8
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:865,1
    - Dst: _mm_set_epi8
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:866,1
    - Dst: silk_index_to_selector
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:867,1
    - Dst: _mm_shuffle_epi8
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:871,1
    - Dst: _mm_shuffle_epi8
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:873,1
    - Dst: _mm_shuffle_epi8
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:874,1
    - Dst: _mm_shuffle_epi8
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:877,1
    - Dst: _mm_shuffle_epi8
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:881,1
    - Dst: _mm_shuffle_epi8
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:882,1
    - Dst: _mm_shuffle_epi8
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:883,1
    - Dst: _mm_shuffle_epi8
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:884,1
    - Dst: _mm_shuffle_epi8
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:885,1
    - Dst: _mm256_castsi128_si256
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:887,1
    - Dst: _mm_blendv_epi8
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:887,1
    - Dst: _mm_set_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:887,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:887,1
    - Dst: _mm256_permutevar8x32_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:888,1
    - Dst: _mm256_permutevar8x32_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:889,1
    - Dst: _mm256_permutevar8x32_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:890,1
    - Dst: _mm256_permutevar8x32_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:891,1
    - Dst: _mm256_permutevar8x32_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:892,1
    - Dst: _mm256_permutevar8x32_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:893,1
    - Dst: _mm256_permutevar8x32_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:894,1
    - Dst: silk_sar_round_32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:901,1
    - Dst: silk_select_winner
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:901,1
    - Dst: silk_sat16
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:903,1
    - Dst: silk_sar_round_smulww
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:903,1
    - Dst: silk_select_winner
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:903,1
    - Dst: silk_select_winner
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:905,1
    - Dst: silk_select_winner
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:907,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:914,1
    - Dst: silk_mm_srai_round_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:914,1
    - Dst: _mm256_castsi256_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:914,1
    - Dst: _mm256_castsi256_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:915,1
    - Dst: _mm256_castsi256_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:916,1
    - Dst: _mm256_castsi256_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:917,1
    - Dst: _mm256_castsi256_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:918,1
    - Dst: _mm256_castsi256_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:919,1
    - Dst: _mm256_castsi256_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:920,1
    - Dst: _mm256_castsi256_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:921,1
    - Dst: _mm256_castsi256_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:922,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 148
    argCount: 26
    argNames:
    - NSQ
    - psDelDec
    - signalType
    - x_Q10
    - pulses
    - xq
    - sLTP_Q15
    - delayedGain_Q10
    - a_Q12
    - b_Q14
    - AR_shp_Q13
    - lag
    - HarmShapeFIRPacked_Q14
    - Tilt_Q14
    - LF_shp_Q14
    - Gain_Q16
    - Lambda_Q10
    - offset_Q10
    - length
    - subfr
    - shapingLPCOrder
    - predictLPCOrder
    - warping_Q16
    - MaskDelDec
    - smpl_buf_idx
    - decisionDelay
    argTypes:
    - silk_nsq_state*
    - NSQ_del_dec_struct*
    - opus_int
    - opus_int32[]
    - opus_int8[]
    - opus_int16[]
    - opus_int32[]
    - opus_int32[]
    - opus_int16[]
    - opus_int16[]
    - opus_int16[]
    - opus_int
    - opus_int32
    - opus_int
    - opus_int32
    - opus_int32
    - opus_int
    - opus_int
    - opus_int
    - opus_int
    - opus_int
    - opus_int
    - opus_int
    - __m128i
    - opus_int*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 931
      start: 633
    functionDepth: 2
    functionLinenumber: 633
    functionLinenumberEnd: 931
    functionName: silk_noise_shape_quantizer_del_dec_avx2
    functionSourceFile: /src/opus/silk/x86/NSQ_del_dec_avx2.c
    functionUses: 1
    functionsReached:
    - _mm256_castsi256_si128
    - silk_mm_limit_epi32
    - _mm_sub_epi32
    - _mm_abs_epi32
    - silk_SMULWB
    - _mm256_add_epi32
    - _mm_set_epi32
    - silk_sar_round_32
    - silk_sar_round_smulww
    - silk_index_of_first_equal_epi32
    - _mm256_set1_epi32
    - silk_index_to_selector
    - _mm256_abs_epi32
    - silk_mm_sub_sat_epi32
    - _mm_test_all_zeros
    - _mm_shuffle_epi8
    - silk_sat16
    - silk_mm_srai_round_epi32
    - _mm_sign_epi32
    - _mm_set_epi8
    - silk_assert
    - _mm256_set_m128i
    - silk_mm_mask_hmin_epi32
    - _mm_slli_epi32
    - silk_mm_sign_epi32
    - silk_select_winner
    - _mm256_permute2x128_si256
    - silk_mm_mask_hmax_epi32
    - _mm256_broadcastsi128_si256
    - _mm256_srai_epi32
    - silk_add_sat32
    - silk_LSHIFT
    - _mm_add_epi32
    - _mm256_permutevar8x32_epi32
    - _mm256_slli_epi32
    - _mm_setzero_si128
    - silk_mm256_smulbb_epi32
    - silk_mm256_sign_epi32
    - _mm256_castsi128_si256
    - _mm_cmpeq_epi32
    - silk_mm_add_sat_epi32
    - silk_noise_shape_quantizer_short_prediction_x4
    - silk_mm256_sub_sat_epi32
    - silk_mm256_rand_epi32
    - silk_mm_smulwb_epi32
    - _mm256_extracti128_si256
    - _mm256_sub_epi32
    - silk_SMULWT
    - _mm_cmpgt_epi32
    - _mm_set1_epi32
    - _mm_srli_epi32
    - _mm256_blendv_epi8
    - _mm_srai_epi32
    - _mm_blendv_epi8
    - _mm_cvtepi8_epi32
    - _mm_cmplt_epi32
    - _mm_cvtsi32_si128
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_noise_shape_quantizer_del_dec_avx2(\n    silk_nsq_state
      *NSQ,                        /* I/O  NSQ state                          */\n
      \   NSQ_del_dec_struct *psDelDec,               /* I/O  Delayed decision states
      \           */\n    opus_int signalType,                        /* I    Signal
      type                        */\n    const opus_int32 x_Q10[],                   /*
      I                                       */\n    opus_int8 pulses[],                         /*
      O                                       */\n    opus_int16 xq[],                            /*
      O                                       */\n    opus_int32 sLTP_Q15[],                      /*
      I/O  LTP filter state                   */\n    opus_int32 delayedGain_Q10[DECISION_DELAY],
      /* I/O  Gain delay buffer                  */\n    const opus_int16 a_Q12[],
      \                  /* I    Short term prediction coefs        */\n    const
      opus_int16 b_Q14[],                   /* I    Long term prediction coefs         */\n
      \   const opus_int16 AR_shp_Q13[],              /* I    Noise shaping coefs
      \               */\n    opus_int lag,                               /* I    Pitch
      lag                          */\n    opus_int32 HarmShapeFIRPacked_Q14,          /*
      I                                       */\n    opus_int Tilt_Q14,                          /*
      I    Spectral tilt                      */\n    opus_int32 LF_shp_Q14,                      /*
      I                                       */\n    opus_int32 Gain_Q16,                        /*
      I                                       */\n    opus_int Lambda_Q10,                        /*
      I                                       */\n    opus_int offset_Q10,                        /*
      I                                       */\n    opus_int length,                            /*
      I    Input length                       */\n    opus_int subfr,                             /*
      I    Subframe number                    */\n    opus_int shapingLPCOrder,                   /*
      I    Shaping LPC filter order           */\n    opus_int predictLPCOrder,                   /*
      I    Prediction filter order            */\n    opus_int warping_Q16,                       /*
      I                                       */\n    __m128i MaskDelDec,                         /*
      I    Mask of states in decision tree    */\n    opus_int *smpl_buf_idx,                     /*
      I/O  Index to newest samples in buffers */\n    opus_int decisionDelay                      /*
      I                                       */\n)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: silk_INVERSE32_varQ
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:955,1
    - Dst: silk_max
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:955,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:956,1
    - Dst: silk_sar_round_32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:959,1
    - Dst: _mm256_cvtepi16_epi64
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:962,1
    - Dst: _mm_loadu_si64
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:962,1
    - Dst: _mm256_slli_epi64
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:963,1
    - Dst: _mm256_mul_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:963,1
    - Dst: _mm256_set1_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:963,1
    - Dst: _mm_storeu_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:964,1
    - Dst: silk_cvtepi64_epi32_high
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:964,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:973,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:973,1
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:977,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:978,1
    - Dst: silk_DIV32_varQ
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:985,1
    - Dst: _mm_storeu_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:991,1
    - Dst: silk_mm_smulww_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:991,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:991,1
    - Dst: silk_mm_smulww_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:1004,1
    - Dst: silk_mm_smulww_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:1005,1
    - Dst: silk_mm_smulww_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:1010,1
    - Dst: silk_mm_smulww_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:1015,1
    - Dst: silk_mm_smulww_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:1016,1
    - Dst: silk_mm_smulww_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:1020,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 43
    argCount: 13
    argNames:
    - psEncC
    - NSQ
    - psDelDec
    - x16
    - x_sc_Q10
    - sLTP
    - sLTP_Q15
    - subfr
    - LTP_scale_Q14
    - Gains_Q16
    - pitchL
    - signal_type
    - decisionDelay
    argTypes:
    - silk_encoder_state*
    - silk_nsq_state*
    - NSQ_del_dec_struct*
    - opus_int16[]
    - opus_int32[]
    - opus_int16[]
    - opus_int32[]
    - opus_int
    - opus_int
    - opus_int32[]
    - opus_int[]
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1026
      start: 933
    functionDepth: 2
    functionLinenumber: 933
    functionLinenumberEnd: 1026
    functionName: silk_nsq_del_dec_scale_states_avx2
    functionSourceFile: /src/opus/silk/x86/NSQ_del_dec_avx2.c
    functionUses: 1
    functionsReached:
    - _mm_loadu_si64
    - _mm_storeu_si128
    - silk_DIV32_varQ
    - silk_LSHIFT
    - silk_cvtepi64_epi32_high
    - _mm256_mul_epi32
    - silk_assert
    - silk_SMULWB
    - silk_sar_round_32
    - silk_mm_smulww_epi32
    - _mm256_cvtepi16_epi64
    - _mm_loadu_si128
    - _mm256_set1_epi32
    - _mm256_slli_epi64
    - silk_INVERSE32_varQ
    - silk_max
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_nsq_del_dec_scale_states_avx2(\n    const silk_encoder_state
      *psEncC,          /* I    Encoder State                   */\n    silk_nsq_state
      *NSQ,                       /* I/O  NSQ state                       */\n    NSQ_del_dec_struct
      *psDelDec,              /* I/O  Delayed decision states         */\n    const
      opus_int16 x16[],                    /* I    Input                           */\n
      \   opus_int32 x_sc_Q10[MAX_SUB_FRAME_LENGTH], /* O    Input scaled with 1/Gain
      in Q10 */\n    const opus_int16 sLTP[],                   /* I    Re-whitened
      LTP state in Q0     */\n    opus_int32 sLTP_Q15[],                     /* O
      \   LTP state matching scaled input */\n    opus_int subfr,                            /*
      I    Subframe number                 */\n    const opus_int LTP_scale_Q14,              /*
      I    LTP state scaling               */\n    const opus_int32 Gains_Q16[MAX_NB_SUBFR],
      \ /* I                                    */\n    const opus_int pitchL[MAX_NB_SUBFR],
      \      /* I    Pitch lag                       */\n    const opus_int signal_type,
      \               /* I    Signal type                     */\n    const opus_int
      decisionDelay               /* I    Decision delay                  */\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: silk_assert
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:1038,1
    - Dst: _mm256_cvtepi16_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:1046,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:1046,1
    - Dst: _mm256_cvtepi16_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:1047,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:1047,1
    - Dst: _mm256_mullo_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:1048,1
    - Dst: silk_mm256_reverse_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:1048,1
    - Dst: _mm256_cvtepi16_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:1051,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:1051,1
    - Dst: _mm256_cvtepi16_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:1052,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:1052,1
    - Dst: silk_mm256_reverse_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:1053,1
    - Dst: _mm256_cvtepi16_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:1057,1
    - Dst: _mm_loadu_si32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:1057,1
    - Dst: _mm256_cvtepi16_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:1058,1
    - Dst: _mm_loadu_si32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:1058,1
    - Dst: _mm256_shuffle_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:1059,1
    - Dst: _mm256_add_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:1061,1
    - Dst: _mm256_mullo_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:1061,1
    - Dst: silk_mm256_hsum_epi32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:1063,1
    - Dst: silk_SUB32_ovflw
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:1066,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:1066,1
    - Dst: silk_sar_round_32
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:1069,1
    - Dst: silk_sat16
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:1072,1
    - Dst: silk_memset
      Src: /src/opus/silk/x86/NSQ_del_dec_avx2.c:1076,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 5
    argNames:
    - out
    - in
    - B
    - len
    - order
    argTypes:
    - opus_int16*
    - opus_int16*
    - opus_int16*
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1077
      start: 1028
    functionDepth: 2
    functionLinenumber: 1028
    functionLinenumberEnd: 1077
    functionName: silk_LPC_analysis_filter_avx2
    functionSourceFile: /src/opus/silk/x86/NSQ_del_dec_avx2.c
    functionUses: 1
    functionsReached:
    - _mm256_cvtepi16_epi32
    - silk_SUB32_ovflw
    - silk_LSHIFT
    - silk_memset
    - silk_assert
    - _mm256_add_epi32
    - silk_mm256_hsum_epi32
    - silk_sar_round_32
    - _mm_loadu_si32
    - _mm_loadu_si128
    - silk_mm256_reverse_epi32
    - _mm256_mullo_epi32
    - _mm256_shuffle_epi32
    - silk_sat16
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_LPC_analysis_filter_avx2(\n    opus_int16                  *out,
      \              /* O    Output signal                           */\n    const
      opus_int16            *in,                /* I    Input signal                            */\n
      \   const opus_int16            *B,                 /* I    MA prediction coefficients,
      Q12 [order] */\n    const opus_int32            len,                /* I    Signal
      length                           */\n    const opus_int32            order               /*
      I    Filter order                            */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 19
    argNames:
    - (
    - res_nrg
    - ','
    - res_nrg_Q
    - ','
    - A_Q16
    - ','
    - x
    - ','
    - minInvGain_Q30
    - ','
    - subfr_length
    - ','
    - nb_subfr
    - ','
    - D
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: silk_burg_modified
    functionSourceFile: /src/opus/silk/x86/SigProc_FIX_sse.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_burg_modified(res_nrg, res_nrg_Q, A_Q16, x, minInvGain_Q30, subfr_length,
      nb_subfr, D, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 19
    argNames:
    - (
    - res_nrg
    - ','
    - res_nrg_Q
    - ','
    - A_Q16
    - ','
    - x
    - ','
    - minInvGain_Q30
    - ','
    - subfr_length
    - ','
    - nb_subfr
    - ','
    - D
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 70
    functionName: silk_burg_modified
    functionSourceFile: /src/opus/silk/x86/SigProc_FIX_sse.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_burg_modified(res_nrg, res_nrg_Q, A_Q16, x, minInvGain_Q30, subfr_length,
      nb_subfr, D, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - inVec1
    - ','
    - inVec2
    - ','
    - len
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionName: silk_inner_prod16
    functionSourceFile: /src/opus/silk/x86/SigProc_FIX_sse.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_inner_prod16(inVec1, inVec2, len, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - inVec1
    - ','
    - inVec2
    - ','
    - len
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionName: silk_inner_prod16
    functionSourceFile: /src/opus/silk/x86/SigProc_FIX_sse.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_inner_prod16(inVec1, inVec2, len, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/k2a_FIX.c:49,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/k2a_FIX.c:49,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/k2a_FIX.c:50,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/k2a_FIX.c:50,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/k2a_FIX.c:52,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - A_Q24
    - rc_Q15
    - order
    argTypes:
    - opus_int32*
    - opus_int16*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 54
    functionName: silk_k2a
    functionSourceFile: /src/opus/silk/fixed/k2a_FIX.c
    functionUses: 0
    functionsReached:
    - silk_SMLAWB
    - silk_LSHIFT
    linkageType: ''
    returnType: void
    signature: "void silk_k2a(\n    opus_int32                  *A_Q24,             /*
      O    Prediction coefficients [order] Q24                         */\n    const
      opus_int16            *rc_Q15,            /* I    Reflection coefficients [order]
      Q15                         */\n    const opus_int32            order               /*
      I    Prediction order                                            */\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/silk/fixed/find_pitch_lags_FIX.c:48,1
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/find_pitch_lags_FIX.c:62,1
    - Dst: ALLOC
      Src: /src/opus/silk/fixed/find_pitch_lags_FIX.c:70,1
    - Dst: silk_apply_sine_window
      Src: /src/opus/silk/fixed/find_pitch_lags_FIX.c:75,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/fixed/find_pitch_lags_FIX.c:80,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/find_pitch_lags_FIX.c:80,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/find_pitch_lags_FIX.c:83,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/find_pitch_lags_FIX.c:84,1
    - Dst: silk_apply_sine_window
      Src: /src/opus/silk/fixed/find_pitch_lags_FIX.c:85,1
    - Dst: silk_autocorr
      Src: /src/opus/silk/fixed/find_pitch_lags_FIX.c:88,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/find_pitch_lags_FIX.c:91,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/find_pitch_lags_FIX.c:91,1
    - Dst: silk_schur
      Src: /src/opus/silk/fixed/find_pitch_lags_FIX.c:94,1
    - Dst: silk_DIV32_varQ
      Src: /src/opus/silk/fixed/find_pitch_lags_FIX.c:97,1
    - Dst: silk_max_int
      Src: /src/opus/silk/fixed/find_pitch_lags_FIX.c:97,1
    - Dst: silk_k2a
      Src: /src/opus/silk/fixed/find_pitch_lags_FIX.c:100,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/fixed/find_pitch_lags_FIX.c:104,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/find_pitch_lags_FIX.c:104,1
    - Dst: silk_bwexpander
      Src: /src/opus/silk/fixed/find_pitch_lags_FIX.c:108,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/find_pitch_lags_FIX.c:108,1
    - Dst: silk_LPC_analysis_filter
      Src: /src/opus/silk/fixed/find_pitch_lags_FIX.c:113,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/find_pitch_lags_FIX.c:117,1
    - Dst: silk_SMLABB
      Src: /src/opus/silk/fixed/find_pitch_lags_FIX.c:118,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/find_pitch_lags_FIX.c:118,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/find_pitch_lags_FIX.c:119,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/find_pitch_lags_FIX.c:119,1
    - Dst: silk_SMLABB
      Src: /src/opus/silk/fixed/find_pitch_lags_FIX.c:120,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/find_pitch_lags_FIX.c:120,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/find_pitch_lags_FIX.c:120,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/find_pitch_lags_FIX.c:121,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/find_pitch_lags_FIX.c:121,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/fixed/find_pitch_lags_FIX.c:122,1
    - Dst: silk_pitch_analysis_core
      Src: /src/opus/silk/fixed/find_pitch_lags_FIX.c:127,1
    - Dst: silk_memset
      Src: /src/opus/silk/fixed/find_pitch_lags_FIX.c:137,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 44
    argCount: 5
    argNames:
    - psEnc
    - psEncCtrl
    - res
    - x
    - arch
    argTypes:
    - silk_encoder_state_FIX*
    - silk_encoder_control_FIX*
    - opus_int16[]
    - opus_int16[]
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 37
    functionDepth: 2
    functionLinenumber: 37
    functionLinenumberEnd: 143
    functionName: silk_find_pitch_lags_FIX
    functionSourceFile: /src/opus/silk/fixed/find_pitch_lags_FIX.c
    functionUses: 0
    functionsReached:
    - silk_autocorr
    - silk_SMLAWB
    - silk_DIV32_varQ
    - silk_k2a
    - silk_pitch_analysis_core
    - silk_RSHIFT
    - silk_max_int
    - silk_SAT16
    - silk_SMLABB
    - VARDECL
    - ALLOC
    - silk_apply_sine_window
    - celt_assert
    - silk_LSHIFT
    - silk_memset
    - silk_schur
    - SILK_FIX_CONST
    - silk_memcpy
    - silk_bwexpander
    - silk_LPC_analysis_filter
    linkageType: ''
    returnType: void
    signature: "void silk_find_pitch_lags_FIX(\n    silk_encoder_state_FIX          *psEnc,
      \                                /* I/O  encoder state                                                               */\n
      \   silk_encoder_control_FIX        *psEncCtrl,                             /*
      I/O  encoder control                                                             */\n
      \   opus_int16                      res[],                                  /*
      O    residual                                                                    */\n
      \   const opus_int16                x[],                                    /*
      I    Speech signal                                                               */\n
      \   int                             arch                                    /*
      I    Run-time architecture                                                       */\n)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/schur_FIX.c:46,1
    - Dst: silk_CLZ32
      Src: /src/opus/silk/fixed/schur_FIX.c:49,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/schur_FIX.c:56,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/schur_FIX.c:62,1
    - Dst: silk_abs_int32
      Src: /src/opus/silk/fixed/schur_FIX.c:73,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/schur_FIX.c:75,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/schur_FIX.c:77,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/fixed/schur_FIX.c:84,1
    - Dst: silk_max_32
      Src: /src/opus/silk/fixed/schur_FIX.c:84,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/schur_FIX.c:84,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/fixed/schur_FIX.c:87,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/schur_FIX.c:96,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/schur_FIX.c:96,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/schur_FIX.c:97,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/schur_FIX.c:97,1
    - Dst: silk_max_32
      Src: /src/opus/silk/fixed/schur_FIX.c:106,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 43
    argCount: 3
    argNames:
    - rc_Q15
    - c
    - order
    argTypes:
    - opus_int16*
    - opus_int32*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 107
    functionName: silk_schur
    functionSourceFile: /src/opus/silk/fixed/schur_FIX.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - silk_LSHIFT
    - silk_CLZ32
    - silk_RSHIFT
    - silk_max_32
    - silk_SAT16
    - silk_SMLAWB
    - SILK_FIX_CONST
    - silk_DIV32_16
    - silk_abs_int32
    linkageType: ''
    returnType: opus_int32
    signature: "opus_int32 silk_schur(                              /* O    Returns
      residual energy                                     */\n    opus_int16                  *rc_Q15,
      \           /* O    reflection coefficients [order] Q15                         */\n
      \   const opus_int32            *c,                 /* I    correlations [order+1]
      \                                     */\n    const opus_int32            order
      \              /* I    prediction order                                            */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: matrix_ptr
      Src: /src/opus/silk/fixed/regularize_correlations_FIX.c:44,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/fixed/regularize_correlations_FIX.c:44,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/fixed/regularize_correlations_FIX.c:44,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - XX
    - xx
    - noise
    - D
    argTypes:
    - opus_int32*
    - opus_int32*
    - opus_int32
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 47
    functionName: silk_regularize_correlations_FIX
    functionSourceFile: /src/opus/silk/fixed/regularize_correlations_FIX.c
    functionUses: 0
    functionsReached:
    - matrix_ptr
    - silk_ADD32
    linkageType: ''
    returnType: void
    signature: "void silk_regularize_correlations_FIX(\n    opus_int32                      *XX,
      \                                   /* I/O  Correlation matrices                                                        */\n
      \   opus_int32                      *xx,                                    /*
      I/O  Correlation values                                                          */\n
      \   opus_int32                      noise,                                  /*
      I    Noise to add                                                                */\n
      \   opus_int                        D                                       /*
      I    Dimension of XX                                                             */\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/warped_autocorrelation_FIX.c:56,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/warped_autocorrelation_FIX.c:57,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/warped_autocorrelation_FIX.c:61,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/warped_autocorrelation_FIX.c:65,1
    - Dst: silk_RSHIFT64
      Src: /src/opus/silk/fixed/warped_autocorrelation_FIX.c:67,1
    - Dst: silk_SMULL
      Src: /src/opus/silk/fixed/warped_autocorrelation_FIX.c:67,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/warped_autocorrelation_FIX.c:69,1
    - Dst: silk_RSHIFT64
      Src: /src/opus/silk/fixed/warped_autocorrelation_FIX.c:71,1
    - Dst: silk_SMULL
      Src: /src/opus/silk/fixed/warped_autocorrelation_FIX.c:71,1
    - Dst: silk_RSHIFT64
      Src: /src/opus/silk/fixed/warped_autocorrelation_FIX.c:74,1
    - Dst: silk_SMULL
      Src: /src/opus/silk/fixed/warped_autocorrelation_FIX.c:74,1
    - Dst: silk_CLZ64
      Src: /src/opus/silk/fixed/warped_autocorrelation_FIX.c:77,1
    - Dst: silk_LIMIT
      Src: /src/opus/silk/fixed/warped_autocorrelation_FIX.c:78,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/warped_autocorrelation_FIX.c:80,1
    - Dst: silk_CHECK_FIT32
      Src: /src/opus/silk/fixed/warped_autocorrelation_FIX.c:83,1
    - Dst: silk_LSHIFT64
      Src: /src/opus/silk/fixed/warped_autocorrelation_FIX.c:83,1
    - Dst: silk_CHECK_FIT32
      Src: /src/opus/silk/fixed/warped_autocorrelation_FIX.c:87,1
    - Dst: silk_RSHIFT64
      Src: /src/opus/silk/fixed/warped_autocorrelation_FIX.c:87,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/warped_autocorrelation_FIX.c:90,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 30
    argCount: 6
    argNames:
    - corr
    - scale
    - input
    - warping_Q16
    - length
    - order
    argTypes:
    - opus_int32*
    - opus_int*
    - opus_int16*
    - opus_int
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 91
    functionName: silk_warped_autocorrelation_FIX_c
    functionSourceFile: /src/opus/silk/fixed/warped_autocorrelation_FIX.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - silk_RSHIFT64
    - silk_SMULL
    - silk_LIMIT
    - silk_CHECK_FIT32
    - silk_assert
    - silk_SMLAWB
    - silk_LSHIFT64
    - silk_CLZ64
    - silk_LSHIFT32
    linkageType: ''
    returnType: void
    signature: "void silk_warped_autocorrelation_FIX_c(\n          opus_int32                *corr,
      \                                 /* O    Result [order + 1]                                                          */\n
      \         opus_int                  *scale,                                 /*
      O    Scaling of the correlation vector                                           */\n
      \   const opus_int16                *input,                                 /*
      I    Input data to correlate                                                     */\n
      \   const opus_int                  warping_Q16,                            /*
      I    Warping coefficient                                                         */\n
      \   const opus_int                  length,                                 /*
      I    Length of input                                                             */\n
      \   const opus_int                  order                                   /*
      I    Correlation order (even)                                                    */\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/apply_sine_window_FIX.c:60,1
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/apply_sine_window_FIX.c:63,1
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/apply_sine_window_FIX.c:64,1
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/apply_sine_window_FIX.c:68,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/fixed/apply_sine_window_FIX.c:72,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/apply_sine_window_FIX.c:73,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/apply_sine_window_FIX.c:80,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/apply_sine_window_FIX.c:85,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/apply_sine_window_FIX.c:85,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/fixed/apply_sine_window_FIX.c:91,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/apply_sine_window_FIX.c:91,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/fixed/apply_sine_window_FIX.c:92,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/fixed/apply_sine_window_FIX.c:93,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/apply_sine_window_FIX.c:93,1
    - Dst: silk_min
      Src: /src/opus/silk/fixed/apply_sine_window_FIX.c:94,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/fixed/apply_sine_window_FIX.c:96,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/apply_sine_window_FIX.c:96,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/fixed/apply_sine_window_FIX.c:97,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/fixed/apply_sine_window_FIX.c:98,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/apply_sine_window_FIX.c:98,1
    - Dst: silk_min
      Src: /src/opus/silk/fixed/apply_sine_window_FIX.c:99,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 4
    argNames:
    - px_win
    - px
    - win_type
    - length
    argTypes:
    - opus_int16[]
    - opus_int16[]
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 101
    functionName: silk_apply_sine_window
    functionSourceFile: /src/opus/silk/fixed/apply_sine_window_FIX.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - silk_min
    - silk_LSHIFT
    - silk_assert
    - silk_SMULWB
    - silk_RSHIFT
    linkageType: ''
    returnType: void
    signature: "void silk_apply_sine_window(\n    opus_int16                  px_win[],
      \          /* O    Pointer to windowed signal                                  */\n
      \   const opus_int16            px[],               /* I    Pointer to input
      signal                                     */\n    const opus_int              win_type,
      \          /* I    Selects a window type                                       */\n
      \   const opus_int              length              /* I    Window length, multiple
      of 4                                */\n)"
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:97,1
    - Dst: VARDECL
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:98,1
    - Dst: VARDECL
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:99,1
    - Dst: VARDECL
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:103,1
    - Dst: VARDECL
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:104,1
    - Dst: VARDECL
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:108,1
    - Dst: VARDECL
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:112,1
    - Dst: VARDECL
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:113,1
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:125,1
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:128,1
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:129,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:131,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:132,1
    - Dst: silk_sum_sqr_shift
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:143,1
    - Dst: silk_CLZ32
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:144,1
    - Dst: ALLOC
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:145,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:147,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:149,1
    - Dst: ALLOC
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:156,1
    - Dst: silk_memset
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:159,1
    - Dst: silk_resampler_down2
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:160,1
    - Dst: silk_memset
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:163,1
    - Dst: silk_resampler_down2_3
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:164,1
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:167,1
    - Dst: silk_memset
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:172,1
    - Dst: ALLOC
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:173,1
    - Dst: silk_resampler_down2
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:174,1
    - Dst: silk_ADD_SAT16
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:178,1
    - Dst: ALLOC
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:185,1
    - Dst: ALLOC
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:186,1
    - Dst: silk_memset
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:187,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:188,1
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:191,1
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:192,1
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:197,1
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:198,1
    - Dst: celt_pitch_xcorr
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:200,1
    - Dst: silk_inner_prod_aligned
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:204,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:205,1
    - Dst: silk_inner_prod_aligned
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:205,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:206,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:206,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:208,1
    - Dst: silk_DIV32_varQ
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:209,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:216,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:217,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:222,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:223,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:224,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:226,1
    - Dst: silk_DIV32_varQ
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:227,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:236,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:237,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:238,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:238,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:244,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:245,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:245,1
    - Dst: silk_ADD_LSHIFT32
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:251,1
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:252,1
    - Dst: silk_insertion_sort_decreasing_int16
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:253,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:258,1
    - Dst: silk_memset
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:259,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:267,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:271,1
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:277,1
    - Dst: ALLOC
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:279,1
    - Dst: silk_memset
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:322,1
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:328,1
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:329,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:331,1
    - Dst: silk_inner_prod_aligned
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:331,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:337,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:338,1
    - Dst: silk_inner_prod_aligned
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:340,1
    - Dst: silk_inner_prod_aligned
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:342,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:343,1
    - Dst: silk_DIV32_varQ
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:344,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:345,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:349,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:366,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:366,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:368,1
    - Dst: silk_lin2log
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:370,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:374,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:374,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:398,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:400,1
    - Dst: silk_lin2log
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:416,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:417,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:417,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:418,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:418,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:418,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:418,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:419,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:419,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:419,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:422,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:422,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:422,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:422,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:425,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:425,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:426,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:426,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:427,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:427,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:427,1
    - Dst: silk_DIV32
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:428,1
    - Dst: silk_MUL
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:428,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:428,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:433,1
    - Dst: silk_memset
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:445,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:454,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:454,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:455,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:462,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:462,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:464,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:464,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:466,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:468,1
    - Dst: silk_LIMIT_int
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:471,1
    - Dst: silk_max_int
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:472,1
    - Dst: silk_min_int
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:473,1
    - Dst: ALLOC
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:495,1
    - Dst: ALLOC
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:496,1
    - Dst: silk_P_Ana_calc_corr_st3
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:497,1
    - Dst: silk_P_Ana_calc_energy_st3
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:498,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:501,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:501,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:502,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:502,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:505,1
    - Dst: silk_inner_prod_aligned
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:505,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:511,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:512,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:514,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:515,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:517,1
    - Dst: silk_DIV32_varQ
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:520,1
    - Dst: silk_MUL
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:522,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:523,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:523,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:524,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:539,1
    - Dst: silk_LIMIT
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:540,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:547,1
    - Dst: silk_LIMIT
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:548,1
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:553,1
    CyclomaticComplexity: 58
    EdgeCount: 58
    ICount: 318
    argCount: 12
    argNames:
    - frame_unscaled
    - pitch_out
    - lagIndex
    - contourIndex
    - LTPCorr_Q15
    - prevLag
    - search_thres1_Q16
    - search_thres2_Q13
    - Fs_kHz
    - complexity
    - nb_subfr
    - arch
    argTypes:
    - opus_int16*
    - opus_int*
    - opus_int16*
    - opus_int8*
    - opus_int*
    - opus_int
    - opus_int32
    - opus_int
    - opus_int
    - opus_int
    - opus_int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 557
      start: 82
    functionDepth: 3
    functionLinenumber: 82
    functionLinenumberEnd: 557
    functionName: silk_pitch_analysis_core
    functionSourceFile: /src/opus/silk/fixed/pitch_analysis_core_FIX.c
    functionUses: 1
    functionsReached:
    - silk_DIV32
    - silk_ADD32
    - silk_SMULBB
    - silk_SMULWB
    - silk_SMLAWB
    - silk_insertion_sort_decreasing_int16
    - silk_P_Ana_calc_corr_st3
    - silk_ADD_SAT16
    - silk_DIV32_varQ
    - silk_assert
    - silk_RSHIFT
    - matrix_ptr
    - silk_SAT16
    - silk_max_int
    - VARDECL
    - ALLOC
    - silk_lin2log
    - silk_sum_sqr_shift
    - silk_LIMIT_int
    - silk_inner_prod_aligned
    - silk_P_Ana_calc_energy_st3
    - silk_MUL
    - silk_resampler_down2_3
    - celt_assert
    - silk_ADD_LSHIFT32
    - silk_LSHIFT
    - silk_memset
    - celt_pitch_xcorr
    - SILK_FIX_CONST
    - silk_DIV32_16
    - silk_CLZ32
    - silk_LIMIT
    - silk_resampler_down2
    - silk_min_int
    linkageType: ''
    returnType: opus_int
    signature: "opus_int silk_pitch_analysis_core(                  /* O    Voicing
      estimate: 0 voiced, 1 unvoiced                      */\n    const opus_int16
      \           *frame_unscaled,    /* I    Signal of length PE_FRAME_LENGTH_MS*Fs_kHz
      \                 */\n    opus_int                    *pitch_out,         /*
      O    4 pitch lag values                                          */\n    opus_int16
      \                 *lagIndex,          /* O    Lag Index                                                   */\n
      \   opus_int8                   *contourIndex,      /* O    Pitch contour Index
      \                                        */\n    opus_int                    *LTPCorr_Q15,
      \      /* I/O  Normalized correlation; input: value from previous frame    */\n
      \   opus_int                    prevLag,            /* I    Last lag of previous
      frame; set to zero is unvoiced         */\n    const opus_int32            search_thres1_Q16,
      \ /* I    First stage threshold for lag candidates 0 - 1              */\n    const
      opus_int              search_thres2_Q13,  /* I    Final threshold for lag candidates
      0 - 1                    */\n    const opus_int              Fs_kHz,             /*
      I    Sample frequency (kHz)                                      */\n    const
      opus_int              complexity,         /* I    Complexity setting, 0-2, where
      2 is highest                 */\n    const opus_int              nb_subfr,           /*
      I    number of 5 ms subframes                                    */\n    int
      \                        arch                /* I    Run-time architecture                                       */\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:585,1
    - Dst: VARDECL
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:586,1
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:590,1
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:591,1
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:599,1
    - Dst: ALLOC
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:605,1
    - Dst: ALLOC
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:606,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:608,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:613,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:614,1
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:615,1
    - Dst: celt_pitch_xcorr
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:616,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:618,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:623,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:627,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:629,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:630,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:631,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 44
    argCount: 7
    argNames:
    - cross_corr_st3
    - frame
    - start_lag
    - sf_length
    - nb_subfr
    - complexity
    - arch
    argTypes:
    - silk_pe_stage3_vals[]
    - opus_int16[]
    - opus_int
    - opus_int
    - opus_int
    - opus_int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 638
      start: 572
    functionDepth: 1
    functionLinenumber: 572
    functionLinenumberEnd: 638
    functionName: silk_P_Ana_calc_corr_st3
    functionSourceFile: /src/opus/silk/fixed/pitch_analysis_core_FIX.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - silk_LSHIFT
    - silk_assert
    - matrix_ptr
    - VARDECL
    - ALLOC
    - celt_pitch_xcorr
    linkageType: ''
    returnType: void
    signature: "void silk_P_Ana_calc_corr_st3(\n    silk_pe_stage3_vals cross_corr_st3[],
      \             /* O 3 DIM correlation array */\n    const opus_int16  frame[],
      \                        /* I vector to correlate         */\n    opus_int          start_lag,
      \                      /* I lag offset to search around */\n    opus_int          sf_length,
      \                      /* I length of a 5 ms subframe   */\n    opus_int          nb_subfr,
      \                       /* I number of subframes         */\n    opus_int          complexity,
      \                     /* I Complexity setting          */\n    int               arch
      \                            /* I Run-time architecture       */\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:658,1
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:662,1
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:663,1
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:671,1
    - Dst: ALLOC
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:677,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:679,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:684,1
    - Dst: silk_inner_prod_aligned
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:685,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:686,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:690,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:690,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:693,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:694,1
    - Dst: silk_ADD_SAT32
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:697,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:697,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:698,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:699,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:704,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:708,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:710,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:711,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:712,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:714,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/fixed/pitch_analysis_core_FIX.c:715,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 49
    argCount: 7
    argNames:
    - energies_st3
    - frame
    - start_lag
    - sf_length
    - nb_subfr
    - complexity
    - arch
    argTypes:
    - silk_pe_stage3_vals[]
    - opus_int16[]
    - opus_int
    - opus_int
    - opus_int
    - opus_int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 721
      start: 644
    functionDepth: 1
    functionLinenumber: 644
    functionLinenumberEnd: 721
    functionName: silk_P_Ana_calc_energy_st3
    functionSourceFile: /src/opus/silk/fixed/pitch_analysis_core_FIX.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - silk_LSHIFT
    - silk_assert
    - matrix_ptr
    - silk_SMULBB
    - VARDECL
    - ALLOC
    - silk_ADD_SAT32
    - silk_inner_prod_aligned
    linkageType: ''
    returnType: void
    signature: "void silk_P_Ana_calc_energy_st3(\n    silk_pe_stage3_vals energies_st3[],
      \                /* O 3 DIM energy array */\n    const opus_int16  frame[],
      \                         /* I vector to calc energy in    */\n    opus_int
      \         start_lag,                        /* I lag offset to search around
      */\n    opus_int          sf_length,                        /* I length of one
      5 ms subframe */\n    opus_int          nb_subfr,                         /*
      I number of subframes         */\n    opus_int          complexity,                       /*
      I Complexity setting          */\n    int               arch                              /*
      I Run-time architecture       */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_SMLAWW
      Src: /src/opus/silk/fixed/k2a_Q16_FIX.c:49,1
    - Dst: silk_SMLAWW
      Src: /src/opus/silk/fixed/k2a_Q16_FIX.c:50,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/k2a_Q16_FIX.c:52,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - A_Q24
    - rc_Q16
    - order
    argTypes:
    - opus_int32*
    - opus_int32*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 54
    functionName: silk_k2a_Q16
    functionSourceFile: /src/opus/silk/fixed/k2a_Q16_FIX.c
    functionUses: 0
    functionsReached:
    - silk_LSHIFT
    - silk_SMLAWW
    linkageType: ''
    returnType: void
    signature: "void silk_k2a_Q16(\n    opus_int32                  *A_Q24,             /*
      O    Prediction coefficients [order] Q24                         */\n    const
      opus_int32            *rc_Q16,            /* I    Reflection coefficients [order]
      Q16                         */\n    const opus_int32            order               /*
      I    Prediction order                                            */\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: silk_ADD_RSHIFT32
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:61,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:61,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:67,1
    - Dst: silk_inner_prod_aligned
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:69,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 7
    argNames:
    - x
    - t
    - L
    - order
    - Xt
    - rshifts
    - arch
    argTypes:
    - opus_int16*
    - opus_int16*
    - opus_int
    - opus_int
    - opus_int32*
    - opus_int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 73
    functionName: silk_corrVector_FIX
    functionSourceFile: /src/opus/silk/fixed/corrMatrix_FIX.c
    functionUses: 0
    functionsReached:
    - silk_inner_prod_aligned
    - silk_assert
    - silk_SMULBB
    - silk_ADD_RSHIFT32
    linkageType: ''
    returnType: void
    signature: "void silk_corrVector_FIX(\n    const opus_int16                *x,
      \                                    /* I    x vector [L + order - 1] used to
      form data matrix X                         */\n    const opus_int16                *t,
      \                                    /* I    Target vector [L]                                                           */\n
      \   const opus_int                  L,                                      /*
      I    Length of vectors                                                           */\n
      \   const opus_int                  order,                                  /*
      I    Max lag for correlation                                                     */\n
      \   opus_int32                      *Xt,                                    /*
      O    Pointer to X'*t correlation vector [order]                                  */\n
      \   const opus_int                  rshifts,                                /*
      I    Right shifts of correlations                                                */\n
      \   int                             arch                                    /*
      I    Run-time architecture                                                       */\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: silk_sum_sqr_shift
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:91,1
    - Dst: silk_RSHIFT32
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:97,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:97,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:102,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:103,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:106,1
    - Dst: silk_RSHIFT32
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:106,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:106,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:107,1
    - Dst: silk_RSHIFT32
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:107,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:107,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:108,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:109,1
    - Dst: silk_RSHIFT32
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:120,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:120,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:123,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:124,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:126,1
    - Dst: silk_RSHIFT32
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:126,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:126,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:127,1
    - Dst: silk_RSHIFT32
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:127,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:127,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:128,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:129,1
    - Dst: silk_inner_prod_aligned
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:136,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:137,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:138,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:141,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:141,1
    - Dst: silk_SMLABB
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:142,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:143,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/fixed/corrMatrix_FIX.c:144,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 46
    argCount: 7
    argNames:
    - x
    - L
    - order
    - XX
    - nrg
    - rshifts
    - arch
    argTypes:
    - opus_int16*
    - opus_int
    - opus_int
    - opus_int32*
    - opus_int32*
    - opus_int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 76
    functionDepth: 2
    functionLinenumber: 76
    functionLinenumberEnd: 149
    functionName: silk_corrMatrix_FIX
    functionSourceFile: /src/opus/silk/fixed/corrMatrix_FIX.c
    functionUses: 0
    functionsReached:
    - silk_assert
    - silk_SMULBB
    - matrix_ptr
    - silk_ADD32
    - silk_SMLABB
    - silk_SUB32
    - silk_RSHIFT32
    - silk_sum_sqr_shift
    - silk_inner_prod_aligned
    linkageType: ''
    returnType: void
    signature: "void silk_corrMatrix_FIX(\n    const opus_int16                *x,
      \                                    /* I    x vector [L + order - 1] used to
      form data matrix X                         */\n    const opus_int                  L,
      \                                     /* I    Length of vectors                                                           */\n
      \   const opus_int                  order,                                  /*
      I    Max lag for correlation                                                     */\n
      \   opus_int32                      *XX,                                    /*
      O    Pointer to X'*X correlation matrix [ order x order ]                        */\n
      \   opus_int32                      *nrg,                                    /*
      O    Energy of x vector                                                            */\n
      \   opus_int                        *rshifts,                               /*
      O    Right shifts of correlations and energy                                     */\n
      \   int                             arch                                    /*
      I    Run-time architecture                                                       */\n)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: silk_sigm_Q15
      Src: /src/opus/silk/fixed/process_gains_FIX.c:49,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/fixed/process_gains_FIX.c:49,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/process_gains_FIX.c:49,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/process_gains_FIX.c:51,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/fixed/process_gains_FIX.c:57,1
    - Dst: silk_log2lin
      Src: /src/opus/silk/fixed/process_gains_FIX.c:57,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/fixed/process_gains_FIX.c:58,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/process_gains_FIX.c:58,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/process_gains_FIX.c:58,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/fixed/process_gains_FIX.c:63,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/fixed/process_gains_FIX.c:65,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/process_gains_FIX.c:67,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/process_gains_FIX.c:70,1
    - Dst: silk_ADD_SAT32
      Src: /src/opus/silk/fixed/process_gains_FIX.c:74,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/fixed/process_gains_FIX.c:74,1
    - Dst: silk_SMLAWW
      Src: /src/opus/silk/fixed/process_gains_FIX.c:77,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/process_gains_FIX.c:77,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/process_gains_FIX.c:78,1
    - Dst: silk_SQRT_APPROX
      Src: /src/opus/silk/fixed/process_gains_FIX.c:79,1
    - Dst: silk_min
      Src: /src/opus/silk/fixed/process_gains_FIX.c:80,1
    - Dst: silk_LSHIFT_SAT32
      Src: /src/opus/silk/fixed/process_gains_FIX.c:81,1
    - Dst: silk_SQRT_APPROX
      Src: /src/opus/silk/fixed/process_gains_FIX.c:83,1
    - Dst: silk_min
      Src: /src/opus/silk/fixed/process_gains_FIX.c:84,1
    - Dst: silk_LSHIFT_SAT32
      Src: /src/opus/silk/fixed/process_gains_FIX.c:85,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/fixed/process_gains_FIX.c:90,1
    - Dst: silk_gains_quant
      Src: /src/opus/silk/fixed/process_gains_FIX.c:94,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/process_gains_FIX.c:99,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/process_gains_FIX.c:99,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/process_gains_FIX.c:108,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/fixed/process_gains_FIX.c:109,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/process_gains_FIX.c:109,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/fixed/process_gains_FIX.c:110,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/process_gains_FIX.c:110,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/fixed/process_gains_FIX.c:111,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/process_gains_FIX.c:111,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/fixed/process_gains_FIX.c:112,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/process_gains_FIX.c:112,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/fixed/process_gains_FIX.c:113,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/process_gains_FIX.c:113,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/process_gains_FIX.c:115,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/process_gains_FIX.c:116,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/process_gains_FIX.c:116,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 48
    argCount: 3
    argNames:
    - psEnc
    - psEncCtrl
    - condCoding
    argTypes:
    - silk_encoder_state_FIX*
    - silk_encoder_control_FIX*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 36
    functionDepth: 3
    functionLinenumber: 36
    functionLinenumberEnd: 117
    functionName: silk_process_gains_FIX
    functionSourceFile: /src/opus/silk/fixed/process_gains_FIX.c
    functionUses: 0
    functionsReached:
    - silk_SMULWB
    - silk_SMULBB
    - silk_SMLAWB
    - silk_log2lin
    - silk_ADD_SAT32
    - silk_sigm_Q15
    - silk_SQRT_APPROX
    - silk_min
    - silk_RSHIFT
    - silk_assert
    - silk_LSHIFT
    - silk_SMMUL
    - SILK_FIX_CONST
    - silk_DIV32_16
    - silk_memcpy
    - silk_SMULWW
    - silk_SMLAWW
    - silk_gains_quant
    - silk_RSHIFT_ROUND
    - silk_LSHIFT_SAT32
    linkageType: ''
    returnType: void
    signature: "void silk_process_gains_FIX(\n    silk_encoder_state_FIX          *psEnc,
      \                                /* I/O  Encoder state                                                               */\n
      \   silk_encoder_control_FIX        *psEncCtrl,                             /*
      I/O  Encoder control                                                             */\n
      \   opus_int                        condCoding                              /*
      I    The type of conditional coding to use                                       */\n)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:68,1
    - Dst: silk_inner_prod16
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:71,1
    - Dst: silk_CLZ64
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:72,1
    - Dst: silk_RSHIFT64
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:78,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:80,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:83,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:83,1
    - Dst: silk_memset
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:84,1
    - Dst: silk_RSHIFT64
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:89,1
    - Dst: silk_inner_prod16
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:90,1
    - Dst: celt_pitch_xcorr
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:98,1
    - Dst: MAC16_16
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:101,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:105,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:109,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:112,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:112,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:124,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:125,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:126,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:127,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:129,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:130,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:132,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:133,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:135,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:136,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:138,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:139,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:145,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:146,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:147,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:148,1
    - Dst: silk_MLA
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:150,1
    - Dst: silk_MLA
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:151,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:152,1
    - Dst: silk_MLA_ovflw
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:156,1
    - Dst: silk_MLA_ovflw
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:157,1
    - Dst: silk_SMLAWW
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:162,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:163,1
    - Dst: silk_SMLAWW
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:164,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:165,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:174,1
    - Dst: silk_CLZ32
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:177,1
    - Dst: silk_abs
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:177,1
    - Dst: silk_min
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:178,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:179,1
    - Dst: silk_ADD_LSHIFT32
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:181,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:181,1
    - Dst: silk_ADD_LSHIFT32
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:182,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:182,1
    - Dst: silk_ADD_LSHIFT32
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:183,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:183,1
    - Dst: silk_ADD_LSHIFT32
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:184,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:184,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:184,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:189,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:190,1
    - Dst: silk_abs
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:193,1
    - Dst: silk_DIV32_varQ
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:194,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:200,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:201,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:201,1
    - Dst: silk_DIV32_varQ
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:204,1
    - Dst: silk_SQRT_APPROX
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:205,1
    - Dst: silk_RSHIFT32
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:208,1
    - Dst: silk_DIV32
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:208,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:209,1
    - Dst: silk_ADD_LSHIFT32
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:225,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:225,1
    - Dst: silk_ADD_LSHIFT32
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:226,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:226,1
    - Dst: silk_RSHIFT32
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:228,1
    - Dst: silk_ADD_LSHIFT32
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:242,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:242,1
    - Dst: silk_ADD_LSHIFT32
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:243,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:243,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:250,1
    - Dst: silk_RSHIFT64
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:256,1
    - Dst: silk_inner_prod16
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:256,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:261,1
    - Dst: silk_inner_prod_aligned
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:261,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:265,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:265,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:272,1
    - Dst: silk_SMLAWW
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:273,1
    - Dst: silk_SMLAWW
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:274,1
    - Dst: silk_SMLAWW
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:277,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:277,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/burg_modified_FIX.c:277,1
    CyclomaticComplexity: 34
    EdgeCount: 34
    ICount: 174
    argCount: 9
    argNames:
    - res_nrg
    - res_nrg_Q
    - A_Q16
    - x
    - minInvGain_Q30
    - subfr_length
    - nb_subfr
    - D
    - arch
    argTypes:
    - opus_int32*
    - opus_int*
    - opus_int32[]
    - opus_int16[]
    - opus_int32
    - opus_int
    - opus_int
    - opus_int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 45
    functionDepth: 3
    functionLinenumber: 45
    functionLinenumberEnd: 280
    functionName: silk_burg_modified_c
    functionSourceFile: /src/opus/silk/fixed/burg_modified_FIX.c
    functionUses: 0
    functionsReached:
    - silk_DIV32
    - silk_ADD32
    - silk_SMLAWB
    - silk_CLZ64
    - silk_MLA
    - silk_SQRT_APPROX
    - silk_abs
    - silk_min
    - silk_DIV32_varQ
    - silk_RSHIFT_ROUND
    - silk_inner_prod16
    - silk_inner_prod_aligned
    - celt_assert
    - MAC16_16
    - silk_ADD_LSHIFT32
    - silk_LSHIFT32
    - silk_LSHIFT
    - silk_memset
    - celt_pitch_xcorr
    - silk_SMMUL
    - SILK_FIX_CONST
    - silk_memcpy
    - silk_CLZ32
    - silk_SMLAWW
    - silk_MLA_ovflw
    - silk_RSHIFT32
    - silk_RSHIFT64
    linkageType: ''
    returnType: void
    signature: "void silk_burg_modified_c(\n    opus_int32                  *res_nrg,
      \          /* O    Residual energy                                             */\n
      \   opus_int                    *res_nrg_Q,         /* O    Residual energy
      Q value                                     */\n    opus_int32                  A_Q16[],
      \           /* O    Prediction coefficients (length order)                      */\n
      \   const opus_int16            x[],                /* I    Input signal, length:
      nb_subfr * ( D + subfr_length )       */\n    const opus_int32            minInvGain_Q30,
      \    /* I    Inverse of max prediction gain                              */\n
      \   const opus_int              subfr_length,       /* I    Input signal subframe
      length (incl. D preceding samples)    */\n    const opus_int              nb_subfr,
      \          /* I    Number of subframes stacked in x                            */\n
      \   const opus_int              D,                  /* I    Order                                                       */\n
      \   int                         arch                /* I    Run-time architecture
      \                                      */\n)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:50,1
    - Dst: silk_VAD_GetSA_Q8
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:55,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 2
    argNames:
    - psEnc
    - activity
    argTypes:
    - silk_encoder_state_FIX*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 80
    functionName: silk_encode_do_VAD_FIX
    functionSourceFile: /src/opus/silk/fixed/encode_frame_FIX.c
    functionUses: 0
    functionsReached:
    - SILK_FIX_CONST
    - silk_VAD_GetSA_Q8
    linkageType: ''
    returnType: void
    signature: "void silk_encode_do_VAD_FIX(\n    silk_encoder_state_FIX          *psEnc,
      \                                /* I/O  Pointer to Silk FIX encoder state                                           */\n
      \   opus_int                        activity                                /*
      I    Decision of Opus voice activity detector                                    */\n)"
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:98,1
    - Dst: ALLOC
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:113,1
    - Dst: silk_LP_variable_cutoff
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:131,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:136,1
    - Dst: VARDECL
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:139,1
    - Dst: VARDECL
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:140,1
    - Dst: ALLOC
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:143,1
    - Dst: silk_find_pitch_lags_FIX
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:152,1
    - Dst: silk_noise_shape_analysis_FIX
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:157,1
    - Dst: silk_find_pred_coefs_FIX
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:162,1
    - Dst: silk_process_gains_FIX
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:167,1
    - Dst: silk_LBRR_encode_FIX
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:172,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:176,1
    - Dst: silk_gains_ID
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:179,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:183,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:184,1
    - Dst: ALLOC
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:188,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:197,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:198,1
    - Dst: silk_NSQ_del_dec
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:208,1
    - Dst: silk_NSQ
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:213,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:220,1
    - Dst: silk_encode_indices
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:226,1
    - Dst: silk_encode_pulses
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:231,1
    - Dst: ec_tell
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:234,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:238,1
    - Dst: silk_encode_indices
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:255,1
    - Dst: silk_encode_pulses
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:257,1
    - Dst: ec_tell
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:260,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:271,1
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:272,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:273,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:274,1
    - Dst: silk_ADD_RSHIFT32
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:283,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:299,1
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:300,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:301,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:302,1
    - Dst: abs
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:315,1
    - Dst: silk_min_32
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:328,1
    - Dst: silk_max_32
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:330,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:334,1
    - Dst: silk_MUL
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:334,1
    - Dst: silk_ADD_RSHIFT32
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:336,1
    - Dst: silk_ADD_RSHIFT32
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:337,1
    - Dst: silk_SUB_RSHIFT32
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:339,1
    - Dst: silk_SUB_RSHIFT32
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:340,1
    - Dst: silk_LSHIFT_SAT32
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:351,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:351,1
    - Dst: silk_gains_quant
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:356,1
    - Dst: silk_gains_ID
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:360,1
    - Dst: silk_memmove
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:365,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:385,1
    - Dst: ec_tell
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:385,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 170
    argCount: 6
    argNames:
    - psEnc
    - pnBytesOut
    - psRangeEnc
    - condCoding
    - maxBits
    - useCBR
    argTypes:
    - silk_encoder_state_FIX*
    - opus_int32*
    - ec_enc*
    - opus_int
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 389
      start: 85
    functionDepth: 4
    functionLinenumber: 85
    functionLinenumberEnd: 389
    functionName: silk_encode_frame_FIX
    functionSourceFile: /src/opus/silk/fixed/encode_frame_FIX.c
    functionUses: 0
    functionsReached:
    - silk_process_gains_FIX
    - silk_SMULWB
    - silk_noise_shape_analysis_FIX
    - silk_min_32
    - silk_LP_variable_cutoff
    - silk_LBRR_encode_FIX
    - ec_tell
    - silk_SUB_RSHIFT32
    - silk_encode_pulses
    - silk_find_pred_coefs_FIX
    - silk_RSHIFT
    - silk_gains_ID
    - silk_encode_indices
    - VARDECL
    - ALLOC
    - silk_MUL
    - celt_assert
    - silk_ADD_RSHIFT32
    - abs
    - silk_max_32
    - silk_memmove
    - silk_NSQ
    - SILK_FIX_CONST
    - silk_DIV32_16
    - silk_memcpy
    - silk_NSQ_del_dec
    - silk_find_pitch_lags_FIX
    - silk_gains_quant
    - silk_LSHIFT_SAT32
    linkageType: ''
    returnType: opus_int
    signature: "opus_int silk_encode_frame_FIX(\n    silk_encoder_state_FIX          *psEnc,
      \                                /* I/O  Pointer to Silk FIX encoder state                                           */\n
      \   opus_int32                      *pnBytesOut,                            /*
      O    Pointer to number of payload bytes;                                         */\n
      \   ec_enc                          *psRangeEnc,                            /*
      I/O  compressor data structure                                                   */\n
      \   opus_int                        condCoding,                             /*
      I    The type of conditional coding to use                                       */\n
      \   opus_int                        maxBits,                                /*
      I    If > 0: maximum number of output bits                                       */\n
      \   opus_int                        useCBR                                  /*
      I    Flag to force constant-bitrate operation                                    */\n)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:401,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:407,1
    - Dst: ALLOC
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:410,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:415,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:416,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:419,1
    - Dst: silk_min_int
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:427,1
    - Dst: silk_gains_dequant
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:432,1
    - Dst: silk_NSQ_del_dec
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:439,1
    - Dst: silk_NSQ
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:444,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/fixed/encode_frame_FIX.c:451,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 4
    argNames:
    - psEnc
    - psEncCtrl
    - x16
    - condCoding
    argTypes:
    - silk_encoder_state_FIX*
    - silk_encoder_control_FIX*
    - opus_int16[]
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 454
      start: 392
    functionDepth: 3
    functionLinenumber: 392
    functionLinenumberEnd: 454
    functionName: silk_LBRR_encode_FIX
    functionSourceFile: /src/opus/silk/fixed/encode_frame_FIX.c
    functionUses: 1
    functionsReached:
    - silk_memcpy
    - silk_NSQ_del_dec
    - VARDECL
    - ALLOC
    - silk_gains_dequant
    - silk_NSQ
    - silk_min_int
    - SILK_FIX_CONST
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_LBRR_encode_FIX(\n    silk_encoder_state_FIX          *psEnc,
      \                                /* I/O  Pointer to Silk FIX encoder state                                           */\n
      \   silk_encoder_control_FIX        *psEncCtrl,                             /*
      I/O  Pointer to Silk FIX encoder control struct                                  */\n
      \   const opus_int16                x16[],                                  /*
      I    Input signal                                                                */\n
      \   opus_int                        condCoding                              /*
      I    The type of conditional coding used so far for this frame                   */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 15
    argNames:
    - (
    - corr
    - ','
    - scale
    - ','
    - input
    - ','
    - warping_Q16
    - ','
    - length
    - ','
    - order
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 117
    functionName: silk_warped_autocorrelation_FIX
    functionSourceFile: /src/opus/silk/fixed/main_FIX.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_warped_autocorrelation_FIX(corr, scale, input, warping_Q16, length,
      order, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/silk/fixed/residual_energy_FIX.c:51,1
    - Dst: ALLOC
      Src: /src/opus/silk/fixed/residual_energy_FIX.c:60,1
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/residual_energy_FIX.c:61,1
    - Dst: silk_LPC_analysis_filter
      Src: /src/opus/silk/fixed/residual_energy_FIX.c:64,1
    - Dst: silk_sum_sqr_shift
      Src: /src/opus/silk/fixed/residual_energy_FIX.c:70,1
    - Dst: silk_CLZ32
      Src: /src/opus/silk/fixed/residual_energy_FIX.c:85,1
    - Dst: silk_CLZ32
      Src: /src/opus/silk/fixed/residual_energy_FIX.c:86,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/residual_energy_FIX.c:88,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/fixed/residual_energy_FIX.c:91,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/fixed/residual_energy_FIX.c:94,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/residual_energy_FIX.c:94,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 26
    argCount: 9
    argNames:
    - nrgs
    - nrgsQ
    - x
    - a_Q12
    - gains
    - subfr_length
    - nb_subfr
    - LPC_order
    - arch
    argTypes:
    - opus_int32[]
    - opus_int[]
    - opus_int16[]
    - opus_int16[][]
    - opus_int32[]
    - opus_int
    - opus_int
    - opus_int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 37
    functionDepth: 2
    functionLinenumber: 37
    functionLinenumberEnd: 98
    functionName: silk_residual_energy_FIX
    functionSourceFile: /src/opus/silk/fixed/residual_energy_FIX.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - silk_LSHIFT32
    - silk_CLZ32
    - VARDECL
    - ALLOC
    - silk_SMMUL
    - silk_sum_sqr_shift
    - silk_LPC_analysis_filter
    linkageType: ''
    returnType: void
    signature: "void silk_residual_energy_FIX(\n          opus_int32                nrgs[
      MAX_NB_SUBFR ],                   /* O    Residual energy per subframe                                                */\n
      \         opus_int                  nrgsQ[ MAX_NB_SUBFR ],                  /*
      O    Q value per subframe                                                        */\n
      \   const opus_int16                x[],                                    /*
      I    Input signal                                                                */\n
      \         opus_int16                a_Q12[ 2 ][ MAX_LPC_ORDER ],            /*
      I    AR coefs for each frame half                                                */\n
      \   const opus_int32                gains[ MAX_NB_SUBFR ],                  /*
      I    Quantization gains                                                          */\n
      \   const opus_int                  subfr_length,                           /*
      I    Subframe length                                                             */\n
      \   const opus_int                  nb_subfr,                               /*
      I    Number of subframes                                                         */\n
      \   const opus_int                  LPC_order,                              /*
      I    LPC order                                                                   */\n
      \         int                       arch                                    /*
      I    Run-time architecture                                                       */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_min_int
      Src: /src/opus/silk/fixed/autocorr_FIX.c:46,1
    - Dst: _celt_autocorr
      Src: /src/opus/silk/fixed/autocorr_FIX.c:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 6
    argNames:
    - results
    - scale
    - inputData
    - inputDataSize
    - correlationCount
    - arch
    argTypes:
    - opus_int32*
    - opus_int*
    - opus_int16*
    - opus_int
    - opus_int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 48
    functionName: silk_autocorr
    functionSourceFile: /src/opus/silk/fixed/autocorr_FIX.c
    functionUses: 1
    functionsReached:
    - silk_min_int
    - _celt_autocorr
    linkageType: ''
    returnType: void
    signature: "void silk_autocorr(\n    opus_int32                  *results,           /*
      O    Result (length correlationCount)                            */\n    opus_int
      \                   *scale,             /* O    Scaling of the correlation vector
      \                          */\n    const opus_int16            *inputData,         /*
      I    Input data to correlate                                     */\n    const
      opus_int              inputDataSize,      /* I    Length of input                                             */\n
      \   const opus_int              correlationCount,   /* I    Number of correlation
      taps to compute                       */\n    int                         arch
      \               /* I    Run-time architecture                                       */\n)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/schur64_FIX.c:46,1
    - Dst: silk_memset
      Src: /src/opus/silk/fixed/schur64_FIX.c:50,1
    - Dst: silk_abs_int32
      Src: /src/opus/silk/fixed/schur64_FIX.c:61,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/schur64_FIX.c:63,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/schur64_FIX.c:65,1
    - Dst: silk_DIV32_varQ
      Src: /src/opus/silk/fixed/schur64_FIX.c:72,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/fixed/schur64_FIX.c:75,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/fixed/schur64_FIX.c:83,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/schur64_FIX.c:83,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/fixed/schur64_FIX.c:84,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/schur64_FIX.c:84,1
    - Dst: silk_max_32
      Src: /src/opus/silk/fixed/schur64_FIX.c:92,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 33
    argCount: 3
    argNames:
    - rc_Q16
    - c
    - order
    argTypes:
    - opus_int32[]
    - opus_int32[]
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 36
    functionDepth: 2
    functionLinenumber: 36
    functionLinenumberEnd: 93
    functionName: silk_schur64
    functionSourceFile: /src/opus/silk/fixed/schur64_FIX.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - silk_DIV32_varQ
    - silk_LSHIFT
    - silk_memset
    - silk_max_32
    - silk_SMMUL
    - SILK_FIX_CONST
    - silk_RSHIFT_ROUND
    - silk_abs_int32
    linkageType: ''
    returnType: opus_int32
    signature: "opus_int32 silk_schur64(                            /* O    returns
      residual energy                                     */\n    opus_int32                  rc_Q16[],
      \          /* O    Reflection coefficients [order] Q16                         */\n
      \   const opus_int32            c[],                /* I    Correlations [order+1]
      \                                     */\n    opus_int32                  order
      \              /* I    Prediction order                                            */\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/residual_energy16_FIX.c:50,1
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/residual_energy16_FIX.c:51,1
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/residual_energy16_FIX.c:52,1
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/residual_energy16_FIX.c:53,1
    - Dst: silk_max_32
      Src: /src/opus/silk/fixed/residual_energy16_FIX.c:60,1
    - Dst: silk_abs
      Src: /src/opus/silk/fixed/residual_energy16_FIX.c:60,1
    - Dst: silk_min_int
      Src: /src/opus/silk/fixed/residual_energy16_FIX.c:62,1
    - Dst: silk_CLZ32
      Src: /src/opus/silk/fixed/residual_energy16_FIX.c:62,1
    - Dst: silk_max_32
      Src: /src/opus/silk/fixed/residual_energy16_FIX.c:64,1
    - Dst: silk_min_int
      Src: /src/opus/silk/fixed/residual_energy16_FIX.c:65,1
    - Dst: silk_CLZ32
      Src: /src/opus/silk/fixed/residual_energy16_FIX.c:65,1
    - Dst: silk_MUL
      Src: /src/opus/silk/fixed/residual_energy16_FIX.c:65,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/residual_energy16_FIX.c:65,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/fixed/residual_energy16_FIX.c:65,1
    - Dst: silk_max_int
      Src: /src/opus/silk/fixed/residual_energy16_FIX.c:66,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/residual_energy16_FIX.c:68,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/residual_energy16_FIX.c:69,1
    - Dst: silk_abs
      Src: /src/opus/silk/fixed/residual_energy16_FIX.c:69,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/residual_energy16_FIX.c:76,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/residual_energy16_FIX.c:78,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/residual_energy16_FIX.c:86,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/residual_energy16_FIX.c:88,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/residual_energy16_FIX.c:88,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/residual_energy16_FIX.c:89,1
    - Dst: silk_ADD_LSHIFT32
      Src: /src/opus/silk/fixed/residual_energy16_FIX.c:91,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/residual_energy16_FIX.c:96,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/residual_energy16_FIX.c:99,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 45
    argCount: 6
    argNames:
    - c
    - wXX
    - wXx
    - wxx
    - D
    - cQ
    argTypes:
    - opus_int16*
    - opus_int32*
    - opus_int32*
    - opus_int32
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 103
    functionName: silk_residual_energy16_covar_FIX
    functionSourceFile: /src/opus/silk/fixed/residual_energy16_FIX.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - silk_abs
    - silk_ADD_LSHIFT32
    - silk_CLZ32
    - silk_LSHIFT
    - silk_RSHIFT
    - silk_SMULWB
    - silk_max_int
    - silk_max_32
    - silk_assert
    - silk_SMLAWB
    - silk_min_int
    - silk_MUL
    linkageType: ''
    returnType: opus_int32
    signature: "opus_int32 silk_residual_energy16_covar_FIX(\n    const opus_int16
      \               *c,                                     /* I    Prediction vector
      \                                                          */\n    const opus_int32
      \               *wXX,                                   /* I    Correlation
      matrix                                                          */\n    const
      opus_int32                *wXx,                                   /* I    Correlation
      vector                                                          */\n    opus_int32
      \                     wxx,                                    /* I    Signal
      energy                                                               */\n    opus_int
      \                       D,                                      /* I    Dimension
      \                                                                  */\n    opus_int
      \                       cQ                                      /* I    Q value
      for c vector 0 - 15                                                 */\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: silk_SMULBB
      Src: /src/opus/silk/fixed/LTP_scale_ctrl_FIX.c:49,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/fixed/LTP_scale_ctrl_FIX.c:51,1
    - Dst: silk_log2lin
      Src: /src/opus/silk/fixed/LTP_scale_ctrl_FIX.c:51,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/fixed/LTP_scale_ctrl_FIX.c:52,1
    - Dst: silk_log2lin
      Src: /src/opus/silk/fixed/LTP_scale_ctrl_FIX.c:52,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - psEnc
    - psEncCtrl
    - condCoding
    argTypes:
    - silk_encoder_state_FIX*
    - silk_encoder_control_FIX*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 35
    functionDepth: 2
    functionLinenumber: 35
    functionLinenumberEnd: 58
    functionName: silk_LTP_scale_ctrl_FIX
    functionSourceFile: /src/opus/silk/fixed/LTP_scale_ctrl_FIX.c
    functionUses: 0
    functionsReached:
    - silk_log2lin
    - silk_SMULBB
    linkageType: ''
    returnType: void
    signature: "void silk_LTP_scale_ctrl_FIX(\n    silk_encoder_state_FIX          *psEnc,
      \                                /* I/O  encoder state                                                               */\n
      \   silk_encoder_control_FIX        *psEncCtrl,                             /*
      I/O  encoder control                                                             */\n
      \   opus_int                        condCoding                              /*
      I    The type of conditional coding to use                                       */\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/silk/fixed/find_pred_coefs_FIX.c:49,1
    - Dst: silk_min
      Src: /src/opus/silk/fixed/find_pred_coefs_FIX.c:56,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/find_pred_coefs_FIX.c:60,1
    - Dst: silk_DIV32_varQ
      Src: /src/opus/silk/fixed/find_pred_coefs_FIX.c:62,1
    - Dst: silk_max
      Src: /src/opus/silk/fixed/find_pred_coefs_FIX.c:65,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/find_pred_coefs_FIX.c:68,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/fixed/find_pred_coefs_FIX.c:68,1
    - Dst: silk_DIV32
      Src: /src/opus/silk/fixed/find_pred_coefs_FIX.c:71,1
    - Dst: ALLOC
      Src: /src/opus/silk/fixed/find_pred_coefs_FIX.c:74,1
    - Dst: VARDECL
      Src: /src/opus/silk/fixed/find_pred_coefs_FIX.c:78,1
    - Dst: VARDECL
      Src: /src/opus/silk/fixed/find_pred_coefs_FIX.c:79,1
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/find_pred_coefs_FIX.c:84,1
    - Dst: ALLOC
      Src: /src/opus/silk/fixed/find_pred_coefs_FIX.c:86,1
    - Dst: ALLOC
      Src: /src/opus/silk/fixed/find_pred_coefs_FIX.c:87,1
    - Dst: silk_find_LTP_FIX
      Src: /src/opus/silk/fixed/find_pred_coefs_FIX.c:90,1
    - Dst: silk_quant_LTP_gains
      Src: /src/opus/silk/fixed/find_pred_coefs_FIX.c:94,1
    - Dst: silk_LTP_scale_ctrl_FIX
      Src: /src/opus/silk/fixed/find_pred_coefs_FIX.c:98,1
    - Dst: silk_LTP_analysis_filter_FIX
      Src: /src/opus/silk/fixed/find_pred_coefs_FIX.c:101,1
    - Dst: silk_scale_copy_vector16
      Src: /src/opus/silk/fixed/find_pred_coefs_FIX.c:112,1
    - Dst: silk_memset
      Src: /src/opus/silk/fixed/find_pred_coefs_FIX.c:118,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/find_pred_coefs_FIX.c:126,1
    - Dst: silk_log2lin
      Src: /src/opus/silk/fixed/find_pred_coefs_FIX.c:128,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/find_pred_coefs_FIX.c:128,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/find_pred_coefs_FIX.c:128,1
    - Dst: silk_DIV32_varQ
      Src: /src/opus/silk/fixed/find_pred_coefs_FIX.c:129,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/fixed/find_pred_coefs_FIX.c:130,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/find_pred_coefs_FIX.c:130,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/find_pred_coefs_FIX.c:131,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/find_pred_coefs_FIX.c:131,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/find_pred_coefs_FIX.c:131,1
    - Dst: silk_find_LPC_FIX
      Src: /src/opus/silk/fixed/find_pred_coefs_FIX.c:135,1
    - Dst: silk_process_NLSFs
      Src: /src/opus/silk/fixed/find_pred_coefs_FIX.c:138,1
    - Dst: silk_residual_energy_FIX
      Src: /src/opus/silk/fixed/find_pred_coefs_FIX.c:141,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/fixed/find_pred_coefs_FIX.c:145,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 49
    argCount: 5
    argNames:
    - psEnc
    - psEncCtrl
    - res_pitch
    - x
    - condCoding
    argTypes:
    - silk_encoder_state_FIX*
    - silk_encoder_control_FIX*
    - opus_int16[]
    - opus_int16[]
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 35
    functionDepth: 3
    functionLinenumber: 35
    functionLinenumberEnd: 147
    functionName: silk_find_pred_coefs_FIX
    functionSourceFile: /src/opus/silk/fixed/find_pred_coefs_FIX.c
    functionUses: 1
    functionsReached:
    - silk_LTP_scale_ctrl_FIX
    - silk_DIV32
    - silk_residual_energy_FIX
    - silk_process_NLSFs
    - silk_SMLAWB
    - silk_log2lin
    - silk_scale_copy_vector16
    - silk_quant_LTP_gains
    - silk_min
    - silk_DIV32_varQ
    - silk_assert
    - silk_SAT16
    - VARDECL
    - ALLOC
    - celt_assert
    - silk_memset
    - SILK_FIX_CONST
    - silk_find_LTP_FIX
    - silk_LTP_analysis_filter_FIX
    - silk_memcpy
    - silk_find_LPC_FIX
    - silk_SMULWW
    - silk_max
    linkageType: ''
    returnType: void
    signature: "void silk_find_pred_coefs_FIX(\n    silk_encoder_state_FIX          *psEnc,
      \                                /* I/O  encoder state                                                               */\n
      \   silk_encoder_control_FIX        *psEncCtrl,                             /*
      I/O  encoder control                                                             */\n
      \   const opus_int16                res_pitch[],                            /*
      I    Residual from pitch analysis                                                */\n
      \   const opus_int16                x[],                                    /*
      I    Speech signal                                                               */\n
      \   opus_int                        condCoding                              /*
      I    The type of conditional coding to use                                       */\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: silk_sum_sqr_shift
      Src: /src/opus/silk/fixed/find_LTP_FIX.c:56,1
    - Dst: silk_corrMatrix_FIX
      Src: /src/opus/silk/fixed/find_LTP_FIX.c:57,1
    - Dst: silk_RSHIFT32
      Src: /src/opus/silk/fixed/find_LTP_FIX.c:63,1
    - Dst: silk_RSHIFT32
      Src: /src/opus/silk/fixed/find_LTP_FIX.c:65,1
    - Dst: silk_RSHIFT32
      Src: /src/opus/silk/fixed/find_LTP_FIX.c:69,1
    - Dst: silk_corrVector_FIX
      Src: /src/opus/silk/fixed/find_LTP_FIX.c:73,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/find_LTP_FIX.c:76,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/find_LTP_FIX.c:76,1
    - Dst: silk_max
      Src: /src/opus/silk/fixed/find_LTP_FIX.c:77,1
    - Dst: TIC
      Src: /src/opus/silk/fixed/find_LTP_FIX.c:78,1
    - Dst: silk_DIV32_varQ
      Src: /src/opus/silk/fixed/find_LTP_FIX.c:81,1
    - Dst: silk_DIV32_varQ
      Src: /src/opus/silk/fixed/find_LTP_FIX.c:84,1
    - Dst: silk_LSHIFT64
      Src: /src/opus/silk/fixed/find_LTP_FIX.c:88,1
    - Dst: silk_LSHIFT64
      Src: /src/opus/silk/fixed/find_LTP_FIX.c:91,1
    - Dst: TOC
      Src: /src/opus/silk/fixed/find_LTP_FIX.c:94,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 41
    argCount: 7
    argNames:
    - XXLTP_Q17
    - xXLTP_Q17
    - r_ptr
    - lag
    - subfr_length
    - nb_subfr
    - arch
    argTypes:
    - opus_int32[]
    - opus_int32[]
    - opus_int16[]
    - opus_int[]
    - opus_int
    - opus_int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 35
    functionDepth: 3
    functionLinenumber: 35
    functionLinenumberEnd: 99
    functionName: silk_find_LTP_FIX
    functionSourceFile: /src/opus/silk/fixed/find_LTP_FIX.c
    functionUses: 1
    functionsReached:
    - silk_corrMatrix_FIX
    - silk_DIV32_varQ
    - TOC
    - silk_SMLAWB
    - silk_RSHIFT32
    - TIC
    - silk_LSHIFT64
    - silk_sum_sqr_shift
    - SILK_FIX_CONST
    - silk_max
    - silk_corrVector_FIX
    linkageType: ''
    returnType: void
    signature: "void silk_find_LTP_FIX(\n    opus_int32                      XXLTP_Q17[
      MAX_NB_SUBFR * LTP_ORDER * LTP_ORDER ], /* O    Correlation matrix                                               */\n
      \   opus_int32                      xXLTP_Q17[ MAX_NB_SUBFR * LTP_ORDER ],  /*
      O    Correlation vector                                                          */\n
      \   const opus_int16                r_ptr[],                                /*
      I    Residual signal after LPC                                                   */\n
      \   const opus_int                  lag[ MAX_NB_SUBFR ],                    /*
      I    LTP lags                                                                    */\n
      \   const opus_int                  subfr_length,                           /*
      I    Subframe length                                                             */\n
      \   const opus_int                  nb_subfr,                               /*
      I    Number of subframes                                                         */\n
      \   int                             arch                                    /*
      I    Run-time architecture                                                       */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_SMULBB
      Src: /src/opus/silk/fixed/LTP_analysis_filter_FIX.c:68,1
    - Dst: silk_SMLABB_ovflw
      Src: /src/opus/silk/fixed/LTP_analysis_filter_FIX.c:69,1
    - Dst: silk_SMLABB_ovflw
      Src: /src/opus/silk/fixed/LTP_analysis_filter_FIX.c:70,1
    - Dst: silk_SMLABB_ovflw
      Src: /src/opus/silk/fixed/LTP_analysis_filter_FIX.c:71,1
    - Dst: silk_SMLABB_ovflw
      Src: /src/opus/silk/fixed/LTP_analysis_filter_FIX.c:72,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/fixed/LTP_analysis_filter_FIX.c:74,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/fixed/LTP_analysis_filter_FIX.c:77,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/fixed/LTP_analysis_filter_FIX.c:80,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 25
    argCount: 8
    argNames:
    - LTP_res
    - x
    - LTPCoef_Q14
    - pitchL
    - invGains_Q16
    - subfr_length
    - nb_subfr
    - pre_length
    argTypes:
    - opus_int16*
    - opus_int16*
    - opus_int16[]
    - opus_int[]
    - opus_int32[]
    - opus_int
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 89
    functionName: silk_LTP_analysis_filter_FIX
    functionSourceFile: /src/opus/silk/fixed/LTP_analysis_filter_FIX.c
    functionUses: 1
    functionsReached:
    - silk_SMULWB
    - silk_SMULBB
    - silk_SAT16
    - silk_RSHIFT_ROUND
    - silk_SMLABB_ovflw
    linkageType: ''
    returnType: void
    signature: "void silk_LTP_analysis_filter_FIX(\n    opus_int16                      *LTP_res,
      \                              /* O    LTP residual signal of length MAX_NB_SUBFR
      * ( pre_length + subfr_length )  */\n    const opus_int16                *x,
      \                                    /* I    Pointer to input signal with at
      least max( pitchL ) preceding samples       */\n    const opus_int16                LTPCoef_Q14[
      LTP_ORDER * MAX_NB_SUBFR ],/* I    LTP_ORDER LTP coefficients for each MAX_NB_SUBFR
      subframe                   */\n    const opus_int                  pitchL[ MAX_NB_SUBFR
      ],                 /* I    Pitch lag, one for each subframe                                            */\n
      \   const opus_int32                invGains_Q16[ MAX_NB_SUBFR ],           /*
      I    Inverse quantization gains, one for each subframe                           */\n
      \   const opus_int                  subfr_length,                           /*
      I    Length of each subframe                                                     */\n
      \   const opus_int                  nb_subfr,                               /*
      I    Number of subframes                                                         */\n
      \   const opus_int                  pre_length                              /*
      I    Length of the preceding samples starting at &x[0] for each subframe         */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:51,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:53,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:53,1
    - Dst: silk_INVERSE32_varQ
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:54,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - coefs_Q24
    - lambda_Q16
    - order
    argTypes:
    - opus_int32*
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 40
    functionDepth: 2
    functionLinenumber: 40
    functionLinenumberEnd: 55
    functionName: warped_gain
    functionSourceFile: /src/opus/silk/fixed/noise_shape_analysis_FIX.c
    functionUses: 0
    functionsReached:
    - silk_SMLAWB
    - silk_INVERSE32_varQ
    - SILK_FIX_CONST
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE warped_gain( /* gain in Q16*/\n    const opus_int32     *coefs_Q24,\n
      \   opus_int             lambda_Q16,\n    opus_int             order\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:73,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:76,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:76,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:77,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:77,1
    - Dst: silk_DIV32_varQ
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:78,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:80,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:82,1
    - Dst: silk_abs_int32
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:87,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:94,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:102,1
    - Dst: silk_INVERSE32_varQ
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:104,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:106,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:110,1
    - Dst: silk_DIV32_varQ
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:110,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:111,1
    - Dst: silk_SMLABB
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:111,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:111,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:111,1
    - Dst: silk_MUL
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:112,1
    - Dst: silk_bwexpander_32
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:113,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:118,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:121,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:121,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:122,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:122,1
    - Dst: silk_DIV32_varQ
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:123,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:125,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:128,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 48
    argCount: 4
    argNames:
    - coefs_Q24
    - lambda_Q16
    - limit_Q24
    - order
    argTypes:
    - opus_int32*
    - opus_int
    - opus_int32
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 59
    functionDepth: 2
    functionLinenumber: 59
    functionLinenumberEnd: 129
    functionName: limit_warped_coefs
    functionSourceFile: /src/opus/silk/fixed/noise_shape_analysis_FIX.c
    functionUses: 0
    functionsReached:
    - silk_DIV32_varQ
    - silk_SMULWW
    - silk_RSHIFT
    - silk_SMULWB
    - silk_assert
    - silk_SMLABB
    - silk_SMLAWB
    - silk_bwexpander_32
    - SILK_FIX_CONST
    - silk_INVERSE32_varQ
    - silk_MUL
    - silk_abs_int32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE limit_warped_coefs(\n    opus_int32           *coefs_Q24,\n
      \   opus_int             lambda_Q16,\n    opus_int32           limit_Q24,\n
      \   opus_int             order\n)"
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:150,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:163,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:167,1
    - Dst: silk_sigm_Q15
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:167,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:167,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:168,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:172,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:173,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:173,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:174,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:175,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:175,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:176,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:176,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:181,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:181,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:184,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:185,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:185,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:185,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:186,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:198,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:202,1
    - Dst: silk_sum_sqr_shift
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:204,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:205,1
    - Dst: silk_lin2log
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:207,1
    - Dst: silk_abs
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:209,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:216,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:227,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:227,1
    - Dst: silk_DIV32_varQ
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:228,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:228,1
    - Dst: silk_SMLAWW
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:229,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:229,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:233,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:233,1
    - Dst: ALLOC
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:241,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:246,1
    - Dst: silk_apply_sine_window
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:248,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:250,1
    - Dst: silk_apply_sine_window
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:252,1
    - Dst: silk_warped_autocorrelation_FIX
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:259,1
    - Dst: silk_autocorr
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:262,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:266,1
    - Dst: silk_max_32
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:266,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:266,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:266,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:267,1
    - Dst: silk_schur64
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:270,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:271,1
    - Dst: silk_k2a_Q16
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:274,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:277,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:278,1
    - Dst: silk_SQRT_APPROX
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:286,1
    - Dst: silk_LSHIFT_SAT32
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:289,1
    - Dst: warped_gain
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:293,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:294,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:295,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:296,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:298,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:298,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:302,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:305,1
    - Dst: silk_bwexpander_32
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:309,1
    - Dst: limit_warped_coefs
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:313,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:313,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:317,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:317,1
    - Dst: silk_LPC_fit
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:320,1
    - Dst: silk_log2lin
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:328,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:328,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:328,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:328,1
    - Dst: silk_log2lin
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:329,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:329,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:329,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:329,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:329,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:330,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:332,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:333,1
    - Dst: silk_ADD_POS_SAT32
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:334,1
    - Dst: silk_MUL
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:342,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:342,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:342,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:342,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:343,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:343,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:344,1
    - Dst: silk_MUL
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:344,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:348,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:348,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:350,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:350,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:352,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:352,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:352,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:353,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:355,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:355,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:355,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:356,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:357,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:357,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:357,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:358,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:358,1
    - Dst: silk_DIV32_16
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:360,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:362,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:362,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:363,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:363,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:363,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:364,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:368,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:376,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:376,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:377,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:377,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:377,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:377,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:378,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:381,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:381,1
    - Dst: silk_SQRT_APPROX
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:382,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:382,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:392,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:392,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:394,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:394,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:396,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/fixed/noise_shape_analysis_FIX.c:397,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 142
    argCount: 5
    argNames:
    - psEnc
    - psEncCtrl
    - pitch_res
    - x
    - arch
    argTypes:
    - silk_encoder_state_FIX*
    - silk_encoder_control_FIX*
    - opus_int16*
    - opus_int16*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 134
    functionDepth: 3
    functionLinenumber: 134
    functionLinenumberEnd: 400
    functionName: silk_noise_shape_analysis_FIX
    functionSourceFile: /src/opus/silk/fixed/noise_shape_analysis_FIX.c
    functionUses: 1
    functionsReached:
    - warped_gain
    - silk_SMULWB
    - silk_SMULBB
    - silk_autocorr
    - silk_ADD32
    - silk_SMLAWB
    - silk_log2lin
    - silk_bwexpander_32
    - silk_schur64
    - silk_sigm_Q15
    - silk_SQRT_APPROX
    - silk_abs
    - silk_DIV32_varQ
    - limit_warped_coefs
    - silk_RSHIFT
    - silk_assert
    - silk_SAT16
    - VARDECL
    - ALLOC
    - silk_lin2log
    - silk_sum_sqr_shift
    - silk_MUL
    - silk_apply_sine_window
    - silk_LPC_fit
    - silk_LSHIFT32
    - silk_LSHIFT
    - silk_max_32
    - SILK_FIX_CONST
    - silk_k2a_Q16
    - silk_DIV32_16
    - silk_memcpy
    - silk_SMULWW
    - silk_warped_autocorrelation_FIX
    - silk_SMLAWW
    - silk_ADD_POS_SAT32
    - silk_RSHIFT_ROUND
    - silk_LSHIFT_SAT32
    linkageType: ''
    returnType: void
    signature: "void silk_noise_shape_analysis_FIX(\n    silk_encoder_state_FIX          *psEnc,
      \                                /* I/O  Encoder state FIX                                                           */\n
      \   silk_encoder_control_FIX        *psEncCtrl,                             /*
      I/O  Encoder control FIX                                                         */\n
      \   const opus_int16                *pitch_res,                             /*
      I    LPC residual from pitch analysis                                            */\n
      \   const opus_int16                *x,                                     /*
      I    Input signal [ frame_length + la_shape ]                                    */\n
      \   int                              arch                                   /*
      I    Run-time architecture                                                       */\n)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: silk_burg_modified
      Src: /src/opus/silk/fixed/find_LPC_FIX.c:63,1
    - Dst: VARDECL
      Src: /src/opus/silk/fixed/find_LPC_FIX.c:66,1
    - Dst: silk_burg_modified
      Src: /src/opus/silk/fixed/find_LPC_FIX.c:69,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/find_LPC_FIX.c:76,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/find_LPC_FIX.c:79,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/find_LPC_FIX.c:80,1
    - Dst: silk_A2NLSF
      Src: /src/opus/silk/fixed/find_LPC_FIX.c:85,1
    - Dst: ALLOC
      Src: /src/opus/silk/fixed/find_LPC_FIX.c:87,1
    - Dst: silk_interpolate
      Src: /src/opus/silk/fixed/find_LPC_FIX.c:92,1
    - Dst: silk_NLSF2A
      Src: /src/opus/silk/fixed/find_LPC_FIX.c:95,1
    - Dst: silk_LPC_analysis_filter
      Src: /src/opus/silk/fixed/find_LPC_FIX.c:98,1
    - Dst: silk_sum_sqr_shift
      Src: /src/opus/silk/fixed/find_LPC_FIX.c:100,1
    - Dst: silk_sum_sqr_shift
      Src: /src/opus/silk/fixed/find_LPC_FIX.c:101,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/find_LPC_FIX.c:106,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/find_LPC_FIX.c:109,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/fixed/find_LPC_FIX.c:112,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/find_LPC_FIX.c:117,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/fixed/find_LPC_FIX.c:124,1
    - Dst: silk_A2NLSF
      Src: /src/opus/silk/fixed/find_LPC_FIX.c:146,1
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/find_LPC_FIX.c:149,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 65
    argCount: 4
    argNames:
    - psEncC
    - NLSF_Q15
    - x
    - minInvGain_Q30
    argTypes:
    - silk_encoder_state*
    - opus_int16[]
    - opus_int16[]
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 37
    functionDepth: 4
    functionLinenumber: 37
    functionLinenumberEnd: 151
    functionName: silk_find_LPC_FIX
    functionSourceFile: /src/opus/silk/fixed/find_LPC_FIX.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - silk_A2NLSF
    - silk_RSHIFT
    - silk_burg_modified
    - silk_assert
    - silk_interpolate
    - silk_NLSF2A
    - silk_ADD32
    - VARDECL
    - ALLOC
    - silk_sum_sqr_shift
    - silk_LPC_analysis_filter
    linkageType: ''
    returnType: void
    signature: "void silk_find_LPC_FIX(\n    silk_encoder_state              *psEncC,
      \                               /* I/O  Encoder state                                                               */\n
      \   opus_int16                      NLSF_Q15[],                             /*
      O    NLSFs                                                                       */\n
      \   const opus_int16                x[],                                    /*
      I    Input signal                                                                */\n
      \   const opus_int32                minInvGain_Q30                          /*
      I    Inverse of max prediction gain                                              */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_SMULWB
      Src: /src/opus/silk/fixed/vector_ops_FIX.c:47,1
    - Dst: silk_CHECK_FIT16
      Src: /src/opus/silk/fixed/vector_ops_FIX.c:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - data_out
    - data_in
    - gain_Q16
    - dataSize
    argTypes:
    - opus_int16*
    - opus_int16*
    - opus_int32
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 50
    functionName: silk_scale_copy_vector16
    functionSourceFile: /src/opus/silk/fixed/vector_ops_FIX.c
    functionUses: 1
    functionsReached:
    - silk_CHECK_FIT16
    - silk_SMULWB
    linkageType: ''
    returnType: void
    signature: "void silk_scale_copy_vector16(\n    opus_int16                  *data_out,\n
      \   const opus_int16            *data_in,\n    opus_int32                  gain_Q16,
      \          /* I    Gain in Q16                                                 */\n
      \   const opus_int              dataSize            /* I    Length                                                      */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_CHECK_FIT32
      Src: /src/opus/silk/fixed/vector_ops_FIX.c:62,1
    - Dst: silk_RSHIFT64
      Src: /src/opus/silk/fixed/vector_ops_FIX.c:62,1
    - Dst: silk_SMULL
      Src: /src/opus/silk/fixed/vector_ops_FIX.c:62,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - data1
    - gain_Q26
    - dataSize
    argTypes:
    - opus_int32*
    - opus_int32
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 64
    functionName: silk_scale_vector32_Q26_lshift_18
    functionSourceFile: /src/opus/silk/fixed/vector_ops_FIX.c
    functionUses: 0
    functionsReached:
    - silk_CHECK_FIT32
    - silk_RSHIFT64
    - silk_SMULL
    linkageType: ''
    returnType: void
    signature: "void silk_scale_vector32_Q26_lshift_18(\n    opus_int32                  *data1,
      \            /* I/O  Q0/Q18                                                      */\n
      \   opus_int32                  gain_Q26,           /* I    Q26                                                         */\n
      \   opus_int                    dataSize            /* I    length                                                      */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_inner_prod
      Src: /src/opus/silk/fixed/vector_ops_FIX.c:79,1
    - Dst: silk_SMLABB
      Src: /src/opus/silk/fixed/vector_ops_FIX.c:84,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - inVec1
    - inVec2
    - len
    - arch
    argTypes:
    - opus_int16*
    - opus_int16*
    - opus_int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 88
    functionName: silk_inner_prod_aligned
    functionSourceFile: /src/opus/silk/fixed/vector_ops_FIX.c
    functionUses: 5
    functionsReached:
    - silk_SMLABB
    - celt_inner_prod
    linkageType: ''
    returnType: opus_int32
    signature: "opus_int32 silk_inner_prod_aligned(\n    const opus_int16 *const     inVec1,
      \            /*    I input vector 1                                              */\n
      \   const opus_int16 *const     inVec2,             /*    I input vector 2                                              */\n
      \   const opus_int              len,                /*    I vector lengths                                              */\n
      \   int                         arch                /*    I Run-time architecture
      \                                      */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_SMLALBB
      Src: /src/opus/silk/fixed/vector_ops_FIX.c:99,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - inVec1
    - inVec2
    - len
    argTypes:
    - opus_int16*
    - opus_int16*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 102
    functionName: silk_inner_prod16_c
    functionSourceFile: /src/opus/silk/fixed/vector_ops_FIX.c
    functionUses: 0
    functionsReached:
    - silk_SMLALBB
    linkageType: ''
    returnType: opus_int64
    signature: "opus_int64 silk_inner_prod16_c(\n    const opus_int16            *inVec1,
      \           /*    I input vector 1                                              */\n
      \   const opus_int16            *inVec2,            /*    I input vector 2                                              */\n
      \   const opus_int              len                 /*    I vector lengths                                              */\n)"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:74,1
    - Dst: celt_assert
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:76,1
    - Dst: silk_inner_prod16
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:79,1
    - Dst: silk_CLZ64
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:80,1
    - Dst: silk_RSHIFT64
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:86,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:88,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:91,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:91,1
    - Dst: silk_memset
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:92,1
    - Dst: silk_RSHIFT64
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:97,1
    - Dst: silk_inner_prod16
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:98,1
    - Dst: celt_pitch_xcorr
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:106,1
    - Dst: MAC16_16
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:109,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:113,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:117,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:120,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:120,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:132,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:133,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:134,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:135,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:137,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:138,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:140,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:141,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:143,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:144,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:146,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:147,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:153,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:154,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:155,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:156,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:158,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:159,1
    - Dst: _mm_setzero_si128
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:160,1
    - Dst: _mm_setzero_si128
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:161,1
    - Dst: OP_CVTEPI16_EPI32_M64
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:163,1
    - Dst: OP_CVTEPI16_EPI32_M64
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:164,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:165,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:166,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:166,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:167,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:168,1
    - Dst: _mm_mullo_epi32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:170,1
    - Dst: _mm_mullo_epi32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:171,1
    - Dst: _mm_srai_epi32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:173,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:174,1
    - Dst: _mm_srai_epi32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:175,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:177,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:178,1
    - Dst: _mm_mullo_epi32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:180,1
    - Dst: _mm_mullo_epi32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:181,1
    - Dst: _mm_storeu_si128
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:183,1
    - Dst: _mm_storeu_si128
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:184,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:186,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:187,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:190,1
    - Dst: _mm_unpackhi_epi64
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:190,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:191,1
    - Dst: _mm_unpackhi_epi64
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:191,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:192,1
    - Dst: _mm_shufflelo_epi16
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:192,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:193,1
    - Dst: _mm_shufflelo_epi16
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:193,1
    - Dst: _mm_cvtsi128_si32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:195,1
    - Dst: _mm_cvtsi128_si32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:196,1
    - Dst: silk_MLA
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:199,1
    - Dst: silk_MLA
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:200,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:201,1
    - Dst: silk_MLA_ovflw
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:205,1
    - Dst: silk_MLA_ovflw
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:206,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:217,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:218,1
    - Dst: OP_CVTEPI16_EPI32_M64
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:221,1
    - Dst: OP_CVTEPI16_EPI32_M64
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:222,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:224,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:224,1
    - Dst: _mm_slli_epi32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:226,1
    - Dst: _mm_slli_epi32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:227,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:230,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:230,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:231,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:231,1
    - Dst: _mm_mul_epi32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:233,1
    - Dst: _mm_mul_epi32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:234,1
    - Dst: _mm_mul_epi32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:235,1
    - Dst: _mm_mul_epi32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:236,1
    - Dst: _mm_srli_epi64
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:238,1
    - Dst: _mm_slli_epi64
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:239,1
    - Dst: _mm_srli_epi64
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:240,1
    - Dst: _mm_slli_epi64
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:241,1
    - Dst: _mm_blend_epi16
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:243,1
    - Dst: _mm_blend_epi16
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:244,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:246,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:247,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:249,1
    - Dst: _mm_add_epi32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:250,1
    - Dst: _mm_storeu_si128
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:252,1
    - Dst: _mm_storeu_si128
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:253,1
    - Dst: silk_SMLAWW
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:257,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:258,1
    - Dst: silk_SMLAWW
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:259,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:260,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:270,1
    - Dst: silk_CLZ32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:273,1
    - Dst: silk_abs
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:273,1
    - Dst: silk_min
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:274,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:275,1
    - Dst: silk_ADD_LSHIFT32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:277,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:277,1
    - Dst: silk_ADD_LSHIFT32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:278,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:278,1
    - Dst: silk_ADD_LSHIFT32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:279,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:279,1
    - Dst: silk_ADD_LSHIFT32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:280,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:280,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:280,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:285,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:286,1
    - Dst: silk_abs
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:289,1
    - Dst: silk_DIV32_varQ
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:290,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:296,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:297,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:297,1
    - Dst: silk_DIV32_varQ
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:300,1
    - Dst: silk_SQRT_APPROX
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:301,1
    - Dst: silk_RSHIFT32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:304,1
    - Dst: silk_DIV32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:304,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:305,1
    - Dst: silk_ADD_LSHIFT32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:321,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:321,1
    - Dst: silk_ADD_LSHIFT32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:322,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:322,1
    - Dst: silk_RSHIFT32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:324,1
    - Dst: silk_ADD_LSHIFT32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:338,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:338,1
    - Dst: silk_ADD_LSHIFT32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:339,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:339,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:346,1
    - Dst: silk_RSHIFT64
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:352,1
    - Dst: silk_inner_prod16
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:352,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:357,1
    - Dst: silk_inner_prod_aligned
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:357,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:361,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:361,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:368,1
    - Dst: silk_SMLAWW
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:369,1
    - Dst: silk_SMLAWW
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:370,1
    - Dst: silk_SMLAWW
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:373,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:373,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:373,1
    - Dst: silk_burg_modified_c
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:383,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:395,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:396,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:397,1
    - Dst: memcmp
      Src: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c:397,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 238
    argCount: 9
    argNames:
    - res_nrg
    - res_nrg_Q
    - A_Q16
    - x
    - minInvGain_Q30
    - subfr_length
    - nb_subfr
    - D
    - arch
    argTypes:
    - opus_int32*
    - opus_int*
    - opus_int32[]
    - opus_int16[]
    - opus_int32
    - opus_int
    - opus_int
    - opus_int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 50
    functionDepth: 4
    functionLinenumber: 50
    functionLinenumberEnd: 400
    functionName: silk_burg_modified_sse4_1
    functionSourceFile: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c
    functionUses: 0
    functionsReached:
    - _mm_shuffle_epi32
    - _mm_storeu_si128
    - _mm_srli_epi64
    - _mm_cvtsi128_si32
    - silk_DIV32
    - silk_ADD32
    - silk_SMLAWB
    - _MM_SHUFFLE
    - silk_CLZ64
    - silk_MLA
    - silk_SQRT_APPROX
    - silk_abs
    - silk_min
    - silk_RSHIFT64
    - silk_DIV32_varQ
    - _mm_mullo_epi32
    - silk_assert
    - silk_RSHIFT_ROUND
    - OP_CVTEPI16_EPI32_M64
    - _mm_shufflelo_epi16
    - silk_inner_prod16
    - _mm_slli_epi32
    - silk_burg_modified_c
    - silk_inner_prod_aligned
    - celt_assert
    - MAC16_16
    - silk_ADD_LSHIFT32
    - silk_LSHIFT
    - silk_memset
    - _mm_add_epi32
    - _mm_unpackhi_epi64
    - _mm_mul_epi32
    - _mm_slli_epi64
    - _mm_loadu_si128
    - celt_pitch_xcorr
    - silk_SMMUL
    - _mm_setzero_si128
    - SILK_FIX_CONST
    - _mm_blend_epi16
    - silk_memcpy
    - silk_CLZ32
    - memcmp
    - _mm_set1_epi32
    - silk_SMLAWW
    - _mm_srai_epi32
    - silk_MLA_ovflw
    - silk_RSHIFT32
    - silk_LSHIFT32
    linkageType: ''
    returnType: void
    signature: "void silk_burg_modified_sse4_1(\n    opus_int32                  *res_nrg,
      \          /* O    Residual energy                                             */\n
      \   opus_int                    *res_nrg_Q,         /* O    Residual energy
      Q value                                     */\n    opus_int32                  A_Q16[],
      \           /* O    Prediction coefficients (length order)                      */\n
      \   const opus_int16            x[],                /* I    Input signal, length:
      nb_subfr * ( D + subfr_length )       */\n    const opus_int32            minInvGain_Q30,
      \    /* I    Inverse of max prediction gain                              */\n
      \   const opus_int              subfr_length,       /* I    Input signal subframe
      length (incl. D preceding samples)    */\n    const opus_int              nb_subfr,
      \          /* I    Number of subframes stacked in x                            */\n
      \   const opus_int              D,                  /* I    Order                                                       */\n
      \   int                         arch                /* I    Run-time architecture
      \                                      */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_setzero_si128
      Src: /src/opus/silk/fixed/x86/vector_ops_FIX_sse4_1.c:57,1
    - Dst: _mm_setzero_si128
      Src: /src/opus/silk/fixed/x86/vector_ops_FIX_sse4_1.c:58,1
    - Dst: OP_CVTEPI16_EPI32_M64
      Src: /src/opus/silk/fixed/x86/vector_ops_FIX_sse4_1.c:61,1
    - Dst: OP_CVTEPI16_EPI32_M64
      Src: /src/opus/silk/fixed/x86/vector_ops_FIX_sse4_1.c:62,1
    - Dst: _mm_mul_epi32
      Src: /src/opus/silk/fixed/x86/vector_ops_FIX_sse4_1.c:63,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/fixed/x86/vector_ops_FIX_sse4_1.c:65,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/silk/fixed/x86/vector_ops_FIX_sse4_1.c:65,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/fixed/x86/vector_ops_FIX_sse4_1.c:66,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/silk/fixed/x86/vector_ops_FIX_sse4_1.c:66,1
    - Dst: _mm_mul_epi32
      Src: /src/opus/silk/fixed/x86/vector_ops_FIX_sse4_1.c:67,1
    - Dst: _mm_add_epi64
      Src: /src/opus/silk/fixed/x86/vector_ops_FIX_sse4_1.c:69,1
    - Dst: _mm_add_epi64
      Src: /src/opus/silk/fixed/x86/vector_ops_FIX_sse4_1.c:70,1
    - Dst: _mm_add_epi64
      Src: /src/opus/silk/fixed/x86/vector_ops_FIX_sse4_1.c:73,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/silk/fixed/x86/vector_ops_FIX_sse4_1.c:76,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/silk/fixed/x86/vector_ops_FIX_sse4_1.c:76,1
    - Dst: _mm_add_epi64
      Src: /src/opus/silk/fixed/x86/vector_ops_FIX_sse4_1.c:77,1
    - Dst: _mm_storel_epi64
      Src: /src/opus/silk/fixed/x86/vector_ops_FIX_sse4_1.c:79,1
    - Dst: silk_SMLALBB
      Src: /src/opus/silk/fixed/x86/vector_ops_FIX_sse4_1.c:82,1
    - Dst: silk_inner_prod16_c
      Src: /src/opus/silk/fixed/x86/vector_ops_FIX_sse4_1.c:87,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/x86/vector_ops_FIX_sse4_1.c:88,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 25
    argCount: 3
    argNames:
    - inVec1
    - inVec2
    - len
    argTypes:
    - opus_int16*
    - opus_int16*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 93
    functionName: silk_inner_prod16_sse4_1
    functionSourceFile: /src/opus/silk/fixed/x86/vector_ops_FIX_sse4_1.c
    functionUses: 0
    functionsReached:
    - _mm_shuffle_epi32
    - silk_assert
    - _mm_add_epi64
    - OP_CVTEPI16_EPI32_M64
    - _mm_mul_epi32
    - silk_SMLALBB
    - _MM_SHUFFLE
    - _mm_setzero_si128
    - _mm_storel_epi64
    - silk_inner_prod16_c
    linkageType: ''
    returnType: opus_int64
    signature: "opus_int64 silk_inner_prod16_sse4_1(\n    const opus_int16            *inVec1,
      \           /*    I input vector 1                                              */\n
      \   const opus_int16            *inVec2,            /*    I input vector 2                                              */\n
      \   const opus_int              len                 /*    I vector lengths                                              */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - acc
    - a
    - b
    argTypes:
    - long long
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionName: MIPS_MADD
    functionSourceFile: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: long long
    signature: long long MIPS_MADD(long long acc, int a, int b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - acc
    - sh
    argTypes:
    - long long
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 52
    functionName: MIPS_SHILO
    functionSourceFile: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: long long
    signature: long long MIPS_SHILO(long long acc, int sh)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:86,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:87,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:92,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:94,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:96,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:98,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:103,1
    - Dst: MIPS_MADD
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:104,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:106,1
    - Dst: MIPS_MADD
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:107,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:109,1
    - Dst: MIPS_MADD
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:110,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:112,1
    - Dst: MIPS_MADD
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:114,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:117,1
    - Dst: MIPS_MADD
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:118,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:120,1
    - Dst: MIPS_MADD
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:121,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:123,1
    - Dst: MIPS_MADD
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:124,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:126,1
    - Dst: MIPS_MADD
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:128,1
    - Dst: MIPS_MADD
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:133,1
    - Dst: MIPS_MADD
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:134,1
    - Dst: MIPS_MADD
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:135,1
    - Dst: MIPS_MADD
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:136,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:141,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:147,1
    - Dst: MIPS_MADD
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:149,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:152,1
    - Dst: MIPS_MADD
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:154,1
    - Dst: MIPS_MADD
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:157,1
    - Dst: MIPS_SHILO
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:161,1
    - Dst: silk_CLZ64
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:163,1
    - Dst: silk_LIMIT
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:164,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:166,1
    - Dst: silk_CHECK_FIT32
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:172,1
    - Dst: MIPS_SHILO
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:172,1
    - Dst: silk_CHECK_FIT32
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:179,1
    - Dst: MIPS_SHILO
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:179,1
    - Dst: MIPS_SHILO
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:183,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h:185,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 72
    argCount: 6
    argNames:
    - corr
    - scale
    - input
    - warping_Q16
    - length
    - order
    argTypes:
    - opus_int32*
    - opus_int*
    - opus_int16*
    - opus_int
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 186
    functionName: silk_warped_autocorrelation_FIX_c
    functionSourceFile: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h
    functionUses: 0
    functionsReached:
    - silk_LIMIT
    - silk_CHECK_FIT32
    - silk_assert
    - MIPS_MADD
    - MIPS_SHILO
    - silk_SMLAWB
    - silk_CLZ64
    - silk_LSHIFT32
    linkageType: ''
    returnType: void
    signature: "void silk_warped_autocorrelation_FIX_c(\n          opus_int32                *corr,
      \                                 /* O    Result [order + 1]                                                          */\n
      \         opus_int                  *scale,                                 /*
      O    Scaling of the correlation vector                                           */\n
      \   const opus_int16                *input,                                 /*
      I    Input data to correlate                                                     */\n
      \   const opus_int                  warping_Q16,                            /*
      I    Warping coefficient                                                         */\n
      \   const opus_int                  length,                                 /*
      I    Length of input                                                             */\n
      \   const opus_int                  order                                   /*
      I    Correlation order (even)                                                    */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vld1q_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:42,1
    - Dst: vld1q_s64
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:43,1
    - Dst: vld1q_s64
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:44,1
    - Dst: vmull_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:45,1
    - Dst: vget_low_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:45,1
    - Dst: vget_low_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:45,1
    - Dst: vmull_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:46,1
    - Dst: vget_high_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:46,1
    - Dst: vget_high_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:46,1
    - Dst: vsraq_n_s64
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:47,1
    - Dst: vsraq_n_s64
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:48,1
    - Dst: vst1q_s64
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:49,1
    - Dst: vst1q_s64
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 4
    argNames:
    - input_QS
    - corr_QC
    - offset
    - state_QS_s32x4
    argTypes:
    - opus_int32*
    - opus_int64*
    - opus_int
    - int32x4_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 51
    functionName: calc_corr
    functionSourceFile: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c
    functionUses: 0
    functionsReached:
    - vsraq_n_s64
    - vld1q_s32
    - vget_low_s32
    - vget_high_s32
    - vld1q_s64
    - vmull_s32
    - vst1q_s64
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE calc_corr( const opus_int32 *const input_QS, opus_int64
      *const corr_QC, const opus_int offset, const int32x4_t state_QS_s32x4 )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vsubq_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:55,1
    - Dst: vqdmulhq_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:56,1
    - Dst: vaddq_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - state_QS0_s32x4
    - state_QS0_1_s32x4
    - state_QS1_1_s32x4
    - warping_Q16_s32x4
    argTypes:
    - int32x4_t
    - int32x4_t
    - int32x4_t
    - int32x4_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 58
    functionName: calc_state
    functionSourceFile: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c
    functionUses: 0
    functionsReached:
    - vqdmulhq_s32
    - vsubq_s32
    - vaddq_s32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE calc_state( const int32x4_t state_QS0_s32x4, const int32x4_t
      state_QS0_1_s32x4, const int32x4_t state_QS1_1_s32x4, const int32x4_t warping_Q16_s32x4
      )
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: silk_warped_autocorrelation_FIX_c
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:70,1
    - Dst: VARDECL
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:79,1
    - Dst: VARDECL
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:80,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:84,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:85,1
    - Dst: ALLOC
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:89,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:93,1
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:93,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:95,1
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:95,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:97,1
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:97,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:99,1
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:99,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:101,1
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:101,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:103,1
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:103,1
    - Dst: vld1q_s16
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:108,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:109,1
    - Dst: vshll_n_s16
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:109,1
    - Dst: vget_low_s16
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:109,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:110,1
    - Dst: vshll_n_s16
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:110,1
    - Dst: vget_high_s16
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:110,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:113,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:115,1
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:115,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:117,1
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:117,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:119,1
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:119,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:121,1
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:121,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:123,1
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:123,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:125,1
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:125,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:127,1
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:127,1
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:155,1
    - Dst: ALLOC
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:161,1
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:162,1
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:167,1
    - Dst: calc_corr
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:170,1
    - Dst: calc_corr
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:171,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:172,1
    - Dst: vst1q_lane_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:173,1
    - Dst: vextq_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:174,1
    - Dst: vextq_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:175,1
    - Dst: calc_state
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:176,1
    - Dst: calc_state
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:177,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:188,1
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:189,1
    - Dst: calc_corr
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:192,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:193,1
    - Dst: vst1q_lane_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:194,1
    - Dst: vextq_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:195,1
    - Dst: calc_state
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:196,1
    - Dst: vdupq_n_s64
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:208,1
    - Dst: vld1q_s16
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:210,1
    - Dst: vmull_s16
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:211,1
    - Dst: vget_low_s16
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:211,1
    - Dst: vget_low_s16
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:211,1
    - Dst: vmlal_s16
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:212,1
    - Dst: vget_high_s16
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:212,1
    - Dst: vget_high_s16
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:212,1
    - Dst: vaddw_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:213,1
    - Dst: vget_low_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:213,1
    - Dst: vaddw_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:214,1
    - Dst: vget_high_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:214,1
    - Dst: vadd_s64
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:217,1
    - Dst: vget_low_s64
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:217,1
    - Dst: vget_high_s64
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:217,1
    - Dst: vget_lane_s64
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:218,1
    - Dst: silk_SMULL
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:220,1
    - Dst: silk_LSHIFT64
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:222,1
    - Dst: silk_CLZ64
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:227,1
    - Dst: silk_LIMIT
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:228,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:230,1
    - Dst: vdupq_n_s64
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:231,1
    - Dst: vld1q_s64
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:235,1
    - Dst: vld1q_s64
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:236,1
    - Dst: vshlq_s64
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:237,1
    - Dst: vshlq_s64
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:238,1
    - Dst: vcombine_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:239,1
    - Dst: vmovn_s64
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:239,1
    - Dst: vmovn_s64
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:239,1
    - Dst: vrev64q_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:240,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:241,1
    - Dst: silk_CHECK_FIT32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:245,1
    - Dst: silk_LSHIFT64
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:245,1
    - Dst: silk_CHECK_FIT32
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:249,1
    - Dst: silk_RSHIFT64
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:249,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:252,1
    - Dst: silk_warped_autocorrelation_FIX_c
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:260,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:261,1
    - Dst: memcmp
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:261,1
    - Dst: silk_assert
      Src: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c:262,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 126
    argCount: 6
    argNames:
    - corr
    - scale
    - input
    - warping_Q16
    - length
    - order
    argTypes:
    - opus_int32*
    - opus_int*
    - opus_int16*
    - opus_int
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 265
    functionName: silk_warped_autocorrelation_FIX_neon
    functionSourceFile: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c
    functionUses: 0
    functionsReached:
    - vcombine_s32
    - vmovn_s64
    - vget_low_s32
    - vst1q_s32
    - calc_corr
    - vget_high_s32
    - vshlq_s64
    - vget_high_s16
    - vdupq_n_s64
    - silk_CLZ64
    - silk_CHECK_FIT32
    - silk_warped_autocorrelation_FIX_c
    - silk_RSHIFT64
    - calc_state
    - silk_assert
    - VARDECL
    - ALLOC
    - vget_low_s64
    - vshll_n_s16
    - silk_LSHIFT64
    - vget_high_s64
    - vdupq_n_s32
    - vaddw_s32
    - vget_low_s16
    - vextq_s32
    - vadd_s64
    - silk_SMULL
    - silk_LIMIT
    - vld1q_s16
    - memcmp
    - vmlal_s16
    - vld1q_s32
    - vst1q_lane_s32
    - vrev64q_s32
    - vld1q_s64
    - vmull_s16
    - vget_lane_s64
    - silk_LSHIFT32
    linkageType: ''
    returnType: void
    signature: "void silk_warped_autocorrelation_FIX_neon(\n          opus_int32                *corr,
      \                                 /* O    Result [order + 1]                                                          */\n
      \         opus_int                  *scale,                                 /*
      O    Scaling of the correlation vector                                           */\n
      \   const opus_int16                *input,                                 /*
      I    Input data to correlate                                                     */\n
      \   const opus_int                  warping_Q16,                            /*
      I    Warping coefficient                                                         */\n
      \   const opus_int                  length,                                 /*
      I    Length of input                                                             */\n
      \   const opus_int                  order                                   /*
      I    Correlation order (even)                                                    */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 15
    argNames:
    - (
    - corr
    - ','
    - scale
    - ','
    - input
    - ','
    - warping_Q16
    - ','
    - length
    - ','
    - order
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionName: silk_warped_autocorrelation_FIX
    functionSourceFile: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_arm.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_warped_autocorrelation_FIX(corr, scale, input, warping_Q16, length,
      order, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 15
    argNames:
    - (
    - corr
    - ','
    - scale
    - ','
    - input
    - ','
    - warping_Q16
    - ','
    - length
    - ','
    - order
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 59
    functionName: silk_warped_autocorrelation_FIX
    functionSourceFile: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_arm.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_warped_autocorrelation_FIX(corr, scale, input, warping_Q16, length,
      order, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 15
    argNames:
    - (
    - corr
    - ','
    - scale
    - ','
    - input
    - ','
    - warping_Q16
    - ','
    - length
    - ','
    - order
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: silk_warped_autocorrelation_FIX
    functionSourceFile: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_arm.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_warped_autocorrelation_FIX(corr, scale, input, warping_Q16, length,
      order, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: MIPS_MULT
    functionSourceFile: /src/opus/silk/mips/NSQ_mips.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: long long
    signature: long long MIPS_MULT(int a, int b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - acc
    - a
    - b
    argTypes:
    - long long
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionName: MIPS_MADD
    functionSourceFile: /src/opus/silk/mips/NSQ_mips.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: long long
    signature: long long MIPS_MADD(long long acc, int a, int b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - acc
    - shift
    argTypes:
    - long long
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: MIPS_EXTR_R
    functionSourceFile: /src/opus/silk/mips/NSQ_mips.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: opus_val32
    signature: opus_val32 MIPS_EXTR_R(long long acc, int shift)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: silk_assert
      Src: /src/opus/silk/mips/NSQ_mips.h:73,1
    - Dst: MIPS_MULT
      Src: /src/opus/silk/mips/NSQ_mips.h:75,1
    - Dst: MIPS_MADD
      Src: /src/opus/silk/mips/NSQ_mips.h:76,1
    - Dst: MIPS_MADD
      Src: /src/opus/silk/mips/NSQ_mips.h:77,1
    - Dst: MIPS_MADD
      Src: /src/opus/silk/mips/NSQ_mips.h:78,1
    - Dst: MIPS_MADD
      Src: /src/opus/silk/mips/NSQ_mips.h:79,1
    - Dst: MIPS_MADD
      Src: /src/opus/silk/mips/NSQ_mips.h:80,1
    - Dst: MIPS_MADD
      Src: /src/opus/silk/mips/NSQ_mips.h:81,1
    - Dst: MIPS_MADD
      Src: /src/opus/silk/mips/NSQ_mips.h:82,1
    - Dst: MIPS_MADD
      Src: /src/opus/silk/mips/NSQ_mips.h:83,1
    - Dst: MIPS_MADD
      Src: /src/opus/silk/mips/NSQ_mips.h:84,1
    - Dst: MIPS_MADD
      Src: /src/opus/silk/mips/NSQ_mips.h:88,1
    - Dst: MIPS_MADD
      Src: /src/opus/silk/mips/NSQ_mips.h:89,1
    - Dst: MIPS_MADD
      Src: /src/opus/silk/mips/NSQ_mips.h:90,1
    - Dst: MIPS_MADD
      Src: /src/opus/silk/mips/NSQ_mips.h:91,1
    - Dst: MIPS_MADD
      Src: /src/opus/silk/mips/NSQ_mips.h:92,1
    - Dst: MIPS_MADD
      Src: /src/opus/silk/mips/NSQ_mips.h:93,1
    - Dst: MIPS_EXTR_R
      Src: /src/opus/silk/mips/NSQ_mips.h:95,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 21
    argCount: 3
    argNames:
    - buf32
    - coef16
    - order
    argTypes:
    - opus_int32*
    - opus_int16*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 96
    functionName: silk_noise_shape_quantizer_short_prediction_mips
    functionSourceFile: /src/opus/silk/mips/NSQ_mips.h
    functionUses: 0
    functionsReached:
    - MIPS_MULT
    - silk_assert
    - MIPS_MADD
    - MIPS_EXTR_R
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_noise_shape_quantizer_short_prediction_mips(const
      opus_int32 *buf32, const opus_int16 *coef16, opus_int order)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - in
    - ','
    - coef
    - ','
    - coefRev
    - ','
    - order
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 100
    functionName: silk_noise_shape_quantizer_short_prediction
    functionSourceFile: /src/opus/silk/mips/NSQ_mips.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_noise_shape_quantizer_short_prediction(in, coef, coefRev, order,
      arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MIPS_MULT
      Src: /src/opus/silk/mips/NSQ_mips.h:116,1
    - Dst: MIPS_MADD
      Src: /src/opus/silk/mips/NSQ_mips.h:121,1
    - Dst: MIPS_MADD
      Src: /src/opus/silk/mips/NSQ_mips.h:124,1
    - Dst: MIPS_MADD
      Src: /src/opus/silk/mips/NSQ_mips.h:127,1
    - Dst: MIPS_EXTR_R
      Src: /src/opus/silk/mips/NSQ_mips.h:129,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 4
    argNames:
    - data0
    - data1
    - coef
    - order
    argTypes:
    - opus_int32*
    - opus_int32*
    - opus_int16*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 130
    functionName: silk_NSQ_noise_shape_feedback_loop_mips
    functionSourceFile: /src/opus/silk/mips/NSQ_mips.h
    functionUses: 0
    functionsReached:
    - MIPS_EXTR_R
    - MIPS_MULT
    - MIPS_MADD
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_NSQ_noise_shape_feedback_loop_mips(const opus_int32
      *data0, opus_int32 *data1, const opus_int16 *coef, opus_int order)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - data0
    - ','
    - data1
    - ','
    - coef
    - ','
    - order
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 134
    functionName: silk_NSQ_noise_shape_feedback_loop
    functionSourceFile: /src/opus/silk/mips/NSQ_mips.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_NSQ_noise_shape_feedback_loop(data0, data1, coef, order, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: __builtin_mips_shll_s_w
      Src: /src/opus/silk/mips/sigproc_fix_mipsr1.h:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - a
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 39
    functionName: silk_SAT16
    functionSourceFile: /src/opus/silk/mips/sigproc_fix_mipsr1.h
    functionUses: 34
    functionsReached:
    - __builtin_mips_shll_s_w
    linkageType: ''
    returnType: short int
    signature: short int silk_SAT16(int a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: __builtin_mips_shll_s_w
      Src: /src/opus/silk/mips/sigproc_fix_mipsr1.h:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - shift
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 49
    functionName: silk_LSHIFT_SAT32
    functionSourceFile: /src/opus/silk/mips/sigproc_fix_mipsr1.h
    functionUses: 8
    functionsReached:
    - __builtin_mips_shll_s_w
    linkageType: ''
    returnType: int
    signature: int silk_LSHIFT_SAT32(int a, int shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: __builtin_mips_shra_r_w
      Src: /src/opus/silk/mips/sigproc_fix_mipsr1.h:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - shift
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 58
    functionName: silk_RSHIFT_ROUND
    functionSourceFile: /src/opus/silk/mips/sigproc_fix_mipsr1.h
    functionUses: 42
    functionsReached:
    - __builtin_mips_shra_r_w
    linkageType: ''
    returnType: int
    signature: int silk_RSHIFT_ROUND(int a, int shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: __builtin_mips_mult
      Src: /src/opus/silk/mips/macros_mipsr1.h:41,1
    - Dst: __builtin_mips_extr_w
      Src: /src/opus/silk/mips/macros_mipsr1.h:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 45
    functionName: silk_SMULWB
    functionSourceFile: /src/opus/silk/mips/macros_mipsr1.h
    functionUses: 50
    functionsReached:
    - __builtin_mips_extr_w
    - __builtin_mips_mult
    linkageType: ''
    returnType: int
    signature: int silk_SMULWB(int a, int b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a32
    - ','
    - b32
    - ','
    - c32
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 49
    functionName: silk_SMLAWB
    functionSourceFile: /src/opus/silk/mips/macros_mipsr1.h
    functionUses: 52
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMLAWB(a32, b32, c32)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: __builtin_mips_mult
      Src: /src/opus/silk/mips/macros_mipsr1.h:56,1
    - Dst: __builtin_mips_extr_w
      Src: /src/opus/silk/mips/macros_mipsr1.h:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 60
    functionName: silk_SMULWW
    functionSourceFile: /src/opus/silk/mips/macros_mipsr1.h
    functionUses: 24
    functionsReached:
    - __builtin_mips_extr_w
    - __builtin_mips_mult
    linkageType: ''
    returnType: int
    signature: int silk_SMULWW(int a, int b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: __builtin_mips_mult
      Src: /src/opus/silk/mips/macros_mipsr1.h:68,1
    - Dst: __builtin_mips_extr_w
      Src: /src/opus/silk/mips/macros_mipsr1.h:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - a
    - b
    - c
    argTypes:
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 73
    functionName: silk_SMLAWW
    functionSourceFile: /src/opus/silk/mips/macros_mipsr1.h
    functionUses: 7
    functionsReached:
    - __builtin_mips_extr_w
    - __builtin_mips_mult
    linkageType: ''
    returnType: int
    signature: int silk_SMLAWW(int a, int b, int c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 83
    functionName: silk_SMULWB
    functionSourceFile: /src/opus/silk/mips/macros_mipsr1.h
    functionUses: 50
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int silk_SMULWB(int a, int b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - a
    - b
    - c
    argTypes:
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 92
    functionName: silk_SMLAWB
    functionSourceFile: /src/opus/silk/mips/macros_mipsr1.h
    functionUses: 52
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int silk_SMLAWB(int a, int b, int c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: __builtin_clz
      Src: /src/opus/silk/mips/macros_mipsr1.h:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - opus_uint32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 101
    functionName: mips_clz
    functionSourceFile: /src/opus/silk/mips/macros_mipsr1.h
    functionUses: 0
    functionsReached:
    - __builtin_clz
    linkageType: ''
    returnType: int
    signature: int mips_clz(opus_uint32 x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mips_clz
      Src: /src/opus/silk/mips/macros_mipsr1.h:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - in16
    argTypes:
    - opus_int16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 111
    functionName: silk_CLZ16
    functionSourceFile: /src/opus/silk/mips/macros_mipsr1.h
    functionUses: 0
    functionsReached:
    - mips_clz
    linkageType: ''
    returnType: opus_int32
    signature: opus_int32 silk_CLZ16(opus_int16 in16)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mips_clz
      Src: /src/opus/silk/mips/macros_mipsr1.h:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - in32
    argTypes:
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 119
    functionName: silk_CLZ32
    functionSourceFile: /src/opus/silk/mips/macros_mipsr1.h
    functionUses: 13
    functionsReached:
    - mips_clz
    linkageType: ''
    returnType: opus_int32
    signature: opus_int32 silk_CLZ32(opus_int32 in32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - data1
    - gain
    - dataSize
    argTypes:
    - silk_float*
    - silk_float
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 56
    functionName: silk_scale_vector_FLP
    functionSourceFile: /src/opus/silk/float/scale_vector_FLP.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void silk_scale_vector_FLP(\n    silk_float          *data1,\n    silk_float
      \         gain,\n    opus_int            dataSize\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_inner_product_FLP
      Src: /src/opus/silk/float/corrMatrix_FLP.c:54,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 6
    argNames:
    - x
    - t
    - L
    - Order
    - Xt
    - arch
    argTypes:
    - silk_float*
    - silk_float*
    - opus_int
    - opus_int
    - silk_float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 57
    functionName: silk_corrVector_FLP
    functionSourceFile: /src/opus/silk/float/corrMatrix_FLP.c
    functionUses: 0
    functionsReached:
    - silk_inner_product_FLP
    linkageType: ''
    returnType: void
    signature: "void silk_corrVector_FLP(\n    const silk_float                *x,
      \                                /* I    x vector [L+order-1] used to create
      X       */\n    const silk_float                *t,                                 /*
      I    Target vector [L]                           */\n    const opus_int                  L,
      \                                 /* I    Length of vecors                            */\n
      \   const opus_int                  Order,                              /* I
      \   Max lag for correlation                     */\n    silk_float                      *Xt,
      \                               /* O    X'*t correlation vector [order]             */\n
      \   int                             arch\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_energy_FLP
      Src: /src/opus/silk/float/corrMatrix_FLP.c:73,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/float/corrMatrix_FLP.c:74,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/float/corrMatrix_FLP.c:78,1
    - Dst: silk_inner_product_FLP
      Src: /src/opus/silk/float/corrMatrix_FLP.c:84,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/float/corrMatrix_FLP.c:85,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/float/corrMatrix_FLP.c:86,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/float/corrMatrix_FLP.c:90,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/float/corrMatrix_FLP.c:91,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 5
    argNames:
    - x
    - L
    - Order
    - XX
    - arch
    argTypes:
    - silk_float*
    - opus_int
    - opus_int
    - silk_float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 60
    functionDepth: 1
    functionLinenumber: 60
    functionLinenumberEnd: 95
    functionName: silk_corrMatrix_FLP
    functionSourceFile: /src/opus/silk/float/corrMatrix_FLP.c
    functionUses: 0
    functionsReached:
    - matrix_ptr
    - silk_inner_product_FLP
    - silk_energy_FLP
    linkageType: ''
    returnType: void
    signature: "void silk_corrMatrix_FLP(\n    const silk_float                *x,
      \                                /* I    x vector [ L+order-1 ] used to create
      X     */\n    const opus_int                  L,                                  /*
      I    Length of vectors                           */\n    const opus_int                  Order,
      \                             /* I    Max lag for correlation                     */\n
      \   silk_float                      *XX,                                /* O
      \   X'*X correlation matrix [order x order]     */\n    int                             arch\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: silk_memcpy
      Src: /src/opus/silk/float/LPC_inv_pred_gain_FLP.c:48,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 2
    argNames:
    - A
    - order
    argTypes:
    - silk_float*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 73
    functionName: silk_LPC_inverse_pred_gain_FLP
    functionSourceFile: /src/opus/silk/float/LPC_inv_pred_gain_FLP.c
    functionUses: 0
    functionsReached:
    - silk_memcpy
    linkageType: ''
    returnType: silk_float
    signature: "silk_float silk_LPC_inverse_pred_gain_FLP(  /* O    return inverse
      prediction gain, energy domain               */\n    const silk_float    *A,
      \                /* I    prediction coefficients [order]                             */\n
      \   opus_int32          order               /* I    prediction order                                            */\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: silk_assert
      Src: /src/opus/silk/float/find_pred_coefs_FLP.c:55,1
    - Dst: celt_assert
      Src: /src/opus/silk/float/find_pred_coefs_FLP.c:63,1
    - Dst: silk_find_LTP_FLP
      Src: /src/opus/silk/float/find_pred_coefs_FLP.c:66,1
    - Dst: silk_quant_LTP_gains_FLP
      Src: /src/opus/silk/float/find_pred_coefs_FLP.c:69,1
    - Dst: silk_LTP_scale_ctrl_FLP
      Src: /src/opus/silk/float/find_pred_coefs_FLP.c:73,1
    - Dst: silk_LTP_analysis_filter_FLP
      Src: /src/opus/silk/float/find_pred_coefs_FLP.c:76,1
    - Dst: silk_scale_copy_vector_FLP
      Src: /src/opus/silk/float/find_pred_coefs_FLP.c:86,1
    - Dst: silk_memset
      Src: /src/opus/silk/float/find_pred_coefs_FLP.c:91,1
    - Dst: pow
      Src: /src/opus/silk/float/find_pred_coefs_FLP.c:100,1
    - Dst: silk_find_LPC_FLP
      Src: /src/opus/silk/float/find_pred_coefs_FLP.c:105,1
    - Dst: silk_process_NLSFs_FLP
      Src: /src/opus/silk/float/find_pred_coefs_FLP.c:108,1
    - Dst: silk_residual_energy_FLP
      Src: /src/opus/silk/float/find_pred_coefs_FLP.c:111,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/float/find_pred_coefs_FLP.c:115,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 33
    argCount: 5
    argNames:
    - psEnc
    - psEncCtrl
    - res_pitch
    - x
    - condCoding
    argTypes:
    - silk_encoder_state_FLP*
    - silk_encoder_control_FLP*
    - silk_float[]
    - silk_float[]
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 116
    functionName: silk_find_pred_coefs_FLP
    functionSourceFile: /src/opus/silk/float/find_pred_coefs_FLP.c
    functionUses: 0
    functionsReached:
    - silk_scale_copy_vector_FLP
    - celt_assert
    - silk_residual_energy_FLP
    - silk_LTP_scale_ctrl_FLP
    - silk_memcpy
    - silk_memset
    - silk_LTP_analysis_filter_FLP
    - silk_assert
    - silk_process_NLSFs_FLP
    - silk_quant_LTP_gains_FLP
    - silk_find_LPC_FLP
    - pow
    - silk_find_LTP_FLP
    linkageType: ''
    returnType: void
    signature: "void silk_find_pred_coefs_FLP(\n    silk_encoder_state_FLP          *psEnc,
      \                            /* I/O  Encoder state FLP                           */\n
      \   silk_encoder_control_FLP        *psEncCtrl,                         /* I/O
      \ Encoder control FLP                         */\n    const silk_float                res_pitch[],
      \                       /* I    Residual from pitch analysis                */\n
      \   const silk_float                x[],                                /* I
      \   Speech signal                               */\n    opus_int                        condCoding
      \                         /* I    The type of conditional coding to use       */\n)"
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:112,1
    - Dst: celt_assert
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:115,1
    - Dst: celt_assert
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:116,1
    - Dst: silk_assert
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:118,1
    - Dst: silk_assert
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:119,1
    - Dst: silk_float2short_array
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:139,1
    - Dst: silk_memset
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:140,1
    - Dst: silk_resampler_down2
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:141,1
    - Dst: silk_short2float_array
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:142,1
    - Dst: silk_float2short_array
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:146,1
    - Dst: silk_memset
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:147,1
    - Dst: silk_resampler_down2_3
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:148,1
    - Dst: silk_short2float_array
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:149,1
    - Dst: celt_assert
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:151,1
    - Dst: silk_float2short_array
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:152,1
    - Dst: silk_memset
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:156,1
    - Dst: silk_resampler_down2
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:157,1
    - Dst: silk_short2float_array
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:158,1
    - Dst: silk_ADD_SAT16
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:162,1
    - Dst: silk_memset
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:168,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:169,1
    - Dst: celt_assert
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:172,1
    - Dst: celt_assert
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:173,1
    - Dst: celt_assert
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:178,1
    - Dst: celt_assert
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:179,1
    - Dst: celt_pitch_xcorr
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:181,1
    - Dst: silk_energy_FLP
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:185,1
    - Dst: silk_energy_FLP
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:186,1
    - Dst: silk_assert
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:196,1
    - Dst: silk_assert
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:197,1
    - Dst: celt_assert
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:218,1
    - Dst: silk_insertion_sort_decreasing_FLP
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:219,1
    - Dst: silk_memset
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:224,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:235,1
    - Dst: celt_assert
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:241,1
    - Dst: silk_memset
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:282,1
    - Dst: silk_energy_FLP
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:290,1
    - Dst: silk_inner_product_FLP
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:294,1
    - Dst: silk_energy_FLP
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:296,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:316,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:318,1
    - Dst: silk_log2
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:320,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:347,1
    - Dst: silk_log2
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:361,1
    - Dst: silk_memset
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:383,1
    - Dst: silk_assert
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:392,1
    - Dst: silk_assert
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:398,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:398,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:400,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:400,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:402,1
    - Dst: silk_LIMIT_int
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:405,1
    - Dst: silk_max_int
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:406,1
    - Dst: silk_min_int
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:407,1
    - Dst: silk_P_Ana_calc_corr_st3
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:414,1
    - Dst: silk_P_Ana_calc_energy_st3
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:415,1
    - Dst: silk_assert
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:418,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:418,1
    - Dst: silk_energy_FLP
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:433,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:460,1
    - Dst: silk_LIMIT
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:461,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:468,1
    - Dst: silk_LIMIT
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:469,1
    - Dst: celt_assert
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:474,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 266
    argCount: 12
    argNames:
    - frame
    - pitch_out
    - lagIndex
    - contourIndex
    - LTPCorr
    - prevLag
    - search_thres1
    - search_thres2
    - Fs_kHz
    - complexity
    - nb_subfr
    - arch
    argTypes:
    - silk_float*
    - opus_int*
    - opus_int16*
    - opus_int8*
    - silk_float*
    - opus_int
    - silk_float
    - silk_float
    - opus_int
    - opus_int
    - opus_int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 477
      start: 67
    functionDepth: 3
    functionLinenumber: 67
    functionLinenumberEnd: 477
    functionName: silk_pitch_analysis_core_FLP
    functionSourceFile: /src/opus/silk/float/pitch_analysis_core_FLP.c
    functionUses: 0
    functionsReached:
    - silk_SMULBB
    - silk_insertion_sort_decreasing_FLP
    - silk_P_Ana_calc_corr_st3
    - silk_ADD_SAT16
    - silk_log2
    - silk_assert
    - silk_RSHIFT
    - matrix_ptr
    - silk_SAT16
    - silk_short2float_array
    - silk_max_int
    - silk_LIMIT_int
    - silk_P_Ana_calc_energy_st3
    - silk_resampler_down2_3
    - celt_assert
    - silk_LSHIFT
    - silk_memset
    - celt_pitch_xcorr
    - silk_LIMIT
    - silk_inner_product_FLP
    - silk_energy_FLP
    - silk_resampler_down2
    - silk_min_int
    - silk_float2short_array
    - silk_RSHIFT_ROUND
    linkageType: ''
    returnType: opus_int
    signature: "opus_int silk_pitch_analysis_core_FLP(      /* O    Voicing estimate:
      0 voiced, 1 unvoiced                      */\n    const silk_float    *frame,
      \            /* I    Signal of length PE_FRAME_LENGTH_MS*Fs_kHz                  */\n
      \   opus_int            *pitch_out,         /* O    Pitch lag values [nb_subfr]
      \                                */\n    opus_int16          *lagIndex,          /*
      O    Lag Index                                                   */\n    opus_int8
      \          *contourIndex,      /* O    Pitch contour Index                                         */\n
      \   silk_float          *LTPCorr,           /* I/O  Normalized correlation;
      input: value from previous frame    */\n    opus_int            prevLag,            /*
      I    Last lag of previous frame; set to zero is unvoiced         */\n    const
      silk_float    search_thres1,      /* I    First stage threshold for lag candidates
      0 - 1              */\n    const silk_float    search_thres2,      /* I    Final
      threshold for lag candidates 0 - 1                    */\n    const opus_int
      \     Fs_kHz,             /* I    sample frequency (kHz)                                      */\n
      \   const opus_int      complexity,         /* I    Complexity setting, 0-2,
      where 2 is highest                 */\n    const opus_int      nb_subfr,           /*
      I    Number of 5 ms subframes                                    */\n    int
      \                arch                /* I    Run-time architecture                                       */\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:509,1
    - Dst: celt_assert
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:510,1
    - Dst: celt_assert
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:518,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:525,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:530,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:531,1
    - Dst: silk_assert
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:532,1
    - Dst: celt_pitch_xcorr
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:533,1
    - Dst: silk_assert
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:535,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:540,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:544,1
    - Dst: silk_assert
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:546,1
    - Dst: silk_assert
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:547,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 38
    argCount: 7
    argNames:
    - cross_corr_st3
    - frame
    - start_lag
    - sf_length
    - nb_subfr
    - complexity
    - arch
    argTypes:
    - silk_float[][][]
    - silk_float[]
    - opus_int
    - opus_int
    - opus_int
    - opus_int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 553
      start: 492
    functionDepth: 1
    functionLinenumber: 492
    functionLinenumberEnd: 553
    functionName: silk_P_Ana_calc_corr_st3
    functionSourceFile: /src/opus/silk/float/pitch_analysis_core_FLP.c
    functionUses: 2
    functionsReached:
    - celt_assert
    - silk_LSHIFT
    - silk_assert
    - matrix_ptr
    - celt_pitch_xcorr
    linkageType: ''
    returnType: void
    signature: "void silk_P_Ana_calc_corr_st3(\n    silk_float cross_corr_st3[ PE_MAX_NB_SUBFR
      ][ PE_NB_CBKS_STAGE3_MAX ][ PE_NB_STAGE3_LAGS ], /* O 3 DIM correlation array
      */\n    const silk_float    frame[],            /* I vector to correlate                                            */\n
      \   opus_int            start_lag,          /* I start lag                                                      */\n
      \   opus_int            sf_length,          /* I sub frame length                                               */\n
      \   opus_int            nb_subfr,           /* I number of subframes                                            */\n
      \   opus_int            complexity,         /* I Complexity setting                                             */\n
      \   int                 arch                /* I Run-time architecture                                          */\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:575,1
    - Dst: celt_assert
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:576,1
    - Dst: celt_assert
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:584,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:591,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:596,1
    - Dst: silk_energy_FLP
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:597,1
    - Dst: silk_assert
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:598,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:602,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:602,1
    - Dst: silk_assert
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:606,1
    - Dst: silk_assert
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:610,1
    - Dst: silk_assert
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:611,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:616,1
    - Dst: matrix_ptr
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:620,1
    - Dst: silk_assert
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:622,1
    - Dst: silk_assert
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:623,1
    - Dst: silk_assert
      Src: /src/opus/silk/float/pitch_analysis_core_FLP.c:625,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 45
    argCount: 6
    argNames:
    - energies_st3
    - frame
    - start_lag
    - sf_length
    - nb_subfr
    - complexity
    argTypes:
    - silk_float[][][]
    - silk_float[]
    - opus_int
    - opus_int
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 630
      start: 559
    functionDepth: 1
    functionLinenumber: 559
    functionLinenumberEnd: 630
    functionName: silk_P_Ana_calc_energy_st3
    functionSourceFile: /src/opus/silk/float/pitch_analysis_core_FLP.c
    functionUses: 2
    functionsReached:
    - celt_assert
    - silk_LSHIFT
    - silk_assert
    - matrix_ptr
    - silk_energy_FLP
    linkageType: ''
    returnType: void
    signature: "void silk_P_Ana_calc_energy_st3(\n    silk_float energies_st3[ PE_MAX_NB_SUBFR
      ][ PE_NB_CBKS_STAGE3_MAX ][ PE_NB_STAGE3_LAGS ], /* O 3 DIM correlation array
      */\n    const silk_float    frame[],            /* I vector to correlate                                            */\n
      \   opus_int            start_lag,          /* I start lag                                                      */\n
      \   opus_int            sf_length,          /* I sub frame length                                               */\n
      \   opus_int            nb_subfr,           /* I number of subframes                                            */\n
      \   opus_int            complexity          /* I Complexity setting                                             */\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: silk_SMULBB
      Src: /src/opus/silk/float/LTP_scale_ctrl_FLP.c:48,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/float/LTP_scale_ctrl_FLP.c:50,1
    - Dst: silk_log2lin
      Src: /src/opus/silk/float/LTP_scale_ctrl_FLP.c:50,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/float/LTP_scale_ctrl_FLP.c:51,1
    - Dst: silk_log2lin
      Src: /src/opus/silk/float/LTP_scale_ctrl_FLP.c:51,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - psEnc
    - psEncCtrl
    - condCoding
    argTypes:
    - silk_encoder_state_FLP*
    - silk_encoder_control_FLP*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 34
    functionDepth: 2
    functionLinenumber: 34
    functionLinenumberEnd: 58
    functionName: silk_LTP_scale_ctrl_FLP
    functionSourceFile: /src/opus/silk/float/LTP_scale_ctrl_FLP.c
    functionUses: 1
    functionsReached:
    - silk_log2lin
    - silk_SMULBB
    linkageType: ''
    returnType: void
    signature: "void silk_LTP_scale_ctrl_FLP(\n    silk_encoder_state_FLP          *psEnc,
      \                            /* I/O  Encoder state FLP                           */\n
      \   silk_encoder_control_FLP        *psEncCtrl,                         /* I/O
      \ Encoder control FLP                         */\n    opus_int                        condCoding
      \                         /* I    The type of conditional coding to use       */\n)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: silk_sigmoid
      Src: /src/opus/silk/float/process_gains_FLP.c:49,1
    - Dst: pow
      Src: /src/opus/silk/float/process_gains_FLP.c:56,1
    - Dst: sqrt
      Src: /src/opus/silk/float/process_gains_FLP.c:61,1
    - Dst: silk_min_float
      Src: /src/opus/silk/float/process_gains_FLP.c:62,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/float/process_gains_FLP.c:71,1
    - Dst: silk_gains_quant
      Src: /src/opus/silk/float/process_gains_FLP.c:75,1
    - Dst: silk_assert
      Src: /src/opus/silk/float/process_gains_FLP.c:101,1
    - Dst: silk_assert
      Src: /src/opus/silk/float/process_gains_FLP.c:102,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 33
    argCount: 3
    argNames:
    - psEnc
    - psEncCtrl
    - condCoding
    argTypes:
    - silk_encoder_state_FLP*
    - silk_encoder_control_FLP*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 36
    functionDepth: 3
    functionLinenumber: 36
    functionLinenumberEnd: 103
    functionName: silk_process_gains_FLP
    functionSourceFile: /src/opus/silk/float/process_gains_FLP.c
    functionUses: 0
    functionsReached:
    - silk_memcpy
    - silk_assert
    - silk_gains_quant
    - silk_min_float
    - pow
    - sqrt
    - silk_sigmoid
    linkageType: ''
    returnType: void
    signature: "void silk_process_gains_FLP(\n    silk_encoder_state_FLP          *psEnc,
      \                            /* I/O  Encoder state FLP                           */\n
      \   silk_encoder_control_FLP        *psEncCtrl,                         /* I/O
      \ Encoder control FLP                         */\n    opus_int                        condCoding
      \                         /* I    The type of conditional coding to use       */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/silk/float/warped_autocorrelation_FLP.c:49,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 5
    argNames:
    - corr
    - input
    - warping
    - length
    - order
    argTypes:
    - silk_float*
    - silk_float*
    - silk_float
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 75
    functionName: silk_warped_autocorrelation_FLP
    functionSourceFile: /src/opus/silk/float/warped_autocorrelation_FLP.c
    functionUses: 0
    functionsReached:
    - celt_assert
    linkageType: ''
    returnType: void
    signature: "void silk_warped_autocorrelation_FLP(\n    silk_float                      *corr,
      \                             /* O    Result [order + 1]                          */\n
      \   const silk_float                *input,                             /* I
      \   Input data to correlate                     */\n    const silk_float                warping,
      \                           /* I    Warping coefficient                         */\n
      \   const opus_int                  length,                             /* I
      \   Length of input                             */\n    const opus_int                  order
      \                              /* I    Correlation order (even)                    */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - ar
    - d
    - chirp
    argTypes:
    - silk_float*
    - opus_int
    - silk_float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 49
    functionName: silk_bwexpander_FLP
    functionSourceFile: /src/opus/silk/float/bwexpander_FLP.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void silk_bwexpander_FLP(\n    silk_float          *ar,                /*
      I/O  AR filter to be expanded (without leading 1)                */\n    const
      opus_int      d,                  /* I    length of ar                                                */\n
      \   const silk_float    chirp               /* I    chirp factor (typically
      in range (0..1) )                   */\n)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/silk/float/burg_modified_FLP.c:56,1
    - Dst: silk_energy_FLP
      Src: /src/opus/silk/float/burg_modified_FLP.c:59,1
    - Dst: silk_memset
      Src: /src/opus/silk/float/burg_modified_FLP.c:60,1
    - Dst: silk_inner_product_FLP
      Src: /src/opus/silk/float/burg_modified_FLP.c:64,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/float/burg_modified_FLP.c:67,1
    - Dst: silk_assert
      Src: /src/opus/silk/float/burg_modified_FLP.c:114,1
    - Dst: silk_assert
      Src: /src/opus/silk/float/burg_modified_FLP.c:115,1
    - Dst: silk_assert
      Src: /src/opus/silk/float/burg_modified_FLP.c:119,1
    - Dst: sqrt
      Src: /src/opus/silk/float/burg_modified_FLP.c:125,1
    - Dst: silk_energy_FLP
      Src: /src/opus/silk/float/burg_modified_FLP.c:168,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 103
    argCount: 7
    argNames:
    - A
    - x
    - minInvGain
    - subfr_length
    - nb_subfr
    - D
    - arch
    argTypes:
    - silk_float[]
    - silk_float[]
    - silk_float
    - opus_int
    - opus_int
    - opus_int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 187
    functionName: silk_burg_modified_FLP
    functionSourceFile: /src/opus/silk/float/burg_modified_FLP.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - silk_memcpy
    - silk_memset
    - silk_assert
    - silk_inner_product_FLP
    - silk_energy_FLP
    - sqrt
    linkageType: ''
    returnType: silk_float
    signature: "silk_float silk_burg_modified_FLP(          /* O    returns residual
      energy                                     */\n    silk_float          A[],
      \               /* O    prediction coefficients (length order)                      */\n
      \   const silk_float    x[],                /* I    input signal, length: nb_subfr*(D+L_sub)
      \                   */\n    const silk_float    minInvGain,         /* I    minimum
      inverse prediction gain                             */\n    const opus_int      subfr_length,
      \      /* I    input signal subframe length (incl. D preceding samples)    */\n
      \   const opus_int      nb_subfr,           /* I    number of subframes stacked
      in x                            */\n    const opus_int      D,                  /*
      I    order                                                       */\n    int
      \                arch\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - data1
    - data2
    - dataSize
    argTypes:
    - silk_float*
    - silk_float*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 59
    functionName: silk_inner_product_FLP_c
    functionSourceFile: /src/opus/silk/float/inner_product_FLP.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: double
    signature: "double silk_inner_product_FLP_c(\n    const silk_float    *data1,\n
      \   const silk_float    *data2,\n    opus_int            dataSize\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/silk/float/residual_energy_FLP.c:50,1
    - Dst: matrix_c_ptr
      Src: /src/opus/silk/float/residual_energy_FLP.c:66,1
    - Dst: matrix_c_ptr
      Src: /src/opus/silk/float/residual_energy_FLP.c:68,1
    - Dst: matrix_c_ptr
      Src: /src/opus/silk/float/residual_energy_FLP.c:75,1
    - Dst: silk_assert
      Src: /src/opus/silk/float/residual_energy_FLP.c:82,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 31
    argCount: 5
    argNames:
    - c
    - wXX
    - wXx
    - wxx
    - D
    argTypes:
    - silk_float*
    - silk_float*
    - silk_float*
    - silk_float
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 87
    functionName: silk_residual_energy_covar_FLP
    functionSourceFile: /src/opus/silk/float/residual_energy_FLP.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - matrix_c_ptr
    - silk_assert
    linkageType: ''
    returnType: silk_float
    signature: "silk_float silk_residual_energy_covar_FLP(                              /*
      O    Weighted residual energy                    */\n    const silk_float                *c,
      \                                /* I    Filter coefficients                         */\n
      \   silk_float                      *wXX,                               /* I/O
      \ Weighted correlation matrix, reg. out       */\n    const silk_float                *wXx,
      \                              /* I    Weighted correlation vector                 */\n
      \   const silk_float                wxx,                                /* I
      \   Weighted correlation value                  */\n    const opus_int                  D
      \                                  /* I    Dimension                                   */\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: silk_LPC_analysis_filter_FLP
      Src: /src/opus/silk/float/residual_energy_FLP.c:108,1
    - Dst: silk_energy_FLP
      Src: /src/opus/silk/float/residual_energy_FLP.c:109,1
    - Dst: silk_energy_FLP
      Src: /src/opus/silk/float/residual_energy_FLP.c:110,1
    - Dst: silk_LPC_analysis_filter_FLP
      Src: /src/opus/silk/float/residual_energy_FLP.c:113,1
    - Dst: silk_energy_FLP
      Src: /src/opus/silk/float/residual_energy_FLP.c:114,1
    - Dst: silk_energy_FLP
      Src: /src/opus/silk/float/residual_energy_FLP.c:115,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 7
    argNames:
    - nrgs
    - x
    - a
    - gains
    - subfr_length
    - nb_subfr
    - LPC_order
    argTypes:
    - silk_float[]
    - silk_float[]
    - silk_float[][]
    - silk_float[]
    - opus_int
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 117
    functionName: silk_residual_energy_FLP
    functionSourceFile: /src/opus/silk/float/residual_energy_FLP.c
    functionUses: 1
    functionsReached:
    - silk_LPC_analysis_filter_FLP
    - silk_energy_FLP
    linkageType: ''
    returnType: void
    signature: "void silk_residual_energy_FLP(\n    silk_float                      nrgs[
      MAX_NB_SUBFR ],               /* O    Residual energy per subframe                */\n
      \   const silk_float                x[],                                /* I
      \   Input signal                                */\n    silk_float                      a[
      2 ][ MAX_LPC_ORDER ],            /* I    AR coefs for each frame half                */\n
      \   const silk_float                gains[],                            /* I
      \   Quantization gains                          */\n    const opus_int                  subfr_length,
      \                      /* I    Subframe length                             */\n
      \   const opus_int                  nb_subfr,                           /* I
      \   number of subframes                         */\n    const opus_int                  LPC_order
      \                          /* I    LPC order                                   */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - r_LPC
    - PredCoef
    - s
    - length
    argTypes:
    - silk_float[]
    - silk_float[]
    - silk_float[]
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 78
    functionName: silk_LPC_analysis_filter16_FLP
    functionSourceFile: /src/opus/silk/float/LPC_analysis_filter_FLP.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_LPC_analysis_filter16_FLP(\n          silk_float
      \                r_LPC[],            /* O    LPC residual signal                     */\n
      \   const silk_float                 PredCoef[],         /* I    LPC coefficients
      \                       */\n    const silk_float                 s[],                /*
      I    Input signal                            */\n    const opus_int                   length
      \             /* I    Length of input signal                  */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - r_LPC
    - PredCoef
    - s
    - length
    argTypes:
    - silk_float[]
    - silk_float[]
    - silk_float[]
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 112
    functionName: silk_LPC_analysis_filter12_FLP
    functionSourceFile: /src/opus/silk/float/LPC_analysis_filter_FLP.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_LPC_analysis_filter12_FLP(\n          silk_float
      \                r_LPC[],            /* O    LPC residual signal                     */\n
      \   const silk_float                 PredCoef[],         /* I    LPC coefficients
      \                       */\n    const silk_float                 s[],                /*
      I    Input signal                            */\n    const opus_int                   length
      \             /* I    Length of input signal                  */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - r_LPC
    - PredCoef
    - s
    - length
    argTypes:
    - silk_float[]
    - silk_float[]
    - silk_float[]
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 144
    functionName: silk_LPC_analysis_filter10_FLP
    functionSourceFile: /src/opus/silk/float/LPC_analysis_filter_FLP.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_LPC_analysis_filter10_FLP(\n          silk_float
      \                r_LPC[],            /* O    LPC residual signal                     */\n
      \   const silk_float                 PredCoef[],         /* I    LPC coefficients
      \                       */\n    const silk_float                 s[],                /*
      I    Input signal                            */\n    const opus_int                   length
      \             /* I    Length of input signal                  */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - r_LPC
    - PredCoef
    - s
    - length
    argTypes:
    - silk_float[]
    - silk_float[]
    - silk_float[]
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 174
    functionName: silk_LPC_analysis_filter8_FLP
    functionSourceFile: /src/opus/silk/float/LPC_analysis_filter_FLP.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_LPC_analysis_filter8_FLP(\n          silk_float                 r_LPC[],
      \           /* O    LPC residual signal                     */\n    const silk_float
      \                PredCoef[],         /* I    LPC coefficients                        */\n
      \   const silk_float                 s[],                /* I    Input signal
      \                           */\n    const opus_int                   length
      \             /* I    Length of input signal                  */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - r_LPC
    - PredCoef
    - s
    - length
    argTypes:
    - silk_float[]
    - silk_float[]
    - silk_float[]
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 202
    functionName: silk_LPC_analysis_filter6_FLP
    functionSourceFile: /src/opus/silk/float/LPC_analysis_filter_FLP.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_LPC_analysis_filter6_FLP(\n          silk_float                 r_LPC[],
      \           /* O    LPC residual signal                     */\n    const silk_float
      \                PredCoef[],         /* I    LPC coefficients                        */\n
      \   const silk_float                 s[],                /* I    Input signal
      \                           */\n    const opus_int                   length
      \             /* I    Length of input signal                  */\n)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/silk/float/LPC_analysis_filter_FLP.c:218,1
    - Dst: silk_LPC_analysis_filter6_FLP
      Src: /src/opus/silk/float/LPC_analysis_filter_FLP.c:222,1
    - Dst: silk_LPC_analysis_filter8_FLP
      Src: /src/opus/silk/float/LPC_analysis_filter_FLP.c:226,1
    - Dst: silk_LPC_analysis_filter10_FLP
      Src: /src/opus/silk/float/LPC_analysis_filter_FLP.c:230,1
    - Dst: silk_LPC_analysis_filter12_FLP
      Src: /src/opus/silk/float/LPC_analysis_filter_FLP.c:234,1
    - Dst: silk_LPC_analysis_filter16_FLP
      Src: /src/opus/silk/float/LPC_analysis_filter_FLP.c:238,1
    - Dst: celt_assert
      Src: /src/opus/silk/float/LPC_analysis_filter_FLP.c:242,1
    - Dst: silk_memset
      Src: /src/opus/silk/float/LPC_analysis_filter_FLP.c:247,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 23
    argCount: 5
    argNames:
    - r_LPC
    - PredCoef
    - s
    - length
    - Order
    argTypes:
    - silk_float[]
    - silk_float[]
    - silk_float[]
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 210
    functionDepth: 1
    functionLinenumber: 210
    functionLinenumberEnd: 248
    functionName: silk_LPC_analysis_filter_FLP
    functionSourceFile: /src/opus/silk/float/LPC_analysis_filter_FLP.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - silk_LPC_analysis_filter8_FLP
    - silk_memset
    - silk_LPC_analysis_filter16_FLP
    - silk_LPC_analysis_filter6_FLP
    - silk_LPC_analysis_filter12_FLP
    - silk_LPC_analysis_filter10_FLP
    linkageType: ''
    returnType: void
    signature: "void silk_LPC_analysis_filter_FLP(\n    silk_float                      r_LPC[],
      \                           /* O    LPC residual signal                         */\n
      \   const silk_float                PredCoef[],                         /* I
      \   LPC coefficients                            */\n    const silk_float                s[],
      \                               /* I    Input signal                                */\n
      \   const opus_int                  length,                             /* I
      \   Length of input signal                      */\n    const opus_int                  Order
      \                              /* I    LPC order                                   */\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: silk_inner_product_FLP
      Src: /src/opus/silk/float/autocorrelation_FLP.c:51,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 5
    argNames:
    - results
    - inputData
    - inputDataSize
    - correlationCount
    - arch
    argTypes:
    - silk_float*
    - silk_float*
    - opus_int
    - opus_int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 53
    functionName: silk_autocorrelation_FLP
    functionSourceFile: /src/opus/silk/float/autocorrelation_FLP.c
    functionUses: 0
    functionsReached:
    - silk_inner_product_FLP
    linkageType: ''
    returnType: void
    signature: "void silk_autocorrelation_FLP(\n    silk_float          *results,
      \          /* O    result (length correlationCount)                            */\n
      \   const silk_float    *inputData,         /* I    input data to correlate
      \                                    */\n    opus_int            inputDataSize,
      \     /* I    length of input                                             */\n
      \   opus_int            correlationCount,    /* I    number of correlation taps
      to compute                       */\n    int                 arch\n)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: silk_burg_modified_FLP
      Src: /src/opus/silk/float/find_LPC_FLP.c:60,1
    - Dst: silk_burg_modified_FLP
      Src: /src/opus/silk/float/find_LPC_FLP.c:65,1
    - Dst: silk_A2NLSF_FLP
      Src: /src/opus/silk/float/find_LPC_FLP.c:68,1
    - Dst: silk_interpolate
      Src: /src/opus/silk/float/find_LPC_FLP.c:74,1
    - Dst: silk_NLSF2A_FLP
      Src: /src/opus/silk/float/find_LPC_FLP.c:77,1
    - Dst: silk_LPC_analysis_filter_FLP
      Src: /src/opus/silk/float/find_LPC_FLP.c:80,1
    - Dst: silk_energy_FLP
      Src: /src/opus/silk/float/find_LPC_FLP.c:82,1
    - Dst: silk_energy_FLP
      Src: /src/opus/silk/float/find_LPC_FLP.c:83,1
    - Dst: silk_A2NLSF_FLP
      Src: /src/opus/silk/float/find_LPC_FLP.c:100,1
    - Dst: celt_assert
      Src: /src/opus/silk/float/find_LPC_FLP.c:103,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 27
    argCount: 5
    argNames:
    - psEncC
    - NLSF_Q15
    - x
    - minInvGain
    - arch
    argTypes:
    - silk_encoder_state*
    - opus_int16[]
    - silk_float[]
    - silk_float
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 37
    functionDepth: 2
    functionLinenumber: 37
    functionLinenumberEnd: 105
    functionName: silk_find_LPC_FLP
    functionSourceFile: /src/opus/silk/float/find_LPC_FLP.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - silk_NLSF2A_FLP
    - silk_A2NLSF_FLP
    - silk_interpolate
    - silk_energy_FLP
    - silk_LPC_analysis_filter_FLP
    - silk_burg_modified_FLP
    linkageType: ''
    returnType: void
    signature: "void silk_find_LPC_FLP(\n    silk_encoder_state              *psEncC,
      \                           /* I/O  Encoder state                               */\n
      \   opus_int16                      NLSF_Q15[],                         /* O
      \   NLSFs                                       */\n    const silk_float                x[],
      \                               /* I    Input signal                                */\n
      \   const silk_float                minInvGain,                         /* I
      \   Inverse of max prediction gain              */\n    int                             arch\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - coefs
    - lambda
    - order
    argTypes:
    - silk_float*
    - silk_float
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 53
    functionName: warped_gain
    functionSourceFile: /src/opus/silk/float/noise_shape_analysis_FLP.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE warped_gain(\n    const silk_float     *coefs,\n    silk_float
      \          lambda,\n    opus_int             order\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: silk_abs_float
      Src: /src/opus/silk/float/noise_shape_analysis_FLP.c:80,1
    - Dst: silk_bwexpander_FLP
      Src: /src/opus/silk/float/noise_shape_analysis_FLP.c:102,1
    - Dst: silk_assert
      Src: /src/opus/silk/float/noise_shape_analysis_FLP.c:113,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 38
    argCount: 4
    argNames:
    - coefs
    - lambda
    - limit
    - order
    argTypes:
    - silk_float*
    - silk_float
    - silk_float
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 114
    functionName: warped_true2monic_coefs
    functionSourceFile: /src/opus/silk/float/noise_shape_analysis_FLP.c
    functionUses: 0
    functionsReached:
    - silk_bwexpander_FLP
    - silk_assert
    - silk_abs_float
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE warped_true2monic_coefs(\n    silk_float           *coefs,\n
      \   silk_float           lambda,\n    silk_float           limit,\n    opus_int
      \            order\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: silk_abs_float
      Src: /src/opus/silk/float/noise_shape_analysis_FLP.c:128,1
    - Dst: silk_bwexpander_FLP
      Src: /src/opus/silk/float/noise_shape_analysis_FLP.c:141,1
    - Dst: silk_assert
      Src: /src/opus/silk/float/noise_shape_analysis_FLP.c:143,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 3
    argNames:
    - coefs
    - limit
    - order
    argTypes:
    - silk_float*
    - silk_float
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 144
    functionName: limit_coefs
    functionSourceFile: /src/opus/silk/float/noise_shape_analysis_FLP.c
    functionUses: 0
    functionsReached:
    - silk_bwexpander_FLP
    - silk_assert
    - silk_abs_float
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE limit_coefs(\n    silk_float           *coefs,\n    silk_float
      \          limit,\n    opus_int             order\n)"
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: silk_sigmoid
      Src: /src/opus/silk/float/noise_shape_analysis_FLP.c:176,1
    - Dst: silk_SMULBB
      Src: /src/opus/silk/float/noise_shape_analysis_FLP.c:205,1
    - Dst: silk_energy_FLP
      Src: /src/opus/silk/float/noise_shape_analysis_FLP.c:207,1
    - Dst: silk_log2
      Src: /src/opus/silk/float/noise_shape_analysis_FLP.c:208,1
    - Dst: silk_abs_float
      Src: /src/opus/silk/float/noise_shape_analysis_FLP.c:210,1
    - Dst: silk_apply_sine_window_FLP
      Src: /src/opus/silk/float/noise_shape_analysis_FLP.c:243,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/float/noise_shape_analysis_FLP.c:245,1
    - Dst: silk_apply_sine_window_FLP
      Src: /src/opus/silk/float/noise_shape_analysis_FLP.c:247,1
    - Dst: silk_warped_autocorrelation_FLP
      Src: /src/opus/silk/float/noise_shape_analysis_FLP.c:254,1
    - Dst: silk_autocorrelation_FLP
      Src: /src/opus/silk/float/noise_shape_analysis_FLP.c:258,1
    - Dst: silk_schur_FLP
      Src: /src/opus/silk/float/noise_shape_analysis_FLP.c:265,1
    - Dst: silk_k2a_FLP
      Src: /src/opus/silk/float/noise_shape_analysis_FLP.c:266,1
    - Dst: sqrt
      Src: /src/opus/silk/float/noise_shape_analysis_FLP.c:267,1
    - Dst: warped_gain
      Src: /src/opus/silk/float/noise_shape_analysis_FLP.c:271,1
    - Dst: silk_bwexpander_FLP
      Src: /src/opus/silk/float/noise_shape_analysis_FLP.c:275,1
    - Dst: warped_true2monic_coefs
      Src: /src/opus/silk/float/noise_shape_analysis_FLP.c:279,1
    - Dst: limit_coefs
      Src: /src/opus/silk/float/noise_shape_analysis_FLP.c:282,1
    - Dst: pow
      Src: /src/opus/silk/float/noise_shape_analysis_FLP.c:290,1
    - Dst: pow
      Src: /src/opus/silk/float/noise_shape_analysis_FLP.c:291,1
    - Dst: sqrt
      Src: /src/opus/silk/float/noise_shape_analysis_FLP.c:336,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 106
    argCount: 4
    argNames:
    - psEnc
    - psEncCtrl
    - pitch_res
    - x
    argTypes:
    - silk_encoder_state_FLP*
    - silk_encoder_control_FLP*
    - silk_float*
    - silk_float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 350
      start: 147
    functionDepth: 2
    functionLinenumber: 147
    functionLinenumberEnd: 350
    functionName: silk_noise_shape_analysis_FLP
    functionSourceFile: /src/opus/silk/float/noise_shape_analysis_FLP.c
    functionUses: 0
    functionsReached:
    - warped_gain
    - silk_log2
    - silk_memcpy
    - silk_apply_sine_window_FLP
    - silk_warped_autocorrelation_FLP
    - silk_k2a_FLP
    - silk_schur_FLP
    - silk_SMULBB
    - silk_energy_FLP
    - silk_abs_float
    - limit_coefs
    - pow
    - sqrt
    - silk_bwexpander_FLP
    - silk_autocorrelation_FLP
    - silk_sigmoid
    - warped_true2monic_coefs
    linkageType: ''
    returnType: void
    signature: "void silk_noise_shape_analysis_FLP(\n    silk_encoder_state_FLP          *psEnc,
      \                            /* I/O  Encoder state FLP                           */\n
      \   silk_encoder_control_FLP        *psEncCtrl,                         /* I/O
      \ Encoder control FLP                         */\n    const silk_float                *pitch_res,
      \                        /* I    LPC residual from pitch analysis            */\n
      \   const silk_float                *x                                  /* I
      \   Input signal [frame_length + la_shape]      */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_assert
      Src: /src/opus/silk/float/energy_FLP.c:57,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - data
    - dataSize
    argTypes:
    - silk_float*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 59
    functionName: silk_energy_FLP
    functionSourceFile: /src/opus/silk/float/energy_FLP.c
    functionUses: 7
    functionsReached:
    - silk_assert
    linkageType: ''
    returnType: double
    signature: "double silk_energy_FLP(\n    const silk_float    *data,\n    opus_int
      \           dataSize\n)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/float/encode_frame_FLP.c:50,1
    - Dst: silk_VAD_GetSA_Q8
      Src: /src/opus/silk/float/encode_frame_FLP.c:55,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 2
    argNames:
    - psEnc
    - activity
    argTypes:
    - silk_encoder_state_FLP*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 80
    functionName: silk_encode_do_VAD_FLP
    functionSourceFile: /src/opus/silk/float/encode_frame_FLP.c
    functionUses: 0
    functionsReached:
    - SILK_FIX_CONST
    - silk_VAD_GetSA_Q8
    linkageType: ''
    returnType: void
    signature: "void silk_encode_do_VAD_FLP(\n    silk_encoder_state_FLP          *psEnc,
      \                            /* I/O  Encoder state FLP                           */\n
      \   opus_int                        activity                            /* I
      \   Decision of Opus voice activity detector    */\n)"
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/silk/float/encode_frame_FLP.c:99,1
    - Dst: ALLOC
      Src: /src/opus/silk/float/encode_frame_FLP.c:115,1
    - Dst: silk_LP_variable_cutoff
      Src: /src/opus/silk/float/encode_frame_FLP.c:134,1
    - Dst: silk_short2float_array
      Src: /src/opus/silk/float/encode_frame_FLP.c:139,1
    - Dst: VARDECL
      Src: /src/opus/silk/float/encode_frame_FLP.c:147,1
    - Dst: silk_find_pitch_lags_FLP
      Src: /src/opus/silk/float/encode_frame_FLP.c:151,1
    - Dst: silk_noise_shape_analysis_FLP
      Src: /src/opus/silk/float/encode_frame_FLP.c:156,1
    - Dst: silk_find_pred_coefs_FLP
      Src: /src/opus/silk/float/encode_frame_FLP.c:161,1
    - Dst: silk_process_gains_FLP
      Src: /src/opus/silk/float/encode_frame_FLP.c:166,1
    - Dst: silk_LBRR_encode_FLP
      Src: /src/opus/silk/float/encode_frame_FLP.c:171,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/float/encode_frame_FLP.c:175,1
    - Dst: silk_gains_ID
      Src: /src/opus/silk/float/encode_frame_FLP.c:178,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/float/encode_frame_FLP.c:182,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/float/encode_frame_FLP.c:183,1
    - Dst: ALLOC
      Src: /src/opus/silk/float/encode_frame_FLP.c:187,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/float/encode_frame_FLP.c:196,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/float/encode_frame_FLP.c:197,1
    - Dst: silk_NSQ_wrapper_FLP
      Src: /src/opus/silk/float/encode_frame_FLP.c:206,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/float/encode_frame_FLP.c:209,1
    - Dst: silk_encode_indices
      Src: /src/opus/silk/float/encode_frame_FLP.c:215,1
    - Dst: silk_encode_pulses
      Src: /src/opus/silk/float/encode_frame_FLP.c:220,1
    - Dst: ec_tell
      Src: /src/opus/silk/float/encode_frame_FLP.c:223,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/float/encode_frame_FLP.c:227,1
    - Dst: silk_encode_indices
      Src: /src/opus/silk/float/encode_frame_FLP.c:244,1
    - Dst: silk_encode_pulses
      Src: /src/opus/silk/float/encode_frame_FLP.c:246,1
    - Dst: ec_tell
      Src: /src/opus/silk/float/encode_frame_FLP.c:249,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/float/encode_frame_FLP.c:260,1
    - Dst: celt_assert
      Src: /src/opus/silk/float/encode_frame_FLP.c:261,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/float/encode_frame_FLP.c:262,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/float/encode_frame_FLP.c:263,1
    - Dst: silk_max_float
      Src: /src/opus/silk/float/encode_frame_FLP.c:272,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/float/encode_frame_FLP.c:290,1
    - Dst: celt_assert
      Src: /src/opus/silk/float/encode_frame_FLP.c:291,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/float/encode_frame_FLP.c:292,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/float/encode_frame_FLP.c:293,1
    - Dst: abs
      Src: /src/opus/silk/float/encode_frame_FLP.c:306,1
    - Dst: silk_min_32
      Src: /src/opus/silk/float/encode_frame_FLP.c:319,1
    - Dst: silk_max_32
      Src: /src/opus/silk/float/encode_frame_FLP.c:321,1
    - Dst: silk_ADD_RSHIFT32
      Src: /src/opus/silk/float/encode_frame_FLP.c:327,1
    - Dst: silk_ADD_RSHIFT32
      Src: /src/opus/silk/float/encode_frame_FLP.c:328,1
    - Dst: silk_SUB_RSHIFT32
      Src: /src/opus/silk/float/encode_frame_FLP.c:330,1
    - Dst: silk_SUB_RSHIFT32
      Src: /src/opus/silk/float/encode_frame_FLP.c:331,1
    - Dst: silk_LSHIFT_SAT32
      Src: /src/opus/silk/float/encode_frame_FLP.c:342,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/float/encode_frame_FLP.c:342,1
    - Dst: silk_gains_quant
      Src: /src/opus/silk/float/encode_frame_FLP.c:347,1
    - Dst: silk_gains_ID
      Src: /src/opus/silk/float/encode_frame_FLP.c:351,1
    - Dst: silk_memmove
      Src: /src/opus/silk/float/encode_frame_FLP.c:361,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/float/encode_frame_FLP.c:381,1
    - Dst: ec_tell
      Src: /src/opus/silk/float/encode_frame_FLP.c:381,1
    CyclomaticComplexity: 44
    EdgeCount: 44
    ICount: 171
    argCount: 6
    argNames:
    - psEnc
    - pnBytesOut
    - psRangeEnc
    - condCoding
    - maxBits
    - useCBR
    argTypes:
    - silk_encoder_state_FLP*
    - opus_int32*
    - ec_enc*
    - opus_int
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 85
    functionDepth: 4
    functionLinenumber: 85
    functionLinenumberEnd: 385
    functionName: silk_encode_frame_FLP
    functionSourceFile: /src/opus/silk/float/encode_frame_FLP.c
    functionUses: 0
    functionsReached:
    - silk_NSQ_wrapper_FLP
    - silk_LBRR_encode_FLP
    - silk_SMULWB
    - silk_min_32
    - silk_LP_variable_cutoff
    - ec_tell
    - silk_SUB_RSHIFT32
    - silk_encode_pulses
    - silk_RSHIFT
    - silk_process_gains_FLP
    - silk_gains_ID
    - silk_encode_indices
    - silk_short2float_array
    - VARDECL
    - ALLOC
    - celt_assert
    - silk_find_pitch_lags_FLP
    - silk_ADD_RSHIFT32
    - abs
    - silk_max_32
    - silk_memmove
    - silk_noise_shape_analysis_FLP
    - SILK_FIX_CONST
    - silk_memcpy
    - silk_max_float
    - silk_gains_quant
    - silk_find_pred_coefs_FLP
    - silk_LSHIFT_SAT32
    linkageType: ''
    returnType: opus_int
    signature: "opus_int silk_encode_frame_FLP(\n    silk_encoder_state_FLP          *psEnc,
      \                            /* I/O  Encoder state FLP                           */\n
      \   opus_int32                      *pnBytesOut,                        /* O
      \   Number of payload bytes;                    */\n    ec_enc                          *psRangeEnc,
      \                       /* I/O  compressor data structure                   */\n
      \   opus_int                        condCoding,                         /* I
      \   The type of conditional coding to use       */\n    opus_int                        maxBits,
      \                           /* I    If > 0: maximum number of output bits       */\n
      \   opus_int                        useCBR                              /* I
      \   Flag to force constant-bitrate operation    */\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/silk/float/encode_frame_FLP.c:399,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/float/encode_frame_FLP.c:405,1
    - Dst: ALLOC
      Src: /src/opus/silk/float/encode_frame_FLP.c:408,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/float/encode_frame_FLP.c:413,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/float/encode_frame_FLP.c:414,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/float/encode_frame_FLP.c:417,1
    - Dst: silk_min_int
      Src: /src/opus/silk/float/encode_frame_FLP.c:425,1
    - Dst: silk_gains_dequant
      Src: /src/opus/silk/float/encode_frame_FLP.c:429,1
    - Dst: silk_NSQ_wrapper_FLP
      Src: /src/opus/silk/float/encode_frame_FLP.c:440,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/float/encode_frame_FLP.c:444,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 4
    argNames:
    - psEnc
    - psEncCtrl
    - xfw
    - condCoding
    argTypes:
    - silk_encoder_state_FLP*
    - silk_encoder_control_FLP*
    - silk_float[]
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 447
      start: 388
    functionDepth: 3
    functionLinenumber: 388
    functionLinenumberEnd: 447
    functionName: silk_LBRR_encode_FLP
    functionSourceFile: /src/opus/silk/float/encode_frame_FLP.c
    functionUses: 1
    functionsReached:
    - silk_memcpy
    - silk_NSQ_wrapper_FLP
    - VARDECL
    - ALLOC
    - silk_gains_dequant
    - silk_min_int
    - SILK_FIX_CONST
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_LBRR_encode_FLP(\n    silk_encoder_state_FLP          *psEnc,
      \                            /* I/O  Encoder state FLP                           */\n
      \   silk_encoder_control_FLP        *psEncCtrl,                         /* I/O
      \ Encoder control FLP                         */\n    const silk_float                xfw[],
      \                             /* I    Input signal                                */\n
      \   opus_int                        condCoding                          /* I
      \   The type of conditional coding used so far for this frame */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_float2int
      Src: /src/opus/silk/float/wrappers_FLP.c:47,1
    - Dst: silk_A2NLSF
      Src: /src/opus/silk/float/wrappers_FLP.c:50,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - NLSF_Q15
    - pAR
    - LPC_order
    argTypes:
    - opus_int16*
    - silk_float*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 37
    functionDepth: 4
    functionLinenumber: 37
    functionLinenumberEnd: 51
    functionName: silk_A2NLSF_FLP
    functionSourceFile: /src/opus/silk/float/wrappers_FLP.c
    functionUses: 1
    functionsReached:
    - silk_A2NLSF
    - silk_float2int
    linkageType: ''
    returnType: void
    signature: "void silk_A2NLSF_FLP(\n    opus_int16                      *NLSF_Q15,
      \                         /* O    NLSF vector      [ LPC_order ]              */\n
      \   const silk_float                *pAR,                               /* I
      \   LPC coefficients [ LPC_order ]              */\n    const opus_int                  LPC_order
      \                          /* I    LPC order                                   */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_NLSF2A
      Src: /src/opus/silk/float/wrappers_FLP.c:64,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - pAR
    - NLSF_Q15
    - LPC_order
    - arch
    argTypes:
    - silk_float*
    - opus_int16*
    - opus_int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 54
    functionDepth: 3
    functionLinenumber: 54
    functionLinenumberEnd: 69
    functionName: silk_NLSF2A_FLP
    functionSourceFile: /src/opus/silk/float/wrappers_FLP.c
    functionUses: 1
    functionsReached:
    - silk_NLSF2A
    linkageType: ''
    returnType: void
    signature: "void silk_NLSF2A_FLP(\n    silk_float                      *pAR,                               /*
      O    LPC coefficients [ LPC_order ]              */\n    const opus_int16                *NLSF_Q15,
      \                         /* I    NLSF vector      [ LPC_order ]              */\n
      \   const opus_int                  LPC_order,                          /* I
      \   LPC order                                   */\n    int                             arch
      \                               /* I    Run-time architecture                       */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_process_NLSFs
      Src: /src/opus/silk/float/wrappers_FLP.c:84,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 4
    argNames:
    - psEncC
    - PredCoef
    - NLSF_Q15
    - prev_NLSF_Q15
    argTypes:
    - silk_encoder_state*
    - silk_float[][]
    - opus_int16[]
    - opus_int16[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 74
    functionDepth: 3
    functionLinenumber: 74
    functionLinenumberEnd: 91
    functionName: silk_process_NLSFs_FLP
    functionSourceFile: /src/opus/silk/float/wrappers_FLP.c
    functionUses: 1
    functionsReached:
    - silk_process_NLSFs
    linkageType: ''
    returnType: void
    signature: "void silk_process_NLSFs_FLP(\n    silk_encoder_state              *psEncC,
      \                           /* I/O  Encoder state                               */\n
      \   silk_float                      PredCoef[ 2 ][ MAX_LPC_ORDER ],     /* O
      \   Prediction coefficients                     */\n    opus_int16                      NLSF_Q15[
      \     MAX_LPC_ORDER ],     /* I/O  Normalized LSFs (quant out) (0 - (2^15-1))
      \ */\n    const opus_int16                prev_NLSF_Q15[ MAX_LPC_ORDER ]      /*
      I    Previous Normalized LSFs (0 - (2^15-1))     */\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: silk_float2int
      Src: /src/opus/silk/float/wrappers_FLP.c:123,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/float/wrappers_FLP.c:128,1
    - Dst: silk_float2int
      Src: /src/opus/silk/float/wrappers_FLP.c:128,1
    - Dst: silk_float2int
      Src: /src/opus/silk/float/wrappers_FLP.c:129,1
    - Dst: silk_float2int
      Src: /src/opus/silk/float/wrappers_FLP.c:130,1
    - Dst: silk_float2int
      Src: /src/opus/silk/float/wrappers_FLP.c:131,1
    - Dst: silk_float2int
      Src: /src/opus/silk/float/wrappers_FLP.c:133,1
    - Dst: silk_float2int
      Src: /src/opus/silk/float/wrappers_FLP.c:137,1
    - Dst: silk_float2int
      Src: /src/opus/silk/float/wrappers_FLP.c:142,1
    - Dst: silk_float2int
      Src: /src/opus/silk/float/wrappers_FLP.c:147,1
    - Dst: silk_assert
      Src: /src/opus/silk/float/wrappers_FLP.c:148,1
    - Dst: silk_float2int
      Src: /src/opus/silk/float/wrappers_FLP.c:159,1
    - Dst: silk_NSQ_del_dec
      Src: /src/opus/silk/float/wrappers_FLP.c:164,1
    - Dst: silk_NSQ
      Src: /src/opus/silk/float/wrappers_FLP.c:167,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 37
    argCount: 6
    argNames:
    - psEnc
    - psEncCtrl
    - psIndices
    - psNSQ
    - pulses
    - x
    argTypes:
    - silk_encoder_state_FLP*
    - silk_encoder_control_FLP*
    - SideInfoIndices*
    - silk_nsq_state*
    - opus_int8[]
    - silk_float[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 170
    functionName: silk_NSQ_wrapper_FLP
    functionSourceFile: /src/opus/silk/float/wrappers_FLP.c
    functionUses: 2
    functionsReached:
    - silk_float2int
    - silk_NSQ_del_dec
    - silk_assert
    - silk_NSQ
    - silk_LSHIFT32
    linkageType: ''
    returnType: void
    signature: "void silk_NSQ_wrapper_FLP(\n    silk_encoder_state_FLP          *psEnc,
      \                            /* I/O  Encoder state FLP                           */\n
      \   silk_encoder_control_FLP        *psEncCtrl,                         /* I/O
      \ Encoder control FLP                         */\n    SideInfoIndices                 *psIndices,
      \                        /* I/O  Quantization indices                        */\n
      \   silk_nsq_state                  *psNSQ,                             /* I/O
      \ Noise Shaping Quantzation state             */\n    opus_int8                       pulses[],
      \                          /* O    Quantized pulse signal                      */\n
      \   const silk_float                x[]                                 /* I
      \   Prefiltered input signal                    */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_float2int
      Src: /src/opus/silk/float/wrappers_FLP.c:195,1
    - Dst: silk_float2int
      Src: /src/opus/silk/float/wrappers_FLP.c:199,1
    - Dst: silk_quant_LTP_gains
      Src: /src/opus/silk/float/wrappers_FLP.c:202,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 10
    argNames:
    - B
    - cbk_index
    - periodicity_index
    - sum_log_gain_Q7
    - pred_gain_dB
    - XX
    - xX
    - subfr_len
    - nb_subfr
    - arch
    argTypes:
    - silk_float[]
    - opus_int8[]
    - opus_int8*
    - opus_int32*
    - silk_float*
    - silk_float[]
    - silk_float[]
    - opus_int
    - opus_int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 175
    functionDepth: 3
    functionLinenumber: 175
    functionLinenumberEnd: 209
    functionName: silk_quant_LTP_gains_FLP
    functionSourceFile: /src/opus/silk/float/wrappers_FLP.c
    functionUses: 1
    functionsReached:
    - silk_quant_LTP_gains
    - silk_float2int
    linkageType: ''
    returnType: void
    signature: "void silk_quant_LTP_gains_FLP(\n    silk_float                      B[
      MAX_NB_SUBFR * LTP_ORDER ],      /* O    Quantized LTP gains                            */\n
      \   opus_int8                       cbk_index[ MAX_NB_SUBFR ],          /* O
      \   Codebook index                              */\n    opus_int8                       *periodicity_index,
      \                /* O    Periodicity index                           */\n    opus_int32
      \                     *sum_log_gain_Q7,                   /* I/O  Cumulative
      max prediction gain  */\n    silk_float                      *pred_gain_dB,
      \                       /* O    LTP prediction gain                            */\n
      \   const silk_float                XX[ MAX_NB_SUBFR * LTP_ORDER * LTP_ORDER
      ], /* I    Correlation matrix                    */\n    const silk_float                xX[
      MAX_NB_SUBFR * LTP_ORDER ],        /* I    Correlation vector                            */\n
      \   const opus_int                    subfr_len,                            /*
      I    Number of samples per subframe                */\n    const opus_int                    nb_subfr,
      \                          /* I    Number of subframes                            */\n
      \   int                             arch                                /* I
      \   Run-time architecture                       */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/silk/float/schur_FLP.c:44,1
    - Dst: silk_max_float
      Src: /src/opus/silk/float/schur_FLP.c:54,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 3
    argNames:
    - refl_coef
    - auto_corr
    - order
    argTypes:
    - silk_float[]
    - silk_float[]
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 70
    functionName: silk_schur_FLP
    functionSourceFile: /src/opus/silk/float/schur_FLP.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - silk_max_float
    linkageType: ''
    returnType: silk_float
    signature: "silk_float silk_schur_FLP(                  /* O    returns residual
      energy                                     */\n    silk_float          refl_coef[],
      \       /* O    reflection coefficients (length order)                      */\n
      \   const silk_float    auto_corr[],        /* I    autocorrelation sequence
      (length order+1)                   */\n    opus_int            order               /*
      I    order                                                       */\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/silk/float/apply_sine_window_FLP.c:48,1
    - Dst: celt_assert
      Src: /src/opus/silk/float/apply_sine_window_FLP.c:51,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 4
    argNames:
    - px_win
    - px
    - win_type
    - length
    argTypes:
    - silk_float[]
    - silk_float[]
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 81
    functionName: silk_apply_sine_window_FLP
    functionSourceFile: /src/opus/silk/float/apply_sine_window_FLP.c
    functionUses: 1
    functionsReached:
    - celt_assert
    linkageType: ''
    returnType: void
    signature: "void silk_apply_sine_window_FLP(\n    silk_float                      px_win[],
      \                          /* O    Pointer to windowed signal                  */\n
      \   const silk_float                px[],                               /* I
      \   Pointer to input signal                     */\n    const opus_int                  win_type,
      \                          /* I    Selects a window type                       */\n
      \   const opus_int                  length                              /* I
      \   Window length, multiple of 4                */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - data1
    - ','
    - data2
    - ','
    - dataSize
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 134
    functionName: silk_inner_product_FLP
    functionSourceFile: /src/opus/silk/float/SigProc_FLP.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_inner_product_FLP(data1, data2, dataSize, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 150
    functionName: silk_min_float
    functionSourceFile: /src/opus/silk/float/SigProc_FLP.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_min_float( a, b )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 151
    functionName: silk_max_float
    functionSourceFile: /src/opus/silk/float/SigProc_FLP.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_max_float( a, b )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 152
    functionName: silk_abs_float
    functionSourceFile: /src/opus/silk/float/SigProc_FLP.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_abs_float( a )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: exp
      Src: /src/opus/silk/float/SigProc_FLP.h:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - silk_float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 157
    functionName: silk_sigmoid
    functionSourceFile: /src/opus/silk/float/SigProc_FLP.h
    functionUses: 2
    functionsReached:
    - exp
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_sigmoid( silk_float x )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: float2int
      Src: /src/opus/silk/float/SigProc_FLP.h:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - silk_float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 160
    functionDepth: 1
    functionLinenumber: 160
    functionLinenumberEnd: 163
    functionName: silk_float2int
    functionSourceFile: /src/opus/silk/float/SigProc_FLP.h
    functionUses: 3
    functionsReached:
    - float2int
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_float2int( silk_float x )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_SAT16
      Src: /src/opus/silk/float/SigProc_FLP.h:174,1
    - Dst: float2int
      Src: /src/opus/silk/float/SigProc_FLP.h:174,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - out
    - in
    - length
    argTypes:
    - opus_int16*
    - silk_float*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 166
    functionDepth: 1
    functionLinenumber: 166
    functionLinenumberEnd: 176
    functionName: silk_float2short_array
    functionSourceFile: /src/opus/silk/float/SigProc_FLP.h
    functionUses: 2
    functionsReached:
    - float2int
    - silk_SAT16
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_float2short_array(\n    opus_int16       *out,\n
      \   const silk_float *in,\n    opus_int32       length\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - out
    - in
    - length
    argTypes:
    - silk_float*
    - opus_int16*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 189
    functionName: silk_short2float_array
    functionSourceFile: /src/opus/silk/float/SigProc_FLP.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_short2float_array(\n    silk_float       *out,\n
      \   const opus_int16 *in,\n    opus_int32       length\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: log10
      Src: /src/opus/silk/float/SigProc_FLP.h:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 195
    functionName: silk_log2
    functionSourceFile: /src/opus/silk/float/SigProc_FLP.h
    functionUses: 2
    functionsReached:
    - log10
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_log2( double x )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: silk_corrMatrix_FLP
      Src: /src/opus/silk/float/find_LTP_FLP.c:54,1
    - Dst: silk_corrVector_FLP
      Src: /src/opus/silk/float/find_LTP_FLP.c:55,1
    - Dst: silk_energy_FLP
      Src: /src/opus/silk/float/find_LTP_FLP.c:56,1
    - Dst: silk_max
      Src: /src/opus/silk/float/find_LTP_FLP.c:57,1
    - Dst: silk_scale_vector_FLP
      Src: /src/opus/silk/float/find_LTP_FLP.c:58,1
    - Dst: silk_scale_vector_FLP
      Src: /src/opus/silk/float/find_LTP_FLP.c:59,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 7
    argNames:
    - XX
    - xX
    - r_ptr
    - lag
    - subfr_length
    - nb_subfr
    - arch
    argTypes:
    - silk_float[]
    - silk_float[]
    - silk_float[]
    - opus_int[]
    - opus_int
    - opus_int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 35
    functionDepth: 2
    functionLinenumber: 35
    functionLinenumberEnd: 65
    functionName: silk_find_LTP_FLP
    functionSourceFile: /src/opus/silk/float/find_LTP_FLP.c
    functionUses: 1
    functionsReached:
    - silk_scale_vector_FLP
    - silk_energy_FLP
    - silk_corrVector_FLP
    - silk_max
    - silk_corrMatrix_FLP
    linkageType: ''
    returnType: void
    signature: "void silk_find_LTP_FLP(\n    silk_float                      XX[ MAX_NB_SUBFR
      * LTP_ORDER * LTP_ORDER ], /* O    Weight for LTP quantization         */\n
      \   silk_float                      xX[ MAX_NB_SUBFR * LTP_ORDER ],     /* O
      \   Weight for LTP quantization                 */\n    const silk_float                r_ptr[],
      \                           /* I    LPC residual                                */\n
      \   const opus_int                  lag[ MAX_NB_SUBFR ],                /* I
      \   LTP lags                                    */\n    const opus_int                  subfr_length,
      \                      /* I    Subframe length                             */\n
      \   const opus_int                  nb_subfr,                           /* I
      \   number of subframes                         */\n    int                             arch\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/silk/float/find_pitch_lags_FLP.c:59,1
    - Dst: silk_apply_sine_window_FLP
      Src: /src/opus/silk/float/find_pitch_lags_FLP.c:72,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/float/find_pitch_lags_FLP.c:77,1
    - Dst: silk_apply_sine_window_FLP
      Src: /src/opus/silk/float/find_pitch_lags_FLP.c:82,1
    - Dst: silk_autocorrelation_FLP
      Src: /src/opus/silk/float/find_pitch_lags_FLP.c:85,1
    - Dst: silk_schur_FLP
      Src: /src/opus/silk/float/find_pitch_lags_FLP.c:91,1
    - Dst: silk_max_float
      Src: /src/opus/silk/float/find_pitch_lags_FLP.c:94,1
    - Dst: silk_k2a_FLP
      Src: /src/opus/silk/float/find_pitch_lags_FLP.c:97,1
    - Dst: silk_bwexpander_FLP
      Src: /src/opus/silk/float/find_pitch_lags_FLP.c:100,1
    - Dst: silk_LPC_analysis_filter_FLP
      Src: /src/opus/silk/float/find_pitch_lags_FLP.c:105,1
    - Dst: silk_pitch_analysis_core_FLP
      Src: /src/opus/silk/float/find_pitch_lags_FLP.c:118,1
    - Dst: silk_memset
      Src: /src/opus/silk/float/find_pitch_lags_FLP.c:127,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 37
    argCount: 5
    argNames:
    - psEnc
    - psEncCtrl
    - res
    - x
    - arch
    argTypes:
    - silk_encoder_state_FLP*
    - silk_encoder_control_FLP*
    - silk_float[]
    - silk_float[]
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 36
    functionDepth: 4
    functionLinenumber: 36
    functionLinenumberEnd: 132
    functionName: silk_find_pitch_lags_FLP
    functionSourceFile: /src/opus/silk/float/find_pitch_lags_FLP.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - silk_memcpy
    - silk_apply_sine_window_FLP
    - silk_k2a_FLP
    - silk_memset
    - silk_schur_FLP
    - silk_max_float
    - silk_LPC_analysis_filter_FLP
    - silk_pitch_analysis_core_FLP
    - silk_bwexpander_FLP
    - silk_autocorrelation_FLP
    linkageType: ''
    returnType: void
    signature: "void silk_find_pitch_lags_FLP(\n    silk_encoder_state_FLP          *psEnc,
      \                            /* I/O  Encoder state FLP                           */\n
      \   silk_encoder_control_FLP        *psEncCtrl,                         /* I/O
      \ Encoder control FLP                         */\n    silk_float                      res[],
      \                             /* O    Residual                                    */\n
      \   const silk_float                x[],                                /* I
      \   Speech signal                               */\n    int                             arch
      \                               /* I    Run-time architecture                       */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 4
    argNames:
    - data_out
    - data_in
    - gain
    - dataSize
    argTypes:
    - silk_float*
    - silk_float*
    - silk_float
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 57
    functionName: silk_scale_copy_vector_FLP
    functionSourceFile: /src/opus/silk/float/scale_copy_vector_FLP.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void silk_scale_copy_vector_FLP(\n    silk_float          *data_out,\n
      \   const silk_float    *data_in,\n    silk_float          gain,\n    opus_int
      \           dataSize\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/silk/float/sort_FLP.c:50,1
    - Dst: celt_assert
      Src: /src/opus/silk/float/sort_FLP.c:51,1
    - Dst: celt_assert
      Src: /src/opus/silk/float/sort_FLP.c:52,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 4
    argNames:
    - a
    - idx
    - L
    - K
    argTypes:
    - silk_float*
    - opus_int*
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 83
    functionName: silk_insertion_sort_decreasing_FLP
    functionSourceFile: /src/opus/silk/float/sort_FLP.c
    functionUses: 1
    functionsReached:
    - celt_assert
    linkageType: ''
    returnType: void
    signature: "void silk_insertion_sort_decreasing_FLP(\n    silk_float          *a,
      \                /* I/O  Unsorted / Sorted vector                                    */\n
      \   opus_int            *idx,               /* O    Index vector for the sorted
      elements                        */\n    const opus_int      L,                  /*
      I    Vector length                                               */\n    const
      opus_int      K                   /* I    Number of correctly sorted positions
      \                       */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 8
    argNames:
    - LTP_res
    - x
    - B
    - pitchL
    - invGains
    - subfr_length
    - nb_subfr
    - pre_length
    argTypes:
    - silk_float*
    - silk_float*
    - silk_float[]
    - opus_int[]
    - silk_float[]
    - opus_int
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 75
    functionName: silk_LTP_analysis_filter_FLP
    functionSourceFile: /src/opus/silk/float/LTP_analysis_filter_FLP.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void silk_LTP_analysis_filter_FLP(\n    silk_float                      *LTP_res,
      \                          /* O    LTP res MAX_NB_SUBFR*(pre_lgth+subfr_lngth)
      */\n    const silk_float                *x,                                 /*
      I    Input signal, with preceding samples        */\n    const silk_float                B[
      LTP_ORDER * MAX_NB_SUBFR ],      /* I    LTP coefficients for each subframe
      \         */\n    const opus_int                  pitchL[   MAX_NB_SUBFR ],
      \          /* I    Pitch lags                                  */\n    const
      silk_float                invGains[ MAX_NB_SUBFR ],           /* I    Inverse
      quantization gains                  */\n    const opus_int                  subfr_length,
      \                      /* I    Length of each subframe                     */\n
      \   const opus_int                  nb_subfr,                           /* I
      \   number of subframes                         */\n    const opus_int                  pre_length
      \                         /* I    Preceding samples for each subframe         */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - A
    - rc
    - order
    argTypes:
    - silk_float*
    - silk_float*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 54
    functionName: silk_k2a_FLP
    functionSourceFile: /src/opus/silk/float/k2a_FLP.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void silk_k2a_FLP(\n    silk_float          *A,                 /*
      O     prediction coefficients [order]                            */\n    const
      silk_float    *rc,                /* I     reflection coefficients [order]                            */\n
      \   opus_int32          order               /* I     prediction order                                           */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: matrix_ptr
      Src: /src/opus/silk/float/regularize_correlations_FLP.c:45,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - XX
    - xx
    - noise
    - D
    argTypes:
    - silk_float*
    - silk_float*
    - silk_float
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 48
    functionName: silk_regularize_correlations_FLP
    functionSourceFile: /src/opus/silk/float/regularize_correlations_FLP.c
    functionUses: 0
    functionsReached:
    - matrix_ptr
    linkageType: ''
    returnType: void
    signature: "void silk_regularize_correlations_FLP(\n    silk_float                      *XX,
      \                               /* I/O  Correlation matrices                        */\n
      \   silk_float                      *xx,                                /* I/O
      \ Correlation values                          */\n    const silk_float                noise,
      \                             /* I    Noise energy to add                         */\n
      \   const opus_int                  D                                   /* I
      \   Dimension of XX                             */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm256_setzero_pd
      Src: /src/opus/silk/float/x86/inner_product_FLP_avx2.c:50,1
    - Dst: _mm_loadu_ps
      Src: /src/opus/silk/float/x86/inner_product_FLP_avx2.c:54,1
    - Dst: _mm_loadu_ps
      Src: /src/opus/silk/float/x86/inner_product_FLP_avx2.c:55,1
    - Dst: _mm256_cvtps_pd
      Src: /src/opus/silk/float/x86/inner_product_FLP_avx2.c:56,1
    - Dst: _mm256_cvtps_pd
      Src: /src/opus/silk/float/x86/inner_product_FLP_avx2.c:57,1
    - Dst: _mm256_fmadd_pd
      Src: /src/opus/silk/float/x86/inner_product_FLP_avx2.c:58,1
    - Dst: _mm_loadu_ps
      Src: /src/opus/silk/float/x86/inner_product_FLP_avx2.c:59,1
    - Dst: _mm_loadu_ps
      Src: /src/opus/silk/float/x86/inner_product_FLP_avx2.c:60,1
    - Dst: _mm256_cvtps_pd
      Src: /src/opus/silk/float/x86/inner_product_FLP_avx2.c:61,1
    - Dst: _mm256_cvtps_pd
      Src: /src/opus/silk/float/x86/inner_product_FLP_avx2.c:62,1
    - Dst: _mm256_fmadd_pd
      Src: /src/opus/silk/float/x86/inner_product_FLP_avx2.c:63,1
    - Dst: _mm_loadu_ps
      Src: /src/opus/silk/float/x86/inner_product_FLP_avx2.c:68,1
    - Dst: _mm_loadu_ps
      Src: /src/opus/silk/float/x86/inner_product_FLP_avx2.c:69,1
    - Dst: _mm256_cvtps_pd
      Src: /src/opus/silk/float/x86/inner_product_FLP_avx2.c:70,1
    - Dst: _mm256_cvtps_pd
      Src: /src/opus/silk/float/x86/inner_product_FLP_avx2.c:71,1
    - Dst: _mm256_fmadd_pd
      Src: /src/opus/silk/float/x86/inner_product_FLP_avx2.c:72,1
    - Dst: _mm256_add_pd
      Src: /src/opus/silk/float/x86/inner_product_FLP_avx2.c:74,1
    - Dst: _mm256_add_pd
      Src: /src/opus/silk/float/x86/inner_product_FLP_avx2.c:75,1
    - Dst: _mm256_permute2f128_pd
      Src: /src/opus/silk/float/x86/inner_product_FLP_avx2.c:75,1
    - Dst: _mm256_hadd_pd
      Src: /src/opus/silk/float/x86/inner_product_FLP_avx2.c:76,1
    - Dst: _mm256_cvtsd_f64
      Src: /src/opus/silk/float/x86/inner_product_FLP_avx2.c:77,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 30
    argCount: 3
    argNames:
    - data1
    - data2
    - dataSize
    argTypes:
    - silk_float*
    - silk_float*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 85
    functionName: silk_inner_product_FLP_avx2
    functionSourceFile: /src/opus/silk/float/x86/inner_product_FLP_avx2.c
    functionUses: 0
    functionsReached:
    - _mm256_cvtps_pd
    - _mm256_permute2f128_pd
    - _mm256_add_pd
    - _mm256_cvtsd_f64
    - _mm_loadu_ps
    - _mm256_fmadd_pd
    - _mm256_setzero_pd
    - _mm256_hadd_pd
    linkageType: ''
    returnType: double
    signature: "double silk_inner_product_FLP_avx2(\n    const silk_float    *data1,\n
      \   const silk_float    *data2,\n    opus_int            dataSize\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 35
    functionName: SAFE_SHL
    functionSourceFile: /src/opus/silk/xtensa/macros_lx7.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SAFE_SHL(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SAFE_SHL
      Src: /src/opus/silk/xtensa/macros_lx7.h:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a32
    - b32
    argTypes:
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 47
    functionName: silk_SMULWB_lx7
    functionSourceFile: /src/opus/silk/xtensa/macros_lx7.h
    functionUses: 0
    functionsReached:
    - SAFE_SHL
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SMULWB_lx7(opus_int32 a32, opus_int32 b32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a32
    - ','
    - b32
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 49
    functionName: silk_SMULWB
    functionSourceFile: /src/opus/silk/xtensa/macros_lx7.h
    functionUses: 51
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMULWB(a32, b32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a32
    - ','
    - b32
    - ','
    - c32
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 53
    functionName: silk_SMLAWB
    functionSourceFile: /src/opus/silk/xtensa/macros_lx7.h
    functionUses: 52
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMLAWB(a32, b32, c32)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SAFE_SHL
      Src: /src/opus/silk/xtensa/macros_lx7.h:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a32
    - b32
    argTypes:
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 65
    functionName: silk_SMULWT_lx7
    functionSourceFile: /src/opus/silk/xtensa/macros_lx7.h
    functionUses: 0
    functionsReached:
    - SAFE_SHL
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SMULWT_lx7(opus_int32 a32, opus_int32 b32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a32
    - ','
    - b32
    - ','
    - c32
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 70
    functionName: silk_SMLAWT
    functionSourceFile: /src/opus/silk/xtensa/macros_lx7.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMLAWT(a32, b32, c32)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: __builtin_clz
      Src: /src/opus/silk/xtensa/macros_lx7.h:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - in32
    argTypes:
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: silk_CLZ32_lx7
    functionSourceFile: /src/opus/silk/xtensa/macros_lx7.h
    functionUses: 0
    functionsReached:
    - __builtin_clz
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_CLZ32_lx7(opus_int32 in32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - in32
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 77
    functionName: silk_CLZ32
    functionSourceFile: /src/opus/silk/xtensa/macros_lx7.h
    functionUses: 13
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_CLZ32(in32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - a
    argTypes:
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 41
    functionName: silk_SAT16_lx7
    functionSourceFile: /src/opus/silk/xtensa/SigProc_FIX_lx7.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: short int
    signature: short int silk_SAT16_lx7(opus_int32 a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 43
    functionName: silk_SAT16
    functionSourceFile: /src/opus/silk/xtensa/SigProc_FIX_lx7.h
    functionUses: 36
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SAT16(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 33
    argNames:
    - (
    - psEncC
    - ','
    - NSQ
    - ','
    - psIndices
    - ','
    - x16
    - ','
    - pulses
    - ','
    - PredCoef_Q12
    - ','
    - LTPCoef_Q14
    - ','
    - AR_Q13
    - ','
    - HarmShapeGain_Q14
    - ','
    - Tilt_Q14
    - ','
    - LF_shp_Q14
    - ','
    - Gains_Q16
    - ','
    - pitchL
    - ','
    - Lambda_Q10
    - ','
    - LTP_scale_Q14
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 58
    functionName: silk_NSQ_del_dec
    functionSourceFile: /src/opus/silk/arm/NSQ_del_dec_arm.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: "silk_NSQ_del_dec(psEncC, NSQ, psIndices, x16, pulses, PredCoef_Q12,
      \ \\\n                         LTPCoef_Q14, AR_Q13, HarmShapeGain_Q14, Tilt_Q14,
      \  \\\n                         LF_shp_Q14, Gains_Q16, pitchL, Lambda_Q10,          \\\n
      \                        LTP_scale_Q14, arch)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 33
    argNames:
    - (
    - psEncC
    - ','
    - NSQ
    - ','
    - psIndices
    - ','
    - x16
    - ','
    - pulses
    - ','
    - PredCoef_Q12
    - ','
    - LTPCoef_Q14
    - ','
    - AR_Q13
    - ','
    - HarmShapeGain_Q14
    - ','
    - Tilt_Q14
    - ','
    - LF_shp_Q14
    - ','
    - Gains_Q16
    - ','
    - pitchL
    - ','
    - Lambda_Q10
    - ','
    - LTP_scale_Q14
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 86
    functionName: silk_NSQ_del_dec
    functionSourceFile: /src/opus/silk/arm/NSQ_del_dec_arm.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: "silk_NSQ_del_dec(psEncC, NSQ, psIndices, x16, pulses, PredCoef_Q12,
      \\\n                         LTPCoef_Q14, AR_Q13, HarmShapeGain_Q14, Tilt_Q14,
      \ \\\n                         LF_shp_Q14, Gains_Q16, pitchL, Lambda_Q10,         \\\n
      \                        LTP_scale_Q14, arch)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 33
    argNames:
    - (
    - psEncC
    - ','
    - NSQ
    - ','
    - psIndices
    - ','
    - x16
    - ','
    - pulses
    - ','
    - PredCoef_Q12
    - ','
    - LTPCoef_Q14
    - ','
    - AR_Q13
    - ','
    - HarmShapeGain_Q14
    - ','
    - Tilt_Q14
    - ','
    - LF_shp_Q14
    - ','
    - Gains_Q16
    - ','
    - pitchL
    - ','
    - Lambda_Q10
    - ','
    - LTP_scale_Q14
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 97
    functionName: silk_NSQ_del_dec
    functionSourceFile: /src/opus/silk/arm/NSQ_del_dec_arm.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: "silk_NSQ_del_dec(psEncC, NSQ, psIndices, x16, pulses, PredCoef_Q12,
      \  \\\n                         LTPCoef_Q14, AR_Q13, HarmShapeGain_Q14, Tilt_Q14,
      \   \\\n                         LF_shp_Q14, Gains_Q16, pitchL, Lambda_Q10,
      \          \\\n                         LTP_scale_Q14, arch)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 35
    functionName: SAFE_SHL
    functionSourceFile: /src/opus/silk/arm/macros_armv4.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SAFE_SHL(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SAFE_SHL
      Src: /src/opus/silk/arm/macros_armv4.h:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int32
    - opus_int16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 49
    functionName: silk_SMULWB_armv4
    functionSourceFile: /src/opus/silk/arm/macros_armv4.h
    functionUses: 0
    functionsReached:
    - SAFE_SHL
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SMULWB_armv4(opus_int32 a, opus_int16 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 51
    functionName: silk_SMULWB
    functionSourceFile: /src/opus/silk/arm/macros_armv4.h
    functionUses: 51
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMULWB(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 55
    functionName: silk_SMLAWB
    functionSourceFile: /src/opus/silk/arm/macros_armv4.h
    functionUses: 52
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMLAWB(a, b, c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 69
    functionName: silk_SMULWT_armv4
    functionSourceFile: /src/opus/silk/arm/macros_armv4.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SMULWT_armv4(opus_int32 a, opus_int32 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 71
    functionName: silk_SMULWT
    functionSourceFile: /src/opus/silk/arm/macros_armv4.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMULWT(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 75
    functionName: silk_SMLAWT
    functionSourceFile: /src/opus/silk/arm/macros_armv4.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMLAWT(a, b, c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SAFE_SHL
      Src: /src/opus/silk/arm/macros_armv4.h:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 89
    functionName: silk_SMULWW_armv4
    functionSourceFile: /src/opus/silk/arm/macros_armv4.h
    functionUses: 0
    functionsReached:
    - SAFE_SHL
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SMULWW_armv4(opus_int32 a, opus_int32 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 91
    functionName: silk_SMULWW
    functionSourceFile: /src/opus/silk/arm/macros_armv4.h
    functionUses: 24
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMULWW(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SAFE_SHL
      Src: /src/opus/silk/arm/macros_armv4.h:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - a
    - b
    - c
    argTypes:
    - opus_int32
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 105
    functionName: silk_SMLAWW_armv4
    functionSourceFile: /src/opus/silk/arm/macros_armv4.h
    functionUses: 0
    functionsReached:
    - SAFE_SHL
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_SMLAWW_armv4(opus_int32 a, opus_int32 b,\n opus_int32
      c)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 107
    functionName: silk_SMLAWW
    functionSourceFile: /src/opus/silk/arm/macros_armv4.h
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMLAWW(a, b, c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_neon.c:40,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_neon.c:41,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_neon.c:42,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_neon.c:43,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_neon.c:45,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_neon.c:46,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_neon.c:47,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_neon.c:48,1
    - Dst: vqdmulhq_s32
      Src: /src/opus/silk/arm/NSQ_neon.c:50,1
    - Dst: vqdmulhq_s32
      Src: /src/opus/silk/arm/NSQ_neon.c:51,1
    - Dst: vqdmulhq_s32
      Src: /src/opus/silk/arm/NSQ_neon.c:52,1
    - Dst: vqdmulhq_s32
      Src: /src/opus/silk/arm/NSQ_neon.c:53,1
    - Dst: vaddq_s32
      Src: /src/opus/silk/arm/NSQ_neon.c:55,1
    - Dst: vaddq_s32
      Src: /src/opus/silk/arm/NSQ_neon.c:56,1
    - Dst: vaddq_s32
      Src: /src/opus/silk/arm/NSQ_neon.c:58,1
    - Dst: vpaddlq_s32
      Src: /src/opus/silk/arm/NSQ_neon.c:60,1
    - Dst: vadd_s64
      Src: /src/opus/silk/arm/NSQ_neon.c:62,1
    - Dst: vget_low_s64
      Src: /src/opus/silk/arm/NSQ_neon.c:62,1
    - Dst: vget_high_s64
      Src: /src/opus/silk/arm/NSQ_neon.c:62,1
    - Dst: vget_lane_s32
      Src: /src/opus/silk/arm/NSQ_neon.c:64,1
    - Dst: vreinterpret_s32_s64
      Src: /src/opus/silk/arm/NSQ_neon.c:64,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/arm/NSQ_neon.c:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - buf32
    - coef32
    - order
    argTypes:
    - opus_int32*
    - opus_int32*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 69
    functionName: silk_noise_shape_quantizer_short_prediction_neon
    functionSourceFile: /src/opus/silk/arm/NSQ_neon.c
    functionUses: 0
    functionsReached:
    - vget_lane_s32
    - vqdmulhq_s32
    - vreinterpret_s32_s64
    - silk_RSHIFT
    - vld1q_s32
    - vget_low_s64
    - vpaddlq_s32
    - vget_high_s64
    - vadd_s64
    - vaddq_s32
    linkageType: ''
    returnType: opus_int32
    signature: opus_int32 silk_noise_shape_quantizer_short_prediction_neon(const opus_int32
      *buf32, const opus_int32 *coef32, opus_int order)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/arm/NSQ_neon.c:77,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_neon.c:78,1
    - Dst: vextq_s32
      Src: /src/opus/silk/arm/NSQ_neon.c:80,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_neon.c:81,1
    - Dst: vld1q_s16
      Src: /src/opus/silk/arm/NSQ_neon.c:85,1
    - Dst: vmovl_s16
      Src: /src/opus/silk/arm/NSQ_neon.c:86,1
    - Dst: vget_low_s16
      Src: /src/opus/silk/arm/NSQ_neon.c:86,1
    - Dst: vmovl_s16
      Src: /src/opus/silk/arm/NSQ_neon.c:87,1
    - Dst: vget_high_s16
      Src: /src/opus/silk/arm/NSQ_neon.c:87,1
    - Dst: vmull_s32
      Src: /src/opus/silk/arm/NSQ_neon.c:97,1
    - Dst: vget_low_s32
      Src: /src/opus/silk/arm/NSQ_neon.c:97,1
    - Dst: vget_low_s32
      Src: /src/opus/silk/arm/NSQ_neon.c:97,1
    - Dst: vmlal_s32
      Src: /src/opus/silk/arm/NSQ_neon.c:98,1
    - Dst: vget_high_s32
      Src: /src/opus/silk/arm/NSQ_neon.c:98,1
    - Dst: vget_high_s32
      Src: /src/opus/silk/arm/NSQ_neon.c:98,1
    - Dst: vmlal_s32
      Src: /src/opus/silk/arm/NSQ_neon.c:99,1
    - Dst: vget_low_s32
      Src: /src/opus/silk/arm/NSQ_neon.c:99,1
    - Dst: vget_low_s32
      Src: /src/opus/silk/arm/NSQ_neon.c:99,1
    - Dst: vmlal_s32
      Src: /src/opus/silk/arm/NSQ_neon.c:100,1
    - Dst: vget_high_s32
      Src: /src/opus/silk/arm/NSQ_neon.c:100,1
    - Dst: vget_high_s32
      Src: /src/opus/silk/arm/NSQ_neon.c:100,1
    - Dst: vadd_s64
      Src: /src/opus/silk/arm/NSQ_neon.c:102,1
    - Dst: vget_low_s64
      Src: /src/opus/silk/arm/NSQ_neon.c:102,1
    - Dst: vget_high_s64
      Src: /src/opus/silk/arm/NSQ_neon.c:102,1
    - Dst: vrshr_n_s64
      Src: /src/opus/silk/arm/NSQ_neon.c:103,1
    - Dst: vreinterpret_s32_s64
      Src: /src/opus/silk/arm/NSQ_neon.c:104,1
    - Dst: vget_lane_s32
      Src: /src/opus/silk/arm/NSQ_neon.c:106,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_neon.c:107,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_neon.c:108,1
    - Dst: silk_NSQ_noise_shape_feedback_loop_c
      Src: /src/opus/silk/arm/NSQ_neon.c:111,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - data0
    - data1
    - coef
    - order
    argTypes:
    - opus_int32*
    - opus_int32*
    - opus_int16*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 72
    functionDepth: 2
    functionLinenumber: 72
    functionLinenumberEnd: 112
    functionName: silk_NSQ_noise_shape_feedback_loop_neon
    functionSourceFile: /src/opus/silk/arm/NSQ_neon.c
    functionUses: 0
    functionsReached:
    - vget_lane_s32
    - vget_low_s32
    - vst1q_s32
    - vget_high_s32
    - vget_high_s16
    - vmovl_s16
    - vrshr_n_s64
    - vget_low_s64
    - vget_high_s64
    - vdupq_n_s32
    - silk_NSQ_noise_shape_feedback_loop_c
    - vreinterpret_s32_s64
    - vget_low_s16
    - vmull_s32
    - vextq_s32
    - vadd_s64
    - vld1q_s16
    - vld1q_s32
    - vmlal_s32
    linkageType: ''
    returnType: opus_int32
    signature: opus_int32 silk_NSQ_noise_shape_feedback_loop_neon(const opus_int32
      *data0, opus_int32 *data1, const opus_int16 *coef, opus_int order)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - a
    - b
    - c
    argTypes:
    - opus_int32
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 44
    functionName: silk_MLA_armv4
    functionSourceFile: /src/opus/silk/arm/SigProc_FIX_armv4.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_MLA_armv4(opus_int32 a, opus_int32 b,\n opus_int32
      c)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 46
    functionName: silk_MLA
    functionSourceFile: /src/opus/silk/arm/SigProc_FIX_armv4.h
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_MLA(a, b, c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - A_Q12
    - ','
    - order
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 42
    functionName: silk_LPC_inverse_pred_gain
    functionSourceFile: /src/opus/silk/arm/LPC_inv_pred_gain_arm.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_LPC_inverse_pred_gain(A_Q12, order, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - A_Q12
    - ','
    - order
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 51
    functionName: silk_LPC_inverse_pred_gain
    functionSourceFile: /src/opus/silk/arm/LPC_inv_pred_gain_arm.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_LPC_inverse_pred_gain(A_Q12, order, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - A_Q12
    - ','
    - order
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 54
    functionName: silk_LPC_inverse_pred_gain
    functionSourceFile: /src/opus/silk/arm/LPC_inv_pred_gain_arm.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_LPC_inverse_pred_gain(A_Q12, order, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 35
    functionName: silk_ADD_SAT32
    functionSourceFile: /src/opus/silk/arm/macros_arm64.h
    functionUses: 13
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_ADD_SAT32(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 38
    functionName: silk_SUB_SAT32
    functionSourceFile: /src/opus/silk/arm/macros_arm64.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SUB_SAT32(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 36
    functionName: SAFE_SHL
    functionSourceFile: /src/opus/silk/arm/macros_armv5e.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SAFE_SHL(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int32
    - opus_int16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 49
    functionName: silk_SMULWB_armv5e
    functionSourceFile: /src/opus/silk/arm/macros_armv5e.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SMULWB_armv5e(opus_int32 a, opus_int16 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 51
    functionName: silk_SMULWB
    functionSourceFile: /src/opus/silk/arm/macros_armv5e.h
    functionUses: 51
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMULWB(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - a
    - b
    - c
    argTypes:
    - opus_int32
    - opus_int32
    - opus_int16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 65
    functionName: silk_SMLAWB_armv5e
    functionSourceFile: /src/opus/silk/arm/macros_armv5e.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_SMLAWB_armv5e(opus_int32 a, opus_int32 b,\n opus_int16
      c)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 67
    functionName: silk_SMLAWB
    functionSourceFile: /src/opus/silk/arm/macros_armv5e.h
    functionUses: 52
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMLAWB(a, b, c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 80
    functionName: silk_SMULWT_armv5e
    functionSourceFile: /src/opus/silk/arm/macros_armv5e.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SMULWT_armv5e(opus_int32 a, opus_int32 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 82
    functionName: silk_SMULWT
    functionSourceFile: /src/opus/silk/arm/macros_armv5e.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMULWT(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - a
    - b
    - c
    argTypes:
    - opus_int32
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 96
    functionName: silk_SMLAWT_armv5e
    functionSourceFile: /src/opus/silk/arm/macros_armv5e.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_SMLAWT_armv5e(opus_int32 a, opus_int32 b,\n opus_int32
      c)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 98
    functionName: silk_SMLAWT
    functionSourceFile: /src/opus/silk/arm/macros_armv5e.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMLAWT(a, b, c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 111
    functionName: silk_SMULBB_armv5e
    functionSourceFile: /src/opus/silk/arm/macros_armv5e.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SMULBB_armv5e(opus_int32 a, opus_int32 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 113
    functionName: silk_SMULBB
    functionSourceFile: /src/opus/silk/arm/macros_armv5e.h
    functionUses: 49
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMULBB(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - a
    - b
    - c
    argTypes:
    - opus_int32
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 127
    functionName: silk_SMLABB_armv5e
    functionSourceFile: /src/opus/silk/arm/macros_armv5e.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_SMLABB_armv5e(opus_int32 a, opus_int32 b,\n opus_int32
      c)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 129
    functionName: silk_SMLABB
    functionSourceFile: /src/opus/silk/arm/macros_armv5e.h
    functionUses: 15
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMLABB(a, b, c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 142
    functionName: silk_SMULBT_armv5e
    functionSourceFile: /src/opus/silk/arm/macros_armv5e.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SMULBT_armv5e(opus_int32 a, opus_int32 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 144
    functionName: silk_SMULBT
    functionSourceFile: /src/opus/silk/arm/macros_armv5e.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMULBT(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - a
    - b
    - c
    argTypes:
    - opus_int32
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 158
    functionName: silk_SMLABT_armv5e
    functionSourceFile: /src/opus/silk/arm/macros_armv5e.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_SMLABT_armv5e(opus_int32 a, opus_int32 b,\n opus_int32
      c)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 160
    functionName: silk_SMLABT
    functionSourceFile: /src/opus/silk/arm/macros_armv5e.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMLABT(a, b, c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 163
    functionDepth: 0
    functionLinenumber: 163
    functionLinenumberEnd: 173
    functionName: silk_ADD_SAT32_armv5e
    functionSourceFile: /src/opus/silk/arm/macros_armv5e.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_ADD_SAT32_armv5e(opus_int32 a, opus_int32 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 174
    functionDepth: 0
    functionLinenumber: 174
    functionLinenumberEnd: 175
    functionName: silk_ADD_SAT32
    functionSourceFile: /src/opus/silk/arm/macros_armv5e.h
    functionUses: 13
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_ADD_SAT32(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 187
    functionName: silk_SUB_SAT32_armv5e
    functionSourceFile: /src/opus/silk/arm/macros_armv5e.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SUB_SAT32_armv5e(opus_int32 a, opus_int32 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 189
    functionName: silk_SUB_SAT32
    functionSourceFile: /src/opus/silk/arm/macros_armv5e.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SUB_SAT32(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SAFE_SHL
      Src: /src/opus/silk/arm/macros_armv5e.h:198,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - in16
    argTypes:
    - opus_int16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 201
    functionName: silk_CLZ16_armv5
    functionSourceFile: /src/opus/silk/arm/macros_armv5e.h
    functionUses: 0
    functionsReached:
    - SAFE_SHL
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_CLZ16_armv5(opus_int16 in16)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - in16
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 203
    functionName: silk_CLZ16
    functionSourceFile: /src/opus/silk/arm/macros_armv5e.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_CLZ16(in16)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - in32
    argTypes:
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 215
    functionName: silk_CLZ32_armv5
    functionSourceFile: /src/opus/silk/arm/macros_armv5e.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_CLZ32_armv5(opus_int32 in32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - in32
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 217
    functionName: silk_CLZ32
    functionSourceFile: /src/opus/silk/arm/macros_armv5e.h
    functionUses: 13
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_CLZ32(in32)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vadd_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:43,1
    - Dst: vget_low_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:43,1
    - Dst: vcombine_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:44,1
    - Dst: vget_high_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:44,1
    - Dst: vdup_n_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:44,1
    - Dst: vshl_n_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:45,1
    - Dst: vcombine_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:46,1
    - Dst: vqdmulhq_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:47,1
    - Dst: vrsraq_n_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:48,1
    - Dst: vqdmulhq_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:49,1
    - Dst: vaddq_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:50,1
    - Dst: vqdmulhq_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:51,1
    - Dst: vaddq_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 7
    argNames:
    - A_L_s32x4
    - A_U_s32x4
    - B_Q28_s32x4
    - t_s32x2
    - in_s32x4
    - S_s32x4
    - out32_Q14_s32x2
    argTypes:
    - int32x4_t
    - int32x4_t
    - int32x4_t
    - int32x2_t
    - int32x4_t
    - int32x4_t*
    - int32x2_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 53
    functionName: silk_biquad_alt_stride2_kernel
    functionSourceFile: /src/opus/silk/arm/biquad_alt_neon_intr.c
    functionUses: 0
    functionsReached:
    - vshl_n_s32
    - vcombine_s32
    - vqdmulhq_s32
    - vget_low_s32
    - vrsraq_n_s32
    - vget_high_s32
    - vadd_s32
    - vdup_n_s32
    - vaddq_s32
    linkageType: ''
    returnType: void
    signature: void silk_biquad_alt_stride2_kernel( const int32x4_t A_L_s32x4, const
      int32x4_t A_U_s32x4, const int32x4_t B_Q28_s32x4, const int32x2_t t_s32x2, const
      int32x4_t in_s32x4, int32x4_t *S_s32x4, int32x2_t *out32_Q14_s32x2 )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: vdup_n_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:66,1
    - Dst: vcombine_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:67,1
    - Dst: vdup_n_s16
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:68,1
    - Dst: VARDECL
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:76,1
    - Dst: ALLOC
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:78,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:80,1
    - Dst: silk_biquad_alt_stride2_c
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:81,1
    - Dst: vld1_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:85,1
    - Dst: vneg_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:86,1
    - Dst: vshl_n_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:87,1
    - Dst: vreinterpret_s32_u32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:88,1
    - Dst: vshr_n_u32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:88,1
    - Dst: vreinterpret_u32_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:88,1
    - Dst: vshr_n_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:89,1
    - Dst: vshl_n_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:90,1
    - Dst: vshr_n_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:91,1
    - Dst: vld1_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:93,1
    - Dst: vld1_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:94,1
    - Dst: vzip_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:95,1
    - Dst: vzip_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:96,1
    - Dst: vzip_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:97,1
    - Dst: vcombine_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:98,1
    - Dst: vcombine_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:99,1
    - Dst: vcombine_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:100,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:101,1
    - Dst: vtrn_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:102,1
    - Dst: vget_low_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:102,1
    - Dst: vget_high_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:102,1
    - Dst: vcombine_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:103,1
    - Dst: vld1_s16
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:110,1
    - Dst: vshll_n_s16
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:111,1
    - Dst: vqdmulhq_lane_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:112,1
    - Dst: vcombine_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:113,1
    - Dst: vget_high_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:113,1
    - Dst: vget_high_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:113,1
    - Dst: vcombine_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:114,1
    - Dst: vget_low_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:114,1
    - Dst: vget_low_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:114,1
    - Dst: silk_biquad_alt_stride2_kernel
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:115,1
    - Dst: vget_low_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:115,1
    - Dst: silk_biquad_alt_stride2_kernel
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:116,1
    - Dst: vget_high_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:116,1
    - Dst: vcombine_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:119,1
    - Dst: vaddq_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:120,1
    - Dst: vqshrn_n_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:121,1
    - Dst: vst1_s16
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:122,1
    - Dst: vld1_lane_s16
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:131,1
    - Dst: vld1_lane_s16
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:132,1
    - Dst: vshll_n_s16
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:133,1
    - Dst: vqdmulh_lane_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:134,1
    - Dst: vget_low_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:134,1
    - Dst: vcombine_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:135,1
    - Dst: vget_low_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:135,1
    - Dst: vget_low_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:135,1
    - Dst: silk_biquad_alt_stride2_kernel
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:136,1
    - Dst: vadd_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:139,1
    - Dst: vcombine_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:140,1
    - Dst: vqshrn_n_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:141,1
    - Dst: vst1_lane_s16
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:142,1
    - Dst: vst1_lane_s16
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:143,1
    - Dst: vst1q_lane_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:146,1
    - Dst: vst1q_lane_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:147,1
    - Dst: vst1q_lane_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:148,1
    - Dst: vst1q_lane_s32
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:149,1
    - Dst: silk_assert
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:152,1
    - Dst: memcmp
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:152,1
    - Dst: silk_assert
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:153,1
    - Dst: memcmp
      Src: /src/opus/silk/arm/biquad_alt_neon_intr.c:153,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 57
    argCount: 6
    argNames:
    - in
    - B_Q28
    - A_Q28
    - S
    - out
    - len
    argTypes:
    - opus_int16*
    - opus_int32*
    - opus_int32*
    - opus_int32*
    - opus_int16*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 55
    functionDepth: 2
    functionLinenumber: 55
    functionLinenumberEnd: 156
    functionName: silk_biquad_alt_stride2_neon
    functionSourceFile: /src/opus/silk/arm/biquad_alt_neon_intr.c
    functionUses: 0
    functionsReached:
    - vld1_s16
    - vtrn_s32
    - vcombine_s32
    - vreinterpret_s32_u32
    - vreinterpret_u32_s32
    - vget_low_s32
    - vst1_lane_s16
    - vget_high_s32
    - vst1_s16
    - vdup_n_s32
    - vshr_n_u32
    - vqshrn_n_s32
    - silk_assert
    - VARDECL
    - ALLOC
    - vdup_n_s16
    - vshll_n_s16
    - silk_biquad_alt_stride2_kernel
    - vadd_s32
    - vneg_s32
    - vaddq_s32
    - vqdmulh_lane_s32
    - vshl_n_s32
    - vld1_s32
    - silk_biquad_alt_stride2_c
    - vshr_n_s32
    - vzip_s32
    - silk_memcpy
    - vqdmulhq_lane_s32
    - memcmp
    - vld1q_s32
    - vst1q_lane_s32
    - vld1_lane_s16
    linkageType: ''
    returnType: void
    signature: "void silk_biquad_alt_stride2_neon(\n    const opus_int16            *in,
      \               /* I     input signal                                               */\n
      \   const opus_int32            *B_Q28,             /* I     MA coefficients
      [3]                                        */\n    const opus_int32            *A_Q28,
      \            /* I     AR coefficients [2]                                        */\n
      \   opus_int32                  *S,                 /* I/O   State vector [4]
      \                                          */\n    opus_int16                  *out,
      \              /* O     output signal                                              */\n
      \   const opus_int32            len                 /* I     signal length (must
      be even)                               */\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/arm/NSQ_neon.h:37,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/arm/NSQ_neon.h:38,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/arm/NSQ_neon.h:39,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/arm/NSQ_neon.h:40,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/arm/NSQ_neon.h:41,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/arm/NSQ_neon.h:42,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/arm/NSQ_neon.h:43,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/arm/NSQ_neon.h:44,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/arm/NSQ_neon.h:45,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/arm/NSQ_neon.h:46,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/arm/NSQ_neon.h:50,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/arm/NSQ_neon.h:51,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/arm/NSQ_neon.h:52,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/arm/NSQ_neon.h:53,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/arm/NSQ_neon.h:54,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/arm/NSQ_neon.h:55,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 26
    argCount: 3
    argNames:
    - out
    - in
    - order
    argTypes:
    - opus_int32*
    - opus_int16*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 66
    functionName: silk_short_prediction_create_arch_coef_neon
    functionSourceFile: /src/opus/silk/arm/NSQ_neon.h
    functionUses: 0
    functionsReached:
    - silk_LSHIFT32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_short_prediction_create_arch_coef_neon(opus_int32
      *out, const opus_int16 *in, opus_int order)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - out
    - ','
    - in
    - ','
    - order
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: silk_short_prediction_create_arch_coef
    functionSourceFile: /src/opus/silk/arm/NSQ_neon.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_short_prediction_create_arch_coef(out, in, order)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - out
    - ','
    - in
    - ','
    - order
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionName: silk_short_prediction_create_arch_coef
    functionSourceFile: /src/opus/silk/arm/NSQ_neon.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_short_prediction_create_arch_coef(out, in, order)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - in
    - ','
    - coef
    - ','
    - coefRev
    - ','
    - order
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionName: silk_noise_shape_quantizer_short_prediction
    functionSourceFile: /src/opus/silk/arm/NSQ_neon.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_noise_shape_quantizer_short_prediction(in, coef, coefRev, order,
      arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - data0
    - ','
    - data1
    - ','
    - coef
    - ','
    - order
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 91
    functionName: silk_NSQ_noise_shape_feedback_loop
    functionSourceFile: /src/opus/silk/arm/NSQ_neon.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_NSQ_noise_shape_feedback_loop(data0, data1, coef, order, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - in
    - ','
    - coef
    - ','
    - coefRev
    - ','
    - order
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 101
    functionName: silk_noise_shape_quantizer_short_prediction
    functionSourceFile: /src/opus/silk/arm/NSQ_neon.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_noise_shape_quantizer_short_prediction(in, coef, coefRev, order,
      arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - data0
    - ','
    - data1
    - ','
    - coef
    - ','
    - order
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 111
    functionName: silk_NSQ_noise_shape_feedback_loop
    functionSourceFile: /src/opus/silk/arm/NSQ_neon.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_NSQ_noise_shape_feedback_loop(data0, data1, coef, order, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a32
    - ','
    - b32
    - ','
    - Q
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 40
    functionName: MUL32_FRAC_Q
    functionSourceFile: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MUL32_FRAC_Q(a32, b32, Q)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:66,1
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:67,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:68,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:79,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:82,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:82,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:82,1
    - Dst: silk_assert
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:83,1
    - Dst: silk_assert
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:84,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:88,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:88,1
    - Dst: silk_assert
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:89,1
    - Dst: silk_assert
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:90,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:91,1
    - Dst: silk_CLZ32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:96,1
    - Dst: silk_abs
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:96,1
    - Dst: silk_INVERSE32_varQ
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:97,1
    - Dst: vdup_n_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:100,1
    - Dst: vdupq_n_s64
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:101,1
    - Dst: vdup_n_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:102,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:108,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:109,1
    - Dst: vrev64q_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:110,1
    - Dst: vcombine_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:111,1
    - Dst: vget_high_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:111,1
    - Dst: vget_low_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:111,1
    - Dst: vqrdmulhq_lane_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:112,1
    - Dst: vqrdmulhq_lane_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:113,1
    - Dst: vqsubq_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:114,1
    - Dst: vqsubq_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:115,1
    - Dst: vmull_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:116,1
    - Dst: vget_low_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:116,1
    - Dst: vmull_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:117,1
    - Dst: vget_high_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:117,1
    - Dst: vmull_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:118,1
    - Dst: vget_low_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:118,1
    - Dst: vmull_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:119,1
    - Dst: vget_high_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:119,1
    - Dst: vrshlq_s64
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:120,1
    - Dst: vrshlq_s64
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:121,1
    - Dst: vrshlq_s64
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:122,1
    - Dst: vrshlq_s64
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:123,1
    - Dst: vcombine_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:124,1
    - Dst: vmovn_s64
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:124,1
    - Dst: vmovn_s64
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:124,1
    - Dst: vcombine_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:125,1
    - Dst: vmovn_s64
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:125,1
    - Dst: vmovn_s64
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:125,1
    - Dst: vcombine_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:126,1
    - Dst: vshrn_n_s64
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:126,1
    - Dst: vshrn_n_s64
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:126,1
    - Dst: vcombine_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:127,1
    - Dst: vshrn_n_s64
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:127,1
    - Dst: vshrn_n_s64
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:127,1
    - Dst: vmaxq_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:128,1
    - Dst: vminq_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:129,1
    - Dst: vmaxq_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:130,1
    - Dst: vminq_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:131,1
    - Dst: vrev64q_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:132,1
    - Dst: vcombine_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:133,1
    - Dst: vget_high_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:133,1
    - Dst: vget_low_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:133,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:134,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:135,1
    - Dst: silk_RSHIFT_ROUND64
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:141,1
    - Dst: silk_SMULL
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:141,1
    - Dst: silk_SUB_SAT32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:141,1
    - Dst: MUL32_FRAC_Q
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:142,1
    - Dst: silk_RSHIFT_ROUND64
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:147,1
    - Dst: silk_SMULL
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:147,1
    - Dst: silk_SUB_SAT32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:147,1
    - Dst: MUL32_FRAC_Q
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:148,1
    - Dst: vmax_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:161,1
    - Dst: vget_low_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:161,1
    - Dst: vget_high_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:161,1
    - Dst: vmin_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:162,1
    - Dst: vget_low_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:162,1
    - Dst: vget_high_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:162,1
    - Dst: vmax_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:163,1
    - Dst: vreinterpret_s32_s64
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:163,1
    - Dst: vshr_n_s64
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:163,1
    - Dst: vreinterpret_s64_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:163,1
    - Dst: vmin_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:164,1
    - Dst: vreinterpret_s32_s64
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:164,1
    - Dst: vshr_n_s64
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:164,1
    - Dst: vreinterpret_s64_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:164,1
    - Dst: vget_lane_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:165,1
    - Dst: vget_lane_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:166,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:172,1
    - Dst: silk_SUB32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:175,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:175,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:175,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:179,1
    - Dst: silk_SMMUL
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:179,1
    - Dst: silk_assert
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:180,1
    - Dst: silk_assert
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:181,1
    - Dst: SILK_FIX_CONST
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:182,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 89
    argCount: 2
    argNames:
    - A_QA
    - order
    argTypes:
    - opus_int32[]
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 55
    functionDepth: 2
    functionLinenumber: 55
    functionLinenumberEnd: 187
    functionName: LPC_inverse_pred_gain_QA_neon
    functionSourceFile: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c
    functionUses: 0
    functionsReached:
    - vcombine_s32
    - vget_lane_s32
    - vmovn_s64
    - vget_low_s32
    - vst1q_s32
    - silk_SUB32
    - vget_high_s32
    - vminq_s32
    - vreinterpret_s64_s32
    - vdupq_n_s64
    - vshr_n_s64
    - vdup_n_s32
    - silk_abs
    - silk_assert
    - vrshlq_s64
    - vqsubq_s32
    - silk_SUB_SAT32
    - vdupq_n_s32
    - MUL32_FRAC_Q
    - silk_LSHIFT
    - vshrn_n_s64
    - vmaxq_s32
    - vreinterpret_s32_s64
    - vqrdmulhq_lane_s32
    - vmull_s32
    - silk_SMMUL
    - vmin_s32
    - SILK_FIX_CONST
    - silk_CLZ32
    - silk_SMULL
    - vmax_s32
    - silk_RSHIFT_ROUND64
    - vld1q_s32
    - vrev64q_s32
    - silk_INVERSE32_varQ
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE LPC_inverse_pred_gain_QA_neon( /* O   Returns inverse
      prediction gain in energy domain, Q30    */\n    opus_int32           A_QA[
      SILK_MAX_ORDER_LPC ],         /* I   Prediction coefficients                                  */\n
      \   const opus_int       order                               /* I   Prediction
      order                                         */\n)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: silk_LPC_inverse_pred_gain_c
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:196,1
    - Dst: silk_LPC_inverse_pred_gain_c
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:201,1
    - Dst: vld1q_s16
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:211,1
    - Dst: vld1q_s16
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:212,1
    - Dst: vld1q_s16
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:214,1
    - Dst: vpaddlq_s16
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:216,1
    - Dst: vpadalq_s16
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:221,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:222,1
    - Dst: vshll_n_s16
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:222,1
    - Dst: vget_low_s16
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:222,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:223,1
    - Dst: vshll_n_s16
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:223,1
    - Dst: vget_high_s16
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:223,1
    - Dst: vpadalq_s16
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:227,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:228,1
    - Dst: vshll_n_s16
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:228,1
    - Dst: vget_low_s16
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:228,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:229,1
    - Dst: vshll_n_s16
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:229,1
    - Dst: vget_high_s16
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:229,1
    - Dst: vpadd_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:234,1
    - Dst: vget_low_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:234,1
    - Dst: vget_high_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:234,1
    - Dst: vpaddl_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:235,1
    - Dst: vget_lane_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:236,1
    - Dst: vreinterpret_s32_s64
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:236,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:237,1
    - Dst: vshll_n_s16
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:237,1
    - Dst: vget_low_s16
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:237,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:238,1
    - Dst: vshll_n_s16
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:238,1
    - Dst: vget_high_s16
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:238,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:253,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:254,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:260,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:261,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:267,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:268,1
    - Dst: LPC_inverse_pred_gain_QA_neon
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:279,1
    - Dst: silk_assert
      Src: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c:284,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 57
    argCount: 2
    argNames:
    - A_Q12
    - order
    argTypes:
    - opus_int16*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 190
    functionDepth: 3
    functionLinenumber: 190
    functionLinenumberEnd: 288
    functionName: silk_LPC_inverse_pred_gain_neon
    functionSourceFile: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c
    functionUses: 0
    functionsReached:
    - vpaddlq_s16
    - vpadd_s32
    - LPC_inverse_pred_gain_QA_neon
    - vget_lane_s32
    - vld1q_s16
    - vreinterpret_s32_s64
    - silk_assert
    - vget_low_s32
    - vst1q_s32
    - vget_low_s16
    - vget_high_s32
    - silk_LPC_inverse_pred_gain_c
    - vshll_n_s16
    - vget_high_s16
    - vpadalq_s16
    - silk_LSHIFT32
    - vpaddl_s32
    linkageType: ''
    returnType: opus_int32
    signature: "opus_int32 silk_LPC_inverse_pred_gain_neon(         /* O   Returns
      inverse prediction gain in energy domain, Q30        */\n    const opus_int16
      \           *A_Q12,             /* I   Prediction coefficients, Q12 [order]
      \                        */\n    const opus_int              order               /*
      I   Prediction order                                             */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 15
    argNames:
    - (
    - in
    - ','
    - B_Q28
    - ','
    - A_Q28
    - ','
    - S
    - ','
    - out
    - ','
    - len
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 46
    functionName: silk_biquad_alt_stride2
    functionSourceFile: /src/opus/silk/arm/biquad_alt_arm.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_biquad_alt_stride2(in, B_Q28, A_Q28, S, out, len, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 15
    argNames:
    - (
    - in
    - ','
    - B_Q28
    - ','
    - A_Q28
    - ','
    - S
    - ','
    - out
    - ','
    - len
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 62
    functionName: silk_biquad_alt_stride2
    functionSourceFile: /src/opus/silk/arm/biquad_alt_arm.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_biquad_alt_stride2(in, B_Q28, A_Q28, S, out, len, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 15
    argNames:
    - (
    - in
    - ','
    - B_Q28
    - ','
    - A_Q28
    - ','
    - S
    - ','
    - out
    - ','
    - len
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 65
    functionName: silk_biquad_alt_stride2
    functionSourceFile: /src/opus/silk/arm/biquad_alt_arm.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_biquad_alt_stride2(in, B_Q28, A_Q28, S, out, len, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vld1q_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:135,1
    - Dst: vld1q_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:136,1
    - Dst: vld1q_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:137,1
    - Dst: vld1q_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:138,1
    - Dst: vld1q_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:139,1
    - Dst: vld1q_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:140,1
    - Dst: vld1q_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:141,1
    - Dst: vld1q_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:142,1
    - Dst: vcombine_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:143,1
    - Dst: vrshrn_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:143,1
    - Dst: vrshrn_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:143,1
    - Dst: vst1_s8
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:144,1
    - Dst: vmovn_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:144,1
    - Dst: vld1q_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:146,1
    - Dst: vld1q_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:147,1
    - Dst: vld1q_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:148,1
    - Dst: vld1q_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:149,1
    - Dst: vld1q_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:150,1
    - Dst: vld1q_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:151,1
    - Dst: vld1q_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:152,1
    - Dst: vld1q_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:153,1
    - Dst: vqdmulhq_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:154,1
    - Dst: vqdmulhq_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:155,1
    - Dst: vmlaq_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:156,1
    - Dst: vmlaq_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:157,1
    - Dst: vrshlq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:158,1
    - Dst: vrshlq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:159,1
    - Dst: vst1_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:160,1
    - Dst: vqmovn_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:160,1
    - Dst: vst1_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:161,1
    - Dst: vqmovn_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:161,1
    - Dst: vld1q_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:163,1
    - Dst: vld1q_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:164,1
    - Dst: vld1q_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:165,1
    - Dst: vld1q_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:166,1
    - Dst: vld1q_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:167,1
    - Dst: vld1q_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:168,1
    - Dst: vld1q_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:169,1
    - Dst: vld1q_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:170,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:171,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 37
    argCount: 12
    argNames:
    - psDelDec
    - offset
    - last_smple_idx
    - Winner_ind
    - gain_lo_s32x2
    - gain_hi_s32x2
    - shift_s32x4
    - t0_s32x4
    - t1_s32x4
    - pulses
    - pxq
    - NSQ
    argTypes:
    - NSQ_del_decs_struct*
    - opus_int
    - opus_int
    - opus_int
    - int32x2_t
    - int32x2_t
    - int32x4_t
    - int32x4_t
    - int32x4_t
    - opus_int8*
    - opus_int16*
    - silk_nsq_state*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 173
    functionName: copy_winner_state_kernel
    functionSourceFile: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c
    functionUses: 0
    functionsReached:
    - vqdmulhq_lane_s32
    - vst1_s8
    - vqmovn_s32
    - vld1q_lane_s32
    - vst1q_s32
    - vcombine_s16
    - vmlaq_lane_s32
    - vrshlq_s32
    - vmovn_s16
    - vst1_s16
    - vrshrn_n_s32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE copy_winner_state_kernel(\n    const NSQ_del_decs_struct
      *psDelDec,\n    const opus_int            offset,\n    const opus_int            last_smple_idx,\n
      \   const opus_int            Winner_ind,\n    const int32x2_t           gain_lo_s32x2,\n
      \   const int32x2_t           gain_hi_s32x2,\n    const int32x4_t           shift_s32x4,\n
      \   int32x4_t                 t0_s32x4,\n    int32x4_t                 t1_s32x4,\n
      \   opus_int8 *const          pulses,\n    opus_int16                *pxq,\n
      \   silk_nsq_state            *NSQ\n)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: vdup_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:188,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:188,1
    - Dst: vdup_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:189,1
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:190,1
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:193,1
    - Dst: copy_winner_state_kernel
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:199,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:202,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:203,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:203,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:203,1
    - Dst: copy_winner_state_kernel
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:209,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:212,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:213,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:213,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:213,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 9
    argNames:
    - psDelDec
    - decisionDelay
    - smpl_buf_idx
    - Winner_ind
    - gain
    - shift
    - pulses
    - pxq
    - NSQ
    argTypes:
    - NSQ_del_decs_struct*
    - opus_int
    - opus_int
    - opus_int
    - opus_int32
    - opus_int32
    - opus_int8*
    - opus_int16*
    - silk_nsq_state*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 175
    functionDepth: 1
    functionLinenumber: 175
    functionLinenumberEnd: 216
    functionName: copy_winner_state
    functionSourceFile: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c
    functionUses: 0
    functionsReached:
    - silk_LSHIFT32
    - copy_winner_state_kernel
    - silk_SMULWW
    - silk_SAT16
    - vdupq_n_s32
    - vdup_n_s32
    - silk_RSHIFT_ROUND
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE copy_winner_state(\n    const NSQ_del_decs_struct *psDelDec,\n
      \   const opus_int            decisionDelay,\n    const opus_int            smpl_buf_idx,\n
      \   const opus_int            Winner_ind,\n    const opus_int32          gain,\n
      \   const opus_int32          shift,\n    opus_int8 *const          pulses,\n
      \   opus_int16                *pxq,\n    silk_nsq_state            *NSQ\n)"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: silk_memcpy
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:243,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:244,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:245,1
    - Dst: silk_NSQ_del_dec_c
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:246,1
    - Dst: silk_NSQ_del_dec_c
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:258,1
    - Dst: VARDECL
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:265,1
    - Dst: VARDECL
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:266,1
    - Dst: VARDECL
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:270,1
    - Dst: VARDECL
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:271,1
    - Dst: VARDECL
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:272,1
    - Dst: silk_assert
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:279,1
    - Dst: ALLOC
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:282,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:283,1
    - Dst: silk_memset
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:285,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:286,1
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:286,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:291,1
    - Dst: vld1q_dup_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:291,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:292,1
    - Dst: vld1q_dup_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:292,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:293,1
    - Dst: vld1q_dup_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:293,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:295,1
    - Dst: vld1q_dup_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:295,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:298,1
    - Dst: vld1q_dup_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:298,1
    - Dst: silk_min_int
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:304,1
    - Dst: silk_min_int
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:310,1
    - Dst: silk_min_int
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:312,1
    - Dst: silk_min_int
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:315,1
    - Dst: ALLOC
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:325,1
    - Dst: ALLOC
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:326,1
    - Dst: ALLOC
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:327,1
    - Dst: ALLOC
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:328,1
    - Dst: silk_assert
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:340,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:341,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:342,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:342,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:350,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:364,1
    - Dst: vaddq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:365,1
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:365,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:366,1
    - Dst: copy_winner_state
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:369,1
    - Dst: silk_assert
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:376,1
    - Dst: silk_LPC_analysis_filter
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:378,1
    - Dst: silk_nsq_del_dec_scale_states_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:386,1
    - Dst: silk_noise_shape_quantizer_del_dec_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:389,1
    - Dst: silk_RSHIFT32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:411,1
    - Dst: copy_winner_state
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:412,1
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:414,1
    - Dst: vld1q_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:416,1
    - Dst: vld1q_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:417,1
    - Dst: vld1q_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:418,1
    - Dst: vld1q_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:419,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:420,1
    - Dst: vld1q_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:428,1
    - Dst: vld1q_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:429,1
    - Dst: vld1q_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:430,1
    - Dst: vld1q_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:431,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:432,1
    - Dst: silk_memmove
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:445,1
    - Dst: silk_memmove
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:446,1
    - Dst: silk_assert
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:451,1
    - Dst: memcmp
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:451,1
    - Dst: silk_assert
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:452,1
    - Dst: memcmp
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:452,1
    - Dst: silk_assert
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:453,1
    - Dst: memcmp
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:453,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 141
    argCount: 15
    argNames:
    - psEncC
    - NSQ
    - psIndices
    - x16
    - pulses
    - PredCoef_Q12
    - LTPCoef_Q14
    - AR_Q13
    - HarmShapeGain_Q14
    - Tilt_Q14
    - LF_shp_Q14
    - Gains_Q16
    - pitchL
    - Lambda_Q10
    - LTP_scale_Q14
    argTypes:
    - silk_encoder_state*
    - silk_nsq_state*
    - SideInfoIndices*
    - opus_int16[]
    - opus_int8[]
    - opus_int16*
    - opus_int16[]
    - opus_int16[]
    - opus_int[]
    - opus_int[]
    - opus_int32[]
    - opus_int32[]
    - opus_int[]
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 455
      start: 218
    functionDepth: 2
    functionLinenumber: 218
    functionLinenumberEnd: 455
    functionName: silk_NSQ_del_dec_neon
    functionSourceFile: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c
    functionUses: 0
    functionsReached:
    - OPUS_CLEAR
    - silk_noise_shape_quantizer_del_dec_neon
    - vst1q_s32
    - silk_nsq_del_dec_scale_states_neon
    - vld1q_dup_s32
    - silk_NSQ_del_dec_c
    - silk_assert
    - silk_RSHIFT
    - VARDECL
    - ALLOC
    - vdupq_n_s32
    - vaddq_s32
    - silk_LSHIFT
    - silk_memset
    - copy_winner_state
    - silk_memmove
    - silk_memcpy
    - memcmp
    - vld1q_lane_s32
    - vld1q_s32
    - silk_RSHIFT32
    - silk_min_int
    - silk_LPC_analysis_filter
    linkageType: ''
    returnType: void
    signature: "void silk_NSQ_del_dec_neon(\n    const silk_encoder_state    *psEncC,
      \                                   /* I    Encoder State                   */\n
      \   silk_nsq_state              *NSQ,                                       /*
      I/O  NSQ state                       */\n    SideInfoIndices             *psIndices,
      \                                /* I/O  Quantization Indices            */\n
      \   const opus_int16            x16[],                                      /*
      I    Input                           */\n    opus_int8                   pulses[],
      \                                  /* O    Quantized pulse signal          */\n
      \   const opus_int16            *PredCoef_Q12,                              /*
      I    Short term prediction coefs     */\n    const opus_int16            LTPCoef_Q14[
      LTP_ORDER * MAX_NB_SUBFR ],    /* I    Long term prediction coefs      */\n
      \   const opus_int16            AR_Q13[ MAX_NB_SUBFR * MAX_SHAPE_LPC_ORDER ],
      /* I Noise shaping coefs              */\n    const opus_int              HarmShapeGain_Q14[
      MAX_NB_SUBFR ],          /* I    Long term shaping coefs         */\n    const
      opus_int              Tilt_Q14[ MAX_NB_SUBFR ],                   /* I    Spectral
      tilt                   */\n    const opus_int32            LF_shp_Q14[ MAX_NB_SUBFR
      ],                 /* I    Low frequency shaping coefs     */\n    const opus_int32
      \           Gains_Q16[ MAX_NB_SUBFR ],                  /* I    Quantization
      step sizes         */\n    const opus_int              pitchL[ MAX_NB_SUBFR
      ],                     /* I    Pitch lags                      */\n    const
      opus_int              Lambda_Q10,                                 /* I    Rate/distortion
      tradeoff        */\n    const opus_int              LTP_scale_Q14                               /*
      I    LTP state scaling               */\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: silk_assert
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:466,1
    - Dst: vld1q_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:468,1
    - Dst: vrev64q_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:469,1
    - Dst: vshll_n_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:470,1
    - Dst: vget_high_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:470,1
    - Dst: vshll_n_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:471,1
    - Dst: vget_low_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:471,1
    - Dst: vld1q_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:474,1
    - Dst: vrev64q_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:475,1
    - Dst: vshll_n_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:476,1
    - Dst: vget_high_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:476,1
    - Dst: vshll_n_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:477,1
    - Dst: vget_low_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:477,1
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:481,1
    - Dst: vld1_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:482,1
    - Dst: vrev64_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:483,1
    - Dst: vshll_n_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:484,1
    - Dst: vcombine_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:485,1
    - Dst: vget_low_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:485,1
    - Dst: vget_low_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:485,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:487,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:488,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:489,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:490,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 3
    argNames:
    - out
    - in
    - order
    argTypes:
    - opus_int32*
    - opus_int16*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 491
      start: 462
    functionDepth: 1
    functionLinenumber: 462
    functionLinenumberEnd: 491
    functionName: silk_short_prediction_create_arch_coef_neon_local
    functionSourceFile: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c
    functionUses: 0
    functionsReached:
    - vld1_s16
    - vcombine_s32
    - vld1q_s16
    - vrev64q_s16
    - silk_assert
    - vget_low_s32
    - vget_low_s16
    - vst1q_s32
    - vshll_n_s16
    - vget_high_s16
    - vdupq_n_s32
    - vrev64_s16
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_short_prediction_create_arch_coef_neon_local(opus_int32
      *out, const opus_int16 *in, opus_int order)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vaddq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:499,1
    - Dst: vqdmulhq_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:499,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - out_s32x4
    - in_s32x4
    - coef_s32x2
    argTypes:
    - int32x4_t
    - int32x4_t
    - int32x2_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 500
      start: 493
    functionDepth: 0
    functionLinenumber: 493
    functionLinenumberEnd: 500
    functionName: silk_SMLAWB_lane0_neon
    functionSourceFile: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c
    functionUses: 0
    functionsReached:
    - vqdmulhq_lane_s32
    - vaddq_s32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_SMLAWB_lane0_neon(\n    const int32x4_t out_s32x4,\n
      \   const int32x4_t in_s32x4,\n    const int32x2_t coef_s32x2\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vaddq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:508,1
    - Dst: vqdmulhq_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:508,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - out_s32x4
    - in_s32x4
    - coef_s32x2
    argTypes:
    - int32x4_t
    - int32x4_t
    - int32x2_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 509
      start: 502
    functionDepth: 0
    functionLinenumber: 502
    functionLinenumberEnd: 509
    functionName: silk_SMLAWB_lane1_neon
    functionSourceFile: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c
    functionUses: 0
    functionsReached:
    - vqdmulhq_lane_s32
    - vaddq_s32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_SMLAWB_lane1_neon(\n    const int32x4_t out_s32x4,\n
      \   const int32x4_t in_s32x4,\n    const int32x2_t coef_s32x2\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:515,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:516,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:517,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:518,1
    - Dst: silk_assert
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:521,1
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:523,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:523,1
    - Dst: silk_SMLAWB_lane0_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:524,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:524,1
    - Dst: vget_low_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:524,1
    - Dst: silk_SMLAWB_lane1_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:525,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:525,1
    - Dst: vget_low_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:525,1
    - Dst: silk_SMLAWB_lane0_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:526,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:526,1
    - Dst: vget_high_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:526,1
    - Dst: silk_SMLAWB_lane1_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:527,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:527,1
    - Dst: vget_high_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:527,1
    - Dst: silk_SMLAWB_lane0_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:528,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:528,1
    - Dst: vget_low_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:528,1
    - Dst: silk_SMLAWB_lane1_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:529,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:529,1
    - Dst: vget_low_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:529,1
    - Dst: silk_SMLAWB_lane0_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:530,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:530,1
    - Dst: vget_high_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:530,1
    - Dst: silk_SMLAWB_lane1_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:531,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:531,1
    - Dst: vget_high_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:531,1
    - Dst: silk_SMLAWB_lane0_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:532,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:532,1
    - Dst: vget_low_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:532,1
    - Dst: silk_SMLAWB_lane1_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:533,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:533,1
    - Dst: vget_low_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:533,1
    - Dst: silk_SMLAWB_lane0_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:534,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:534,1
    - Dst: vget_high_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:534,1
    - Dst: silk_SMLAWB_lane1_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:535,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:535,1
    - Dst: vget_high_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:535,1
    - Dst: silk_SMLAWB_lane0_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:536,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:536,1
    - Dst: vget_low_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:536,1
    - Dst: silk_SMLAWB_lane1_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:537,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:537,1
    - Dst: vget_low_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:537,1
    - Dst: silk_SMLAWB_lane0_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:538,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:538,1
    - Dst: vget_high_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:538,1
    - Dst: silk_SMLAWB_lane1_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:539,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:539,1
    - Dst: vget_high_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:539,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 3
    argNames:
    - buf32
    - a_Q12_arch
    - order
    argTypes:
    - opus_int32*
    - opus_int32*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 542
      start: 513
    functionDepth: 1
    functionLinenumber: 513
    functionLinenumberEnd: 542
    functionName: silk_noise_shape_quantizer_short_prediction_neon_local
    functionSourceFile: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c
    functionUses: 0
    functionsReached:
    - silk_SMLAWB_lane1_neon
    - silk_RSHIFT
    - silk_assert
    - vld1q_s32
    - vget_low_s32
    - vget_high_s32
    - silk_SMLAWB_lane0_neon
    - vdupq_n_s32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_noise_shape_quantizer_short_prediction_neon_local(const
      opus_int32 *buf32, const opus_int32 *a_Q12_arch, opus_int order)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: vdup_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:580,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:580,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:581,1
    - Dst: vdupq_n_u32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:583,1
    - Dst: vdupq_n_u32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:584,1
    - Dst: VARDECL
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:586,1
    - Dst: silk_assert
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:589,1
    - Dst: silk_assert
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:590,1
    - Dst: ALLOC
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:591,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:592,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:596,1
    - Dst: vld1q_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:599,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:600,1
    - Dst: vshll_n_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:600,1
    - Dst: vget_low_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:600,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:601,1
    - Dst: vshll_n_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:601,1
    - Dst: vget_high_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:601,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:605,1
    - Dst: silk_short_prediction_create_arch_coef_neon_local
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:608,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:624,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:625,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:626,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:627,1
    - Dst: silk_SMLAWB
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:628,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:629,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:638,1
    - Dst: silk_ADD32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:638,1
    - Dst: silk_SMLAWT
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:639,1
    - Dst: silk_SUB_LSHIFT32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:640,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:647,1
    - Dst: vreinterpretq_s32_u32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:648,1
    - Dst: vmlaq_u32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:648,1
    - Dst: vreinterpretq_u32_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:648,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:649,1
    - Dst: silk_noise_shape_quantizer_short_prediction_neon_local
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:652,1
    - Dst: vshlq_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:653,1
    - Dst: silk_SMLAWB_lane0_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:657,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:657,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:657,1
    - Dst: vsubq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:659,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:659,1
    - Dst: silk_SMLAWB_lane0_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:660,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:660,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:661,1
    - Dst: vld1_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:662,1
    - Dst: vaddq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:663,1
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:663,1
    - Dst: silk_RSHIFT
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:663,1
    - Dst: vqdmulhq_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:663,1
    - Dst: vsubq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:668,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:668,1
    - Dst: silk_SMLAWB_lane0_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:669,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:669,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:670,1
    - Dst: vaddq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:671,1
    - Dst: vqdmulhq_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:671,1
    - Dst: vsubq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:673,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:673,1
    - Dst: silk_SMLAWB_lane0_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:674,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:674,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:675,1
    - Dst: vld1_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:676,1
    - Dst: vaddq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:677,1
    - Dst: vqdmulhq_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:677,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:679,1
    - Dst: vaddq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:680,1
    - Dst: vqdmulhq_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:680,1
    - Dst: vshlq_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:681,1
    - Dst: vaddq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:682,1
    - Dst: vqdmulhq_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:682,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:682,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:682,1
    - Dst: vshlq_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:683,1
    - Dst: vqdmulhq_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:684,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:684,1
    - Dst: vaddq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:685,1
    - Dst: vqdmulhq_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:685,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:685,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:685,1
    - Dst: vshlq_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:686,1
    - Dst: vaddq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:690,1
    - Dst: vaddq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:691,1
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:691,1
    - Dst: vsubq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:692,1
    - Dst: vrshrq_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:693,1
    - Dst: vsubq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:694,1
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:694,1
    - Dst: vreinterpretq_s32_u32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:697,1
    - Dst: vcltq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:697,1
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:697,1
    - Dst: veorq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:698,1
    - Dst: vsubq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:699,1
    - Dst: vmaxq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:700,1
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:700,1
    - Dst: vminq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:701,1
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:701,1
    - Dst: vmovn_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:702,1
    - Dst: vsub_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:706,1
    - Dst: vdup_n_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:706,1
    - Dst: vshr_n_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:707,1
    - Dst: vcgt_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:715,1
    - Dst: vdup_n_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:715,1
    - Dst: vclt_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:716,1
    - Dst: vdup_n_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:716,1
    - Dst: vbsl_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:717,1
    - Dst: vdup_n_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:717,1
    - Dst: vdup_n_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:717,1
    - Dst: vbsl_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:718,1
    - Dst: vdup_n_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:718,1
    - Dst: silk_assert
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:720,1
    - Dst: vreinterpret_s16_u16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:722,1
    - Dst: vclt_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:722,1
    - Dst: vdup_n_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:722,1
    - Dst: vbsl_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:723,1
    - Dst: vorr_u16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:723,1
    - Dst: vadd_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:723,1
    - Dst: vshr_n_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:724,1
    - Dst: vceq_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:727,1
    - Dst: vdup_n_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:727,1
    - Dst: vceq_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:728,1
    - Dst: vdup_n_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:728,1
    - Dst: vclt_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:729,1
    - Dst: vdup_n_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:729,1
    - Dst: vshl_n_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:732,1
    - Dst: vand_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:733,1
    - Dst: vreinterpret_s16_u16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:733,1
    - Dst: vcge_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:733,1
    - Dst: vdup_n_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:733,1
    - Dst: vdup_n_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:733,1
    - Dst: vadd_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:734,1
    - Dst: vbsl_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:735,1
    - Dst: vdup_n_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:735,1
    - Dst: vdup_n_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:735,1
    - Dst: vadd_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:736,1
    - Dst: vbsl_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:737,1
    - Dst: vbsl_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:738,1
    - Dst: vdup_n_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:738,1
    - Dst: vbsl_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:739,1
    - Dst: vdup_n_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:739,1
    - Dst: vadd_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:740,1
    - Dst: vdup_n_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:740,1
    - Dst: vbsl_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:741,1
    - Dst: vdup_n_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:741,1
    - Dst: vbsl_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:742,1
    - Dst: vdup_n_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:742,1
    - Dst: vbsl_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:745,1
    - Dst: vorr_u16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:745,1
    - Dst: vneg_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:745,1
    - Dst: vbsl_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:746,1
    - Dst: vneg_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:746,1
    - Dst: vmull_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:747,1
    - Dst: vdup_n_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:747,1
    - Dst: vmull_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:748,1
    - Dst: vdup_n_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:748,1
    - Dst: vsub_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:751,1
    - Dst: vmlal_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:752,1
    - Dst: vshrq_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:753,1
    - Dst: vsub_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:755,1
    - Dst: vmlal_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:756,1
    - Dst: vshrq_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:757,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:759,1
    - Dst: vaddq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:760,1
    - Dst: vminq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:760,1
    - Dst: vaddq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:761,1
    - Dst: vmaxq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:761,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:762,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:763,1
    - Dst: vcltq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:764,1
    - Dst: vbslq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:765,1
    - Dst: vmovl_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:765,1
    - Dst: vmovl_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:765,1
    - Dst: vbslq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:766,1
    - Dst: vmovl_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:766,1
    - Dst: vmovl_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:766,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:767,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:768,1
    - Dst: vshlq_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:776,1
    - Dst: veorq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:777,1
    - Dst: vsubq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:778,1
    - Dst: vaddq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:781,1
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:781,1
    - Dst: vaddq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:782,1
    - Dst: vsubq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:785,1
    - Dst: vshlq_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:785,1
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:785,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:786,1
    - Dst: vsubq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:787,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:788,1
    - Dst: vsubq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:788,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:789,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:790,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:791,1
    - Dst: vshlq_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:794,1
    - Dst: veorq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:795,1
    - Dst: vsubq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:796,1
    - Dst: vaddq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:799,1
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:799,1
    - Dst: vaddq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:800,1
    - Dst: vsubq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:803,1
    - Dst: vshlq_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:803,1
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:803,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:804,1
    - Dst: vsubq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:805,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:806,1
    - Dst: vsubq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:806,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:807,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:808,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:809,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:830,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:831,1
    - Dst: vceqq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:838,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:838,1
    - Dst: vdupq_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:838,1
    - Dst: vmvnq_u32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:839,1
    - Dst: vshrq_n_u32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:840,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:841,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:842,1
    - Dst: vaddq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:843,1
    - Dst: vreinterpretq_s32_u32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:843,1
    - Dst: vaddq_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:844,1
    - Dst: vreinterpretq_s32_u32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:844,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:845,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:846,1
    - Dst: opus_int32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:869,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:893,1
    - Dst: silk_SAT16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:894,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:894,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:895,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:903,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:903,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:904,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:904,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:905,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:905,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:906,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:906,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:907,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:908,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:909,1
    - Dst: vshlq_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:909,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:909,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:910,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:910,1
    - Dst: vrshrq_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:911,1
    - Dst: vreinterpretq_s32_u32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:912,1
    - Dst: vaddq_u32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:912,1
    - Dst: vreinterpretq_u32_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:912,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:913,1
    - Dst: vreinterpretq_u32_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:913,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:914,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:915,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:916,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:916,1
    - Dst: silk_memcpy
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:920,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 231
    argCount: 26
    argNames:
    - NSQ
    - psDelDec
    - signalType
    - x_Q10
    - pulses
    - xq
    - sLTP_Q15
    - delayedGain_Q10
    - a_Q12
    - b_Q14
    - AR_shp_Q13
    - lag
    - HarmShapeFIRPacked_Q14
    - Tilt_Q14
    - LF_shp_Q14
    - Gain_Q16
    - Lambda_Q10
    - offset_Q10
    - length
    - subfr
    - shapingLPCOrder
    - predictLPCOrder
    - warping_Q16
    - nStatesDelayedDecision
    - smpl_buf_idx
    - decisionDelay
    argTypes:
    - silk_nsq_state*
    - NSQ_del_decs_struct[]
    - opus_int
    - opus_int32[]
    - opus_int8[]
    - opus_int16[]
    - opus_int32[]
    - opus_int32[]
    - opus_int16[]
    - opus_int16[]
    - opus_int16[]
    - opus_int
    - opus_int32
    - opus_int
    - opus_int32
    - opus_int32
    - opus_int
    - opus_int
    - opus_int
    - opus_int
    - opus_int
    - opus_int
    - opus_int
    - opus_int
    - opus_int*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 923
      start: 544
    functionDepth: 2
    functionLinenumber: 544
    functionLinenumberEnd: 923
    functionName: silk_noise_shape_quantizer_del_dec_neon
    functionSourceFile: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c
    functionUses: 1
    functionsReached:
    - vbsl_s16
    - OPUS_CLEAR
    - vorr_u16
    - silk_SMULWB
    - silk_ADD32
    - vst1q_s32
    - silk_SUB_LSHIFT32
    - vqdmulhq_n_s32
    - vbslq_s32
    - silk_SMLAWB
    - vminq_s32
    - opus_int32
    - vget_high_s16
    - vshrq_n_s32
    - vsub_s16
    - veorq_s32
    - vdup_n_s32
    - vceq_s16
    - vmlaq_u32
    - vcgt_s16
    - vmovl_s16
    - vmvnq_u32
    - silk_assert
    - silk_RSHIFT
    - silk_SMLAWT
    - vsubq_s32
    - silk_RSHIFT_ROUND
    - silk_SAT16
    - VARDECL
    - ALLOC
    - vdup_n_s16
    - vshll_n_s16
    - vdupq_n_s32
    - vshr_n_s16
    - vreinterpretq_s32_u32
    - vaddq_s32
    - silk_LSHIFT
    - vld1_s32
    - vrshrq_n_s32
    - vmaxq_s32
    - vclt_s16
    - vaddq_u32
    - vget_low_s16
    - vand_s16
    - vdupq_n_u32
    - vadd_s16
    - silk_SMLAWB_lane0_neon
    - vshrq_n_u32
    - vshlq_n_s32
    - vshl_n_s16
    - vneg_s16
    - vreinterpret_s16_u16
    - vqdmulhq_lane_s32
    - vceqq_s32
    - silk_memcpy
    - silk_noise_shape_quantizer_short_prediction_neon_local
    - vcltq_s32
    - vld1q_s16
    - silk_SMULWW
    - vmlal_s16
    - vld1q_s32
    - vcge_s16
    - vreinterpretq_u32_s32
    - vmull_s16
    - silk_short_prediction_create_arch_coef_neon_local
    - silk_LSHIFT32
    - vmovn_s32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_noise_shape_quantizer_del_dec_neon(\n    silk_nsq_state
      \     *NSQ,                   /* I/O  NSQ state                           */\n
      \   NSQ_del_decs_struct psDelDec[],             /* I/O  Delayed decision states
      \            */\n    opus_int            signalType,             /* I    Signal
      type                         */\n    const opus_int32    x_Q10[],                /*
      I                                        */\n    opus_int8           pulses[],
      \              /* O                                        */\n    opus_int16
      \         xq[],                   /* O                                        */\n
      \   opus_int32          sLTP_Q15[],             /* I/O  LTP filter state                    */\n
      \   opus_int32          delayedGain_Q10[],      /* I/O  Gain delay buffer                   */\n
      \   const opus_int16    a_Q12[],                /* I    Short term prediction
      coefs         */\n    const opus_int16    b_Q14[],                /* I    Long
      term prediction coefs          */\n    const opus_int16    AR_shp_Q13[],           /*
      I    Noise shaping coefs                 */\n    opus_int            lag,                    /*
      I    Pitch lag                           */\n    opus_int32          HarmShapeFIRPacked_Q14,
      /* I                                        */\n    opus_int            Tilt_Q14,
      \              /* I    Spectral tilt                       */\n    opus_int32
      \         LF_shp_Q14,             /* I                                        */\n
      \   opus_int32          Gain_Q16,               /* I                                        */\n
      \   opus_int            Lambda_Q10,             /* I                                        */\n
      \   opus_int            offset_Q10,             /* I                                        */\n
      \   opus_int            length,                 /* I    Input length                        */\n
      \   opus_int            subfr,                  /* I    Subframe number                     */\n
      \   opus_int            shapingLPCOrder,        /* I    Shaping LPC filter order
      \           */\n    opus_int            predictLPCOrder,        /* I    Prediction
      filter order             */\n    opus_int            warping_Q16,            /*
      I                                        */\n    opus_int            nStatesDelayedDecision,
      /* I    Number of states in decision tree   */\n    opus_int            *smpl_buf_idx,
      \         /* I/O  Index to newest samples in buffers  */\n    opus_int            decisionDelay
      \          /* I                                        */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vld1q_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:931,1
    - Dst: vshll_n_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:934,1
    - Dst: vget_low_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:934,1
    - Dst: vshll_n_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:935,1
    - Dst: vget_high_s16
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:935,1
    - Dst: vqdmulhq_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:936,1
    - Dst: vqdmulhq_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:937,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:938,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:939,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - a
    - b
    - o
    argTypes:
    - opus_int16*
    - int32x2_t
    - opus_int32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 940
      start: 925
    functionDepth: 0
    functionLinenumber: 925
    functionLinenumberEnd: 940
    functionName: silk_SMULWB_8_neon
    functionSourceFile: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c
    functionUses: 0
    functionsReached:
    - vqdmulhq_lane_s32
    - vld1q_s16
    - vget_low_s16
    - vst1q_s32
    - vshll_n_s16
    - vget_high_s16
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_SMULWB_8_neon(\n    const opus_int16 *a,\n    const
      int32x2_t  b,\n    opus_int32       *o\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:949,1
    - Dst: vqdmulhq_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:950,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:951,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a
    - b_s32x2
    argTypes:
    - opus_int32*
    - int32x2_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 952
      start: 943
    functionDepth: 0
    functionLinenumber: 943
    functionLinenumberEnd: 952
    functionName: silk_SMULWW_small_b_4_neon
    functionSourceFile: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c
    functionUses: 0
    functionsReached:
    - vqdmulhq_lane_s32
    - vld1q_s32
    - vst1q_s32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_SMULWW_small_b_4_neon(\n    opus_int32       *a,\n
      \   const int32x2_t  b_s32x2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:962,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:963,1
    - Dst: vqdmulhq_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:964,1
    - Dst: vqdmulhq_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:965,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:966,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:967,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - a
    - b_s32x2
    argTypes:
    - opus_int32*
    - int32x2_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 968
      start: 955
    functionDepth: 0
    functionLinenumber: 955
    functionLinenumberEnd: 968
    functionName: silk_SMULWW_small_b_8_neon
    functionSourceFile: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c
    functionUses: 0
    functionsReached:
    - vqdmulhq_lane_s32
    - vld1q_s32
    - vst1q_s32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_SMULWW_small_b_8_neon(\n    opus_int32       *a,\n
      \   const int32x2_t  b_s32x2\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:976,1
    - Dst: vqdmulhq_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:977,1
    - Dst: vmlaq_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:978,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:979,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - a
    - b_s32x2
    argTypes:
    - opus_int32*
    - int32x2_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 980
      start: 970
    functionDepth: 0
    functionLinenumber: 970
    functionLinenumberEnd: 980
    functionName: silk_SMULWW_4_neon
    functionSourceFile: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c
    functionUses: 0
    functionsReached:
    - vqdmulhq_lane_s32
    - vmlaq_lane_s32
    - vld1q_s32
    - vst1q_s32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_SMULWW_4_neon(\n    opus_int32       *a,\n    const
      int32x2_t  b_s32x2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:989,1
    - Dst: vld1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:990,1
    - Dst: vqdmulhq_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:991,1
    - Dst: vqdmulhq_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:992,1
    - Dst: vmlaq_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:993,1
    - Dst: vmlaq_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:994,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:995,1
    - Dst: vst1q_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:996,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 2
    argNames:
    - a
    - b_s32x2
    argTypes:
    - opus_int32*
    - int32x2_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 997
      start: 982
    functionDepth: 0
    functionLinenumber: 982
    functionLinenumberEnd: 997
    functionName: silk_SMULWW_8_neon
    functionSourceFile: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c
    functionUses: 0
    functionsReached:
    - vqdmulhq_lane_s32
    - vmlaq_lane_s32
    - vld1q_s32
    - vst1q_s32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_SMULWW_8_neon(\n    opus_int32       *a,\n    const
      int32x2_t  b_s32x2\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vdup_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1009,1
    - Dst: silk_SMULWB_8_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1011,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1014,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - a
    - b
    - o
    - loop_num
    argTypes:
    - opus_int16*
    - opus_int32
    - opus_int32*
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1016
      start: 999
    functionDepth: 1
    functionLinenumber: 999
    functionLinenumberEnd: 1016
    functionName: silk_SMULWW_loop_neon
    functionSourceFile: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c
    functionUses: 0
    functionsReached:
    - silk_SMULWW
    - vdup_n_s32
    - silk_SMULWB_8_neon
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_SMULWW_loop_neon(\n    const opus_int16 *a,\n    const
      opus_int32 b,\n    opus_int32       *o,\n    const opus_int   loop_num\n)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: silk_INVERSE32_varQ
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1038,1
    - Dst: silk_max
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1038,1
    - Dst: silk_assert
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1039,1
    - Dst: silk_RSHIFT_ROUND
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1042,1
    - Dst: silk_SMULWW_loop_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1043,1
    - Dst: silk_LSHIFT
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1049,1
    - Dst: silk_SMULWB
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1049,1
    - Dst: silk_SMULWW_loop_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1051,1
    - Dst: silk_DIV32_varQ
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1057,1
    - Dst: vdup_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1061,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1061,1
    - Dst: silk_SMULWW_small_b_8_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1063,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1066,1
    - Dst: silk_SMULWW_small_b_8_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1072,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1075,1
    - Dst: silk_SMULWW_small_b_4_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1080,1
    - Dst: silk_SMULWW_small_b_4_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1081,1
    - Dst: silk_SMULWW_small_b_4_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1085,1
    - Dst: silk_SMULWW_small_b_4_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1089,1
    - Dst: silk_SMULWW_small_b_4_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1093,1
    - Dst: silk_SMULWW_small_b_4_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1094,1
    - Dst: vdup_n_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1097,1
    - Dst: silk_LSHIFT32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1097,1
    - Dst: vset_lane_s32
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1098,1
    - Dst: silk_SMULWW_8_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1100,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1103,1
    - Dst: silk_SMULWW_8_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1109,1
    - Dst: silk_SMULWW
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1112,1
    - Dst: silk_SMULWW_4_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1117,1
    - Dst: silk_SMULWW_4_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1118,1
    - Dst: silk_SMULWW_4_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1122,1
    - Dst: silk_SMULWW_4_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1126,1
    - Dst: silk_SMULWW_4_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1130,1
    - Dst: silk_SMULWW_4_neon
      Src: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c:1131,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 74
    argCount: 13
    argNames:
    - psEncC
    - NSQ
    - psDelDec
    - x16
    - x_sc_Q10
    - sLTP
    - sLTP_Q15
    - subfr
    - LTP_scale_Q14
    - Gains_Q16
    - pitchL
    - signal_type
    - decisionDelay
    argTypes:
    - silk_encoder_state*
    - silk_nsq_state*
    - NSQ_del_decs_struct[]
    - opus_int16[]
    - opus_int32[]
    - opus_int16[]
    - opus_int32[]
    - opus_int
    - opus_int
    - opus_int32[]
    - opus_int[]
    - opus_int
    - opus_int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1138
      start: 1018
    functionDepth: 2
    functionLinenumber: 1018
    functionLinenumberEnd: 1138
    functionName: silk_nsq_del_dec_scale_states_neon
    functionSourceFile: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c
    functionUses: 1
    functionsReached:
    - silk_DIV32_varQ
    - silk_LSHIFT
    - silk_LSHIFT32
    - silk_SMULWW_small_b_4_neon
    - silk_max
    - silk_SMULWW
    - silk_assert
    - silk_SMULWB
    - silk_RSHIFT_ROUND
    - silk_SMULWW_4_neon
    - silk_SMULWW_small_b_8_neon
    - vset_lane_s32
    - silk_SMULWW_8_neon
    - silk_INVERSE32_varQ
    - vdup_n_s32
    - silk_SMULWW_loop_neon
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_nsq_del_dec_scale_states_neon(\n    const silk_encoder_state
      *psEncC,               /* I    Encoder State                       */\n    silk_nsq_state
      \     *NSQ,                       /* I/O  NSQ state                           */\n
      \   NSQ_del_decs_struct psDelDec[],                 /* I/O  Delayed decision
      states             */\n    const opus_int16    x16[],                      /*
      I    Input                               */\n    opus_int32          x_sc_Q10[],
      \                /* O    Input scaled with 1/Gain in Q10     */\n    const opus_int16
      \   sLTP[],                     /* I    Re-whitened LTP state in Q0         */\n
      \   opus_int32          sLTP_Q15[],                 /* O    LTP state matching
      scaled input     */\n    opus_int            subfr,                      /*
      I    Subframe number                     */\n    const opus_int      LTP_scale_Q14,
      \             /* I    LTP state scaling                   */\n    const opus_int32
      \   Gains_Q16[ MAX_NB_SUBFR ],  /* I                                        */\n
      \   const opus_int      pitchL[ MAX_NB_SUBFR ],     /* I    Pitch lag                           */\n
      \   const opus_int      signal_type,                /* I    Signal type                         */\n
      \   const opus_int      decisionDelay               /* I    Decision delay                      */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 43
    functionName: silk_SMULTT_armv5e
    functionSourceFile: /src/opus/silk/arm/SigProc_FIX_armv5e.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE silk_SMULTT_armv5e(opus_int32 a, opus_int32 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 45
    functionName: silk_SMULTT
    functionSourceFile: /src/opus/silk/arm/SigProc_FIX_armv5e.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMULTT(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - a
    - b
    - c
    argTypes:
    - opus_int32
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 58
    functionName: silk_SMLATT_armv5e
    functionSourceFile: /src/opus/silk/arm/SigProc_FIX_armv5e.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE silk_SMLATT_armv5e(opus_int32 a, opus_int32 b,\n opus_int32
      c)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 60
    functionName: silk_SMLATT
    functionSourceFile: /src/opus/silk/arm/SigProc_FIX_armv5e.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: silk_SMLATT(a, b, c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - linear
    - ','
    - out
    - ','
    - in
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 78
    functionName: compute_linear
    functionSourceFile: /src/opus/dnn/lossgen.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: compute_linear(linear, out, in, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - output
    - ','
    - input
    - ','
    - N
    - ','
    - activation
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 79
    functionName: compute_activation
    functionSourceFile: /src/opus/dnn/lossgen.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: compute_activation(output, input, N, activation, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/dnn/lossgen.c:92,1
    - Dst: celt_assert
      Src: /src/opus/dnn/lossgen.c:93,1
    - Dst: celt_assert
      Src: /src/opus/dnn/lossgen.c:98,1
    - Dst: celt_assert
      Src: /src/opus/dnn/lossgen.c:99,1
    - Dst: compute_linear
      Src: /src/opus/dnn/lossgen.c:100,1
    - Dst: compute_linear
      Src: /src/opus/dnn/lossgen.c:101,1
    - Dst: compute_activation
      Src: /src/opus/dnn/lossgen.c:104,1
    - Dst: compute_activation
      Src: /src/opus/dnn/lossgen.c:107,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 5
    argNames:
    - input_weights
    - recurrent_weights
    - state
    - in
    - arch
    argTypes:
    - LinearLayer*
    - LinearLayer*
    - float*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 112
    functionName: compute_generic_gru_lossgen
    functionSourceFile: /src/opus/dnn/lossgen.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - compute_linear
    - compute_activation
    linkageType: ''
    returnType: void
    signature: void compute_generic_gru_lossgen(const LinearLayer *input_weights,
      const LinearLayer *recurrent_weights, float *state, const float *in, int arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: compute_linear
      Src: /src/opus/dnn/lossgen.c:117,1
    - Dst: compute_activation
      Src: /src/opus/dnn/lossgen.c:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - layer
    - output
    - input
    - activation
    - arch
    argTypes:
    - LinearLayer*
    - float*
    - float*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 119
    functionName: compute_generic_dense_lossgen
    functionSourceFile: /src/opus/dnn/lossgen.c
    functionUses: 0
    functionsReached:
    - compute_linear
    - compute_activation
    linkageType: ''
    returnType: void
    signature: void compute_generic_dense_lossgen(const LinearLayer *layer, float
      *output, const float *input, int activation, int arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: compute_generic_dense_lossgen
      Src: /src/opus/dnn/lossgen.c:133,1
    - Dst: compute_generic_gru_lossgen
      Src: /src/opus/dnn/lossgen.c:134,1
    - Dst: compute_generic_gru_lossgen
      Src: /src/opus/dnn/lossgen.c:135,1
    - Dst: compute_generic_dense_lossgen
      Src: /src/opus/dnn/lossgen.c:136,1
    - Dst: rand
      Src: /src/opus/dnn/lossgen.c:137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 2
    argNames:
    - st
    - percent_loss
    argTypes:
    - LossGenState*
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 122
    functionDepth: 2
    functionLinenumber: 122
    functionLinenumberEnd: 140
    functionName: sample_loss_impl
    functionSourceFile: /src/opus/dnn/lossgen.c
    functionUses: 0
    functionsReached:
    - rand
    - compute_generic_dense_lossgen
    - compute_generic_gru_lossgen
    linkageType: ''
    returnType: int
    signature: "int sample_loss_impl(\n    LossGenState *st,\n    float percent_loss)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sample_loss_impl
      Src: /src/opus/dnn/lossgen.c:150,1
    - Dst: sample_loss_impl
      Src: /src/opus/dnn/lossgen.c:153,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - st
    - percent_loss
    argTypes:
    - LossGenState*
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 142
    functionDepth: 3
    functionLinenumber: 142
    functionLinenumberEnd: 154
    functionName: sample_loss
    functionSourceFile: /src/opus/dnn/lossgen.c
    functionUses: 1
    functionsReached:
    - sample_loss_impl
    linkageType: ''
    returnType: int
    signature: "int sample_loss(\n    LossGenState *st,\n    float percent_loss)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/lossgen.c:159,1
    - Dst: init_lossgen
      Src: /src/opus/dnn/lossgen.c:160,1
    - Dst: celt_assert
      Src: /src/opus/dnn/lossgen.c:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - st
    argTypes:
    - LossGenState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 156
    functionDepth: 1
    functionLinenumber: 156
    functionLinenumberEnd: 163
    functionName: lossgen_init
    functionSourceFile: /src/opus/dnn/lossgen.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - OPUS_CLEAR
    - init_lossgen
    linkageType: ''
    returnType: void
    signature: void lossgen_init(LossGenState *st)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: parse_weights
      Src: /src/opus/dnn/lossgen.c:168,1
    - Dst: init_lossgen
      Src: /src/opus/dnn/lossgen.c:169,1
    - Dst: opus_free
      Src: /src/opus/dnn/lossgen.c:170,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - st
    - data
    - len
    argTypes:
    - LossGenState*
    - void*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 165
    functionDepth: 1
    functionLinenumber: 165
    functionLinenumberEnd: 173
    functionName: lossgen_load_model
    functionSourceFile: /src/opus/dnn/lossgen.c
    functionUses: 0
    functionsReached:
    - parse_weights
    - opus_free
    - init_lossgen
    linkageType: ''
    returnType: int
    signature: int lossgen_load_model(LossGenState *st, const void *data, int len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/dnn/lossgen.c:182,1
    - Dst: lossgen_init
      Src: /src/opus/dnn/lossgen.c:185,1
    - Dst: atof
      Src: /src/opus/dnn/lossgen.c:186,1
    - Dst: atoi
      Src: /src/opus/dnn/lossgen.c:187,1
    - Dst: printf
      Src: /src/opus/dnn/lossgen.c:189,1
    - Dst: sample_loss
      Src: /src/opus/dnn/lossgen.c:189,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 177
    functionDepth: 4
    functionLinenumber: 177
    functionLinenumberEnd: 191
    functionName: main
    functionSourceFile: /src/opus/dnn/lossgen.c
    functionUses: 0
    functionsReached:
    - atoi
    - sample_loss
    - atof
    - fprintf
    - lossgen_init
    - printf
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ec_laplace_decode_p0
      Src: /src/opus/dnn/dred_decoder.c:47,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 6
    argNames:
    - dec
    - x
    - scale
    - r
    - p0
    - dim
    argTypes:
    - ec_dec*
    - float*
    - opus_uint8*
    - opus_uint8*
    - opus_uint8*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 50
    functionName: dred_decode_latents
    functionSourceFile: /src/opus/dnn/dred_decoder.c
    functionUses: 0
    functionsReached:
    - ec_laplace_decode_p0
    linkageType: ''
    returnType: void
    signature: void dred_decode_latents(ec_dec *dec, float *x, const opus_uint8 *scale,
      const opus_uint8 *r, const opus_uint8 *p0, int dim)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/dnn/dred_decoder.c:65,1
    - Dst: ec_dec_init
      Src: /src/opus/dnn/dred_decoder.c:68,1
    - Dst: ec_dec_uint
      Src: /src/opus/dnn/dred_decoder.c:69,1
    - Dst: ec_dec_uint
      Src: /src/opus/dnn/dred_decoder.c:70,1
    - Dst: ec_dec_uint
      Src: /src/opus/dnn/dred_decoder.c:71,1
    - Dst: ec_dec_uint
      Src: /src/opus/dnn/dred_decoder.c:71,1
    - Dst: ec_dec_uint
      Src: /src/opus/dnn/dred_decoder.c:74,1
    - Dst: ec_decode
      Src: /src/opus/dnn/dred_decoder.c:89,1
    - Dst: ec_dec_update
      Src: /src/opus/dnn/dred_decoder.c:92,1
    - Dst: ec_dec_update
      Src: /src/opus/dnn/dred_decoder.c:95,1
    - Dst: dred_decode_latents
      Src: /src/opus/dnn/dred_decoder.c:99,1
    - Dst: IMIN
      Src: /src/opus/dnn/dred_decoder.c:108,1
    - Dst: ec_tell
      Src: /src/opus/dnn/dred_decoder.c:111,1
    - Dst: compute_quantizer
      Src: /src/opus/dnn/dred_decoder.c:113,1
    - Dst: dred_decode_latents
      Src: /src/opus/dnn/dred_decoder.c:115,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 35
    argCount: 5
    argNames:
    - dec
    - bytes
    - num_bytes
    - min_feature_frames
    - dred_frame_offset
    argTypes:
    - OpusDRED*
    - opus_uint8*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 52
    functionDepth: 2
    functionLinenumber: 52
    functionLinenumberEnd: 129
    functionName: dred_ec_decode
    functionSourceFile: /src/opus/dnn/dred_decoder.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - ec_tell
    - IMIN
    - ec_dec_uint
    - compute_quantizer
    - ec_dec_init
    - ec_dec_update
    - ec_decode
    - dred_decode_latents
    linkageType: ''
    returnType: int
    signature: int dred_ec_decode(OpusDRED *dec, const opus_uint8 *bytes, int num_bytes,
      int min_feature_frames, int dred_frame_offset)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - fid
    - ','
    - name
    - ','
    - mode
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 49
    functionName: FINIT
    functionSourceFile: /src/opus/dnn/osce.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FINIT(fid, name, mode)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/dnn/osce.c:58,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - fid
    - name
    - array
    - n
    argTypes:
    - FILE*
    - char*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 60
    functionName: print_float_array
    functionSourceFile: /src/opus/dnn/osce.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void print_float_array(FILE *fid, const char  *name, const float *array,
      int n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/dnn/osce.c:67,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - fid
    - name
    - array
    - n
    argTypes:
    - FILE*
    - char*
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 69
    functionName: print_int_array
    functionSourceFile: /src/opus/dnn/osce.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void print_int_array(FILE *fid, const char  *name, const int *array,
      int n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/dnn/osce.c:76,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - fid
    - name
    - array
    - n
    argTypes:
    - FILE*
    - char*
    - opus_int8*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 78
    functionName: print_int8_array
    functionSourceFile: /src/opus/dnn/osce.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void print_int8_array(FILE *fid, const char  *name, const opus_int8
      *array, int n)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/dnn/osce.c:89,1
    - Dst: fprintf
      Src: /src/opus/dnn/osce.c:90,1
    - Dst: sprintf
      Src: /src/opus/dnn/osce.c:97,1
    - Dst: print_float_array
      Src: /src/opus/dnn/osce.c:97,1
    - Dst: sprintf
      Src: /src/opus/dnn/osce.c:98,1
    - Dst: print_float_array
      Src: /src/opus/dnn/osce.c:98,1
    - Dst: sprintf
      Src: /src/opus/dnn/osce.c:99,1
    - Dst: print_int8_array
      Src: /src/opus/dnn/osce.c:99,1
    - Dst: sprintf
      Src: /src/opus/dnn/osce.c:100,1
    - Dst: print_float_array
      Src: /src/opus/dnn/osce.c:100,1
    - Dst: sprintf
      Src: /src/opus/dnn/osce.c:102,1
    - Dst: print_float_array
      Src: /src/opus/dnn/osce.c:102,1
    - Dst: sprintf
      Src: /src/opus/dnn/osce.c:103,1
    - Dst: print_float_array
      Src: /src/opus/dnn/osce.c:103,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 38
    argCount: 3
    argNames:
    - fid
    - name
    - layer
    argTypes:
    - FILE*
    - char*
    - LinearLayer*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 105
    functionName: print_linear_layer
    functionSourceFile: /src/opus/dnn/osce.c
    functionUses: 0
    functionsReached:
    - sprintf
    - print_int8_array
    - print_float_array
    - fprintf
    linkageType: ''
    returnType: void
    signature: void print_linear_layer(FILE *fid, const char *name, LinearLayer *layer)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - min
    - ','
    - max
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 113
    functionName: CLIP
    functionSourceFile: /src/opus/dnn/osce.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CLIP(a, min, max)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: log
      Src: /src/opus/dnn/osce.c:127,1
    - Dst: CLIP
      Src: /src/opus/dnn/osce.c:128,1
    - Dst: sin
      Src: /src/opus/dnn/osce.c:130,1
    - Dst: sin
      Src: /src/opus/dnn/osce.c:131,1
    - Dst: sin
      Src: /src/opus/dnn/osce.c:132,1
    - Dst: sin
      Src: /src/opus/dnn/osce.c:133,1
    - Dst: sin
      Src: /src/opus/dnn/osce.c:134,1
    - Dst: sin
      Src: /src/opus/dnn/osce.c:135,1
    - Dst: sin
      Src: /src/opus/dnn/osce.c:136,1
    - Dst: sin
      Src: /src/opus/dnn/osce.c:137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 6
    argNames:
    - emb
    - numbits
    - dim
    - min_val
    - max_val
    - logscale
    argTypes:
    - float*
    - float
    - int
    - float
    - float
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 138
    functionName: compute_lace_numbits_embedding
    functionSourceFile: /src/opus/dnn/osce.c
    functionUses: 0
    functionsReached:
    - log
    - CLIP
    - sin
    linkageType: ''
    returnType: void
    signature: void compute_lace_numbits_embedding(float *emb, float numbits, int
      dim, float min_val, float max_val, int logscale)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/osce.c:144,1
    - Dst: celt_assert
      Src: /src/opus/dnn/osce.c:145,1
    - Dst: init_lacelayers
      Src: /src/opus/dnn/osce.c:147,1
    - Dst: compute_overlap_window
      Src: /src/opus/dnn/osce.c:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - hLACE
    - weights
    argTypes:
    - LACE*
    - WeightArray*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 141
    functionDepth: 1
    functionLinenumber: 141
    functionLinenumberEnd: 152
    functionName: init_lace
    functionSourceFile: /src/opus/dnn/osce.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - OPUS_CLEAR
    - init_lacelayers
    - compute_overlap_window
    linkageType: ''
    returnType: int
    signature: int init_lace(LACE *hLACE, const WeightArray *weights)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/osce.c:156,1
    - Dst: init_adacomb_state
      Src: /src/opus/dnn/osce.c:158,1
    - Dst: init_adacomb_state
      Src: /src/opus/dnn/osce.c:159,1
    - Dst: init_adaconv_state
      Src: /src/opus/dnn/osce.c:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - state
    argTypes:
    - LACEState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 161
    functionName: reset_lace_state
    functionSourceFile: /src/opus/dnn/osce.c
    functionUses: 0
    functionsReached:
    - OPUS_CLEAR
    - init_adacomb_state
    - init_adaconv_state
    linkageType: ''
    returnType: void
    signature: void reset_lace_state(LACEState *state)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: IMAX
      Src: /src/opus/dnn/osce.c:173,1
    - Dst: IMAX
      Src: /src/opus/dnn/osce.c:173,1
    - Dst: IMAX
      Src: /src/opus/dnn/osce.c:174,1
    - Dst: compute_lace_numbits_embedding
      Src: /src/opus/dnn/osce.c:178,1
    - Dst: log
      Src: /src/opus/dnn/osce.c:179,1
    - Dst: log
      Src: /src/opus/dnn/osce.c:179,1
    - Dst: compute_lace_numbits_embedding
      Src: /src/opus/dnn/osce.c:180,1
    - Dst: log
      Src: /src/opus/dnn/osce.c:181,1
    - Dst: log
      Src: /src/opus/dnn/osce.c:181,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce.c:186,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce.c:187,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce.c:188,1
    - Dst: compute_generic_conv1d
      Src: /src/opus/dnn/osce.c:190,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce.c:201,1
    - Dst: compute_generic_conv1d
      Src: /src/opus/dnn/osce.c:202,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce.c:213,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/osce.c:214,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce.c:223,1
    - Dst: compute_generic_gru
      Src: /src/opus/dnn/osce.c:226,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce.c:233,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 7
    argNames:
    - hLACE
    - state
    - output
    - features
    - numbits
    - periods
    - arch
    argTypes:
    - LACE*
    - LACEState*
    - float*
    - float*
    - float*
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 163
    functionDepth: 2
    functionLinenumber: 163
    functionLinenumberEnd: 235
    functionName: lace_feature_net
    functionSourceFile: /src/opus/dnn/osce.c
    functionUses: 0
    functionsReached:
    - OPUS_COPY
    - compute_generic_conv1d
    - compute_lace_numbits_embedding
    - log
    - IMAX
    - compute_generic_dense
    - compute_generic_gru
    linkageType: ''
    returnType: void
    signature: "void lace_feature_net(\n    LACE *hLACE,\n    LACEState *state,\n
      \   float *output,\n    const float *features,\n    const float *numbits,\n
      \   const int *periods,\n    int arch\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:258,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:259,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:260,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:261,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:262,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:263,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:264,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:265,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:266,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:267,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:269,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:270,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:271,1
    - Dst: lace_feature_net
      Src: /src/opus/dnn/osce.c:282,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:284,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:285,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:286,1
    - Dst: adacomb_process_frame
      Src: /src/opus/dnn/osce.c:292,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:314,1
    - Dst: adacomb_process_frame
      Src: /src/opus/dnn/osce.c:320,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:341,1
    - Dst: adaconv_process_frame
      Src: /src/opus/dnn/osce.c:347,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:368,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:378,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 39
    argCount: 8
    argNames:
    - hLACE
    - state
    - x_out
    - x_in
    - features
    - numbits
    - periods
    - arch
    argTypes:
    - LACE*
    - LACEState*
    - float*
    - float*
    - float*
    - float*
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 238
    functionDepth: 3
    functionLinenumber: 238
    functionLinenumberEnd: 380
    functionName: lace_process_20ms_frame
    functionSourceFile: /src/opus/dnn/osce.c
    functionUses: 0
    functionsReached:
    - lace_feature_net
    - FINIT
    - fwrite
    - adacomb_process_frame
    - adaconv_process_frame
    linkageType: ''
    returnType: void
    signature: "void lace_process_20ms_frame(\n    LACE* hLACE,\n    LACEState *state,\n
      \   float *x_out,\n    const float *x_in,\n    const float *features,\n    const
      float *numbits,\n    const int *periods,\n    int arch\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: log
      Src: /src/opus/dnn/osce.c:393,1
    - Dst: CLIP
      Src: /src/opus/dnn/osce.c:394,1
    - Dst: sin
      Src: /src/opus/dnn/osce.c:396,1
    - Dst: sin
      Src: /src/opus/dnn/osce.c:397,1
    - Dst: sin
      Src: /src/opus/dnn/osce.c:398,1
    - Dst: sin
      Src: /src/opus/dnn/osce.c:399,1
    - Dst: sin
      Src: /src/opus/dnn/osce.c:400,1
    - Dst: sin
      Src: /src/opus/dnn/osce.c:401,1
    - Dst: sin
      Src: /src/opus/dnn/osce.c:402,1
    - Dst: sin
      Src: /src/opus/dnn/osce.c:403,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 6
    argNames:
    - emb
    - numbits
    - dim
    - min_val
    - max_val
    - logscale
    argTypes:
    - float*
    - float
    - int
    - float
    - float
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 404
      start: 388
    functionDepth: 1
    functionLinenumber: 388
    functionLinenumberEnd: 404
    functionName: compute_nolace_numbits_embedding
    functionSourceFile: /src/opus/dnn/osce.c
    functionUses: 0
    functionsReached:
    - log
    - CLIP
    - sin
    linkageType: ''
    returnType: void
    signature: void compute_nolace_numbits_embedding(float *emb, float numbits, int
      dim, float min_val, float max_val, int logscale)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/osce.c:409,1
    - Dst: celt_assert
      Src: /src/opus/dnn/osce.c:410,1
    - Dst: init_nolacelayers
      Src: /src/opus/dnn/osce.c:412,1
    - Dst: compute_overlap_window
      Src: /src/opus/dnn/osce.c:414,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - hNoLACE
    - weights
    argTypes:
    - NoLACE*
    - WeightArray*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 417
      start: 406
    functionDepth: 1
    functionLinenumber: 406
    functionLinenumberEnd: 417
    functionName: init_nolace
    functionSourceFile: /src/opus/dnn/osce.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - OPUS_CLEAR
    - init_nolacelayers
    - compute_overlap_window
    linkageType: ''
    returnType: int
    signature: int init_nolace(NoLACE *hNoLACE, const WeightArray *weights)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/osce.c:421,1
    - Dst: init_adacomb_state
      Src: /src/opus/dnn/osce.c:423,1
    - Dst: init_adacomb_state
      Src: /src/opus/dnn/osce.c:424,1
    - Dst: init_adaconv_state
      Src: /src/opus/dnn/osce.c:425,1
    - Dst: init_adaconv_state
      Src: /src/opus/dnn/osce.c:426,1
    - Dst: init_adaconv_state
      Src: /src/opus/dnn/osce.c:427,1
    - Dst: init_adaconv_state
      Src: /src/opus/dnn/osce.c:428,1
    - Dst: init_adashape_state
      Src: /src/opus/dnn/osce.c:429,1
    - Dst: init_adashape_state
      Src: /src/opus/dnn/osce.c:430,1
    - Dst: init_adashape_state
      Src: /src/opus/dnn/osce.c:431,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 1
    argNames:
    - state
    argTypes:
    - NoLACEState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 432
      start: 419
    functionDepth: 1
    functionLinenumber: 419
    functionLinenumberEnd: 432
    functionName: reset_nolace_state
    functionSourceFile: /src/opus/dnn/osce.c
    functionUses: 0
    functionsReached:
    - OPUS_CLEAR
    - init_adacomb_state
    - init_adaconv_state
    - init_adashape_state
    linkageType: ''
    returnType: void
    signature: void reset_nolace_state(NoLACEState *state)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: IMAX
      Src: /src/opus/dnn/osce.c:444,1
    - Dst: IMAX
      Src: /src/opus/dnn/osce.c:445,1
    - Dst: compute_nolace_numbits_embedding
      Src: /src/opus/dnn/osce.c:449,1
    - Dst: log
      Src: /src/opus/dnn/osce.c:450,1
    - Dst: log
      Src: /src/opus/dnn/osce.c:450,1
    - Dst: compute_nolace_numbits_embedding
      Src: /src/opus/dnn/osce.c:451,1
    - Dst: log
      Src: /src/opus/dnn/osce.c:452,1
    - Dst: log
      Src: /src/opus/dnn/osce.c:452,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce.c:457,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce.c:458,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce.c:459,1
    - Dst: compute_generic_conv1d
      Src: /src/opus/dnn/osce.c:461,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce.c:472,1
    - Dst: compute_generic_conv1d
      Src: /src/opus/dnn/osce.c:473,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce.c:484,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/osce.c:485,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce.c:494,1
    - Dst: compute_generic_gru
      Src: /src/opus/dnn/osce.c:497,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce.c:504,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 7
    argNames:
    - hNoLACE
    - state
    - output
    - features
    - numbits
    - periods
    - arch
    argTypes:
    - NoLACE*
    - NoLACEState*
    - float*
    - float*
    - float*
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 434
    functionDepth: 2
    functionLinenumber: 434
    functionLinenumberEnd: 506
    functionName: nolace_feature_net
    functionSourceFile: /src/opus/dnn/osce.c
    functionUses: 0
    functionsReached:
    - compute_nolace_numbits_embedding
    - OPUS_COPY
    - compute_generic_conv1d
    - log
    - IMAX
    - compute_generic_dense
    - compute_generic_gru
    linkageType: ''
    returnType: void
    signature: "void nolace_feature_net(\n    NoLACE *hNoLACE,\n    NoLACEState *state,\n
      \   float *output,\n    const float *features,\n    const float *numbits,\n
      \   const int *periods,\n    int arch\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:533,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:534,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:535,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:536,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:537,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:538,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:539,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:540,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:541,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:542,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:544,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:545,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:546,1
    - Dst: nolace_feature_net
      Src: /src/opus/dnn/osce.c:557,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:559,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:560,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:561,1
    - Dst: adacomb_process_frame
      Src: /src/opus/dnn/osce.c:568,1
    - Dst: compute_generic_conv1d
      Src: /src/opus/dnn/osce.c:588,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce.c:599,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:602,1
    - Dst: adacomb_process_frame
      Src: /src/opus/dnn/osce.c:609,1
    - Dst: compute_generic_conv1d
      Src: /src/opus/dnn/osce.c:629,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce.c:640,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:643,1
    - Dst: adaconv_process_frame
      Src: /src/opus/dnn/osce.c:649,1
    - Dst: compute_generic_conv1d
      Src: /src/opus/dnn/osce.c:669,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce.c:680,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:683,1
    - Dst: celt_assert
      Src: /src/opus/dnn/osce.c:689,1
    - Dst: adashape_process_frame
      Src: /src/opus/dnn/osce.c:691,1
    - Dst: adaconv_process_frame
      Src: /src/opus/dnn/osce.c:706,1
    - Dst: compute_generic_conv1d
      Src: /src/opus/dnn/osce.c:726,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce.c:737,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:740,1
    - Dst: celt_assert
      Src: /src/opus/dnn/osce.c:746,1
    - Dst: adashape_process_frame
      Src: /src/opus/dnn/osce.c:748,1
    - Dst: adaconv_process_frame
      Src: /src/opus/dnn/osce.c:763,1
    - Dst: compute_generic_conv1d
      Src: /src/opus/dnn/osce.c:783,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce.c:794,1
    - Dst: celt_assert
      Src: /src/opus/dnn/osce.c:799,1
    - Dst: adashape_process_frame
      Src: /src/opus/dnn/osce.c:801,1
    - Dst: adaconv_process_frame
      Src: /src/opus/dnn/osce.c:816,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:846,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 65
    argCount: 8
    argNames:
    - hNoLACE
    - state
    - x_out
    - x_in
    - features
    - numbits
    - periods
    - arch
    argTypes:
    - NoLACE*
    - NoLACEState*
    - float*
    - float*
    - float*
    - float*
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 848
      start: 509
    functionDepth: 3
    functionLinenumber: 509
    functionLinenumberEnd: 848
    functionName: nolace_process_20ms_frame
    functionSourceFile: /src/opus/dnn/osce.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - FINIT
    - OPUS_COPY
    - compute_generic_conv1d
    - adashape_process_frame
    - fwrite
    - adacomb_process_frame
    - adaconv_process_frame
    - nolace_feature_net
    linkageType: ''
    returnType: void
    signature: "void nolace_process_20ms_frame(\n    NoLACE* hNoLACE,\n    NoLACEState
      *state,\n    float *x_out,\n    const float *x_in,\n    const float *features,\n
      \   const float *numbits,\n    const int *periods,\n    int arch\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:872,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:873,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:874,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:875,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:876,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:878,1
    - Dst: celt_assert
      Src: /src/opus/dnn/osce.c:882,1
    - Dst: celt_assert
      Src: /src/opus/dnn/osce.c:883,1
    - Dst: celt_assert
      Src: /src/opus/dnn/osce.c:884,1
    - Dst: compute_generic_conv1d
      Src: /src/opus/dnn/osce.c:889,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:899,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce.c:902,1
    - Dst: compute_generic_conv1d
      Src: /src/opus/dnn/osce.c:907,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:917,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce.c:920,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/osce.c:925,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:933,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce.c:936,1
    - Dst: celt_assert
      Src: /src/opus/dnn/osce.c:939,1
    - Dst: compute_generic_gru
      Src: /src/opus/dnn/osce.c:942,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:950,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce.c:952,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 31
    argCount: 6
    argNames:
    - hBBWENET
    - state
    - output
    - features
    - num_frames
    - arch
    argTypes:
    - BBWENet*
    - BBWENetState*
    - float*
    - float*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 954
      start: 855
    functionDepth: 1
    functionLinenumber: 855
    functionLinenumberEnd: 954
    functionName: bbwe_feature_net
    functionSourceFile: /src/opus/dnn/osce.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - OPUS_COPY
    - FINIT
    - compute_generic_conv1d
    - fwrite
    - compute_generic_dense
    - compute_generic_gru
    linkageType: ''
    returnType: void
    signature: "void bbwe_feature_net(\n    BBWENet *hBBWENET,\n    BBWENetState *state,\n
      \   float *output,\n    const float *features,\n    int num_frames,\n    int
      arch\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/dnn/osce.c:978,1
    - Dst: fabs
      Src: /src/opus/dnn/osce.c:981,1
    - Dst: celt_log
      Src: /src/opus/dnn/osce.c:985,1
    - Dst: celt_sin
      Src: /src/opus/dnn/osce.c:989,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - x
    - len
    argTypes:
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 991
      start: 974
    functionDepth: 1
    functionLinenumber: 974
    functionLinenumberEnd: 991
    functionName: apply_valin_activation
    functionSourceFile: /src/opus/dnn/osce.c
    functionUses: 0
    functionsReached:
    - celt_sin
    - celt_assert
    - fabs
    - celt_log
    linkageType: ''
    returnType: void
    signature: void apply_valin_activation(float *x, int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/dnn/osce.c:1000,1
    - Dst: celt_assert
      Src: /src/opus/dnn/osce.c:1001,1
    - Dst: celt_assert
      Src: /src/opus/dnn/osce.c:1002,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce.c:1004,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce.c:1005,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce.c:1038,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 4
    argNames:
    - state
    - x_out
    - x_in
    - num_samples
    argTypes:
    - resamp_state*
    - float*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1039
      start: 995
    functionDepth: 1
    functionLinenumber: 995
    functionLinenumberEnd: 1039
    functionName: interpol_3_2
    functionSourceFile: /src/opus/dnn/osce.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - OPUS_COPY
    linkageType: ''
    returnType: void
    signature: void interpol_3_2(resamp_state *state, float *x_out, const float *x_in,
      int num_samples)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/dnn/osce.c:1049,1
    - Dst: celt_assert
      Src: /src/opus/dnn/osce.c:1050,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce.c:1052,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 33
    argCount: 4
    argNames:
    - state
    - x_out
    - x_in
    - num_samples
    argTypes:
    - resamp_state*
    - float*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1097
      start: 1041
    functionDepth: 1
    functionLinenumber: 1041
    functionLinenumberEnd: 1097
    functionName: upsamp_2x
    functionSourceFile: /src/opus/dnn/osce.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - OPUS_COPY
    linkageType: ''
    returnType: void
    signature: void upsamp_2x(resamp_state *state, float *x_out, const float *x_in,
      int num_samples)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:1123,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:1124,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:1125,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:1126,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:1127,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:1128,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:1129,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:1130,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:1131,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:1132,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:1133,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:1134,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:1135,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:1136,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:1137,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:1138,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:1139,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:1140,1
    - Dst: FINIT
      Src: /src/opus/dnn/osce.c:1141,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:1142,1
    - Dst: bbwe_feature_net
      Src: /src/opus/dnn/osce.c:1146,1
    - Dst: fread
      Src: /src/opus/dnn/osce.c:1149,1
    - Dst: adaconv_process_frame
      Src: /src/opus/dnn/osce.c:1158,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:1179,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:1180,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:1181,1
    - Dst: celt_assert
      Src: /src/opus/dnn/osce.c:1190,1
    - Dst: celt_assert
      Src: /src/opus/dnn/osce.c:1191,1
    - Dst: upsamp_2x
      Src: /src/opus/dnn/osce.c:1194,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:1203,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:1204,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:1205,1
    - Dst: adashape_process_frame
      Src: /src/opus/dnn/osce.c:1209,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:1225,1
    - Dst: apply_valin_activation
      Src: /src/opus/dnn/osce.c:1229,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:1234,1
    - Dst: adaconv_process_frame
      Src: /src/opus/dnn/osce.c:1242,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:1262,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:1263,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:1264,1
    - Dst: celt_assert
      Src: /src/opus/dnn/osce.c:1272,1
    - Dst: celt_assert
      Src: /src/opus/dnn/osce.c:1273,1
    - Dst: interpol_3_2
      Src: /src/opus/dnn/osce.c:1276,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:1285,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:1286,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:1287,1
    - Dst: adashape_process_frame
      Src: /src/opus/dnn/osce.c:1291,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:1307,1
    - Dst: apply_valin_activation
      Src: /src/opus/dnn/osce.c:1311,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:1316,1
    - Dst: celt_assert
      Src: /src/opus/dnn/osce.c:1321,1
    - Dst: adaconv_process_frame
      Src: /src/opus/dnn/osce.c:1324,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:1346,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 70
    argCount: 7
    argNames:
    - hBBWENET
    - state
    - x_out
    - x_in
    - features
    - num_frames
    - arch
    argTypes:
    - BBWENet*
    - BBWENetState*
    - float*
    - float*
    - float*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1348
      start: 1099
    functionDepth: 2
    functionLinenumber: 1099
    functionLinenumberEnd: 1348
    functionName: bbwenet_process_frames
    functionSourceFile: /src/opus/dnn/osce.c
    functionUses: 0
    functionsReached:
    - upsamp_2x
    - celt_assert
    - FINIT
    - apply_valin_activation
    - bbwe_feature_net
    - adashape_process_frame
    - fwrite
    - fread
    - interpol_3_2
    - adaconv_process_frame
    linkageType: ''
    returnType: void
    signature: "void bbwenet_process_frames(\n    BBWENet *hBBWENET,\n    BBWENetState
      *state,\n    float *x_out,\n    const float *x_in,\n    const float *features,\n
      \   int num_frames,\n    int arch\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/osce.c:1352,1
    - Dst: init_adaconv_state
      Src: /src/opus/dnn/osce.c:1354,1
    - Dst: init_adaconv_state
      Src: /src/opus/dnn/osce.c:1355,1
    - Dst: init_adaconv_state
      Src: /src/opus/dnn/osce.c:1356,1
    - Dst: init_adashape_state
      Src: /src/opus/dnn/osce.c:1357,1
    - Dst: init_adashape_state
      Src: /src/opus/dnn/osce.c:1358,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - state
    argTypes:
    - BBWENetState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1359
      start: 1350
    functionDepth: 1
    functionLinenumber: 1350
    functionLinenumberEnd: 1359
    functionName: reset_bbwenet_state
    functionSourceFile: /src/opus/dnn/osce.c
    functionUses: 0
    functionsReached:
    - OPUS_CLEAR
    - init_adaconv_state
    - init_adashape_state
    linkageType: ''
    returnType: void
    signature: void reset_bbwenet_state(BBWENetState *state)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/osce.c:1364,1
    - Dst: celt_assert
      Src: /src/opus/dnn/osce.c:1365,1
    - Dst: init_bbwenetlayers
      Src: /src/opus/dnn/osce.c:1367,1
    - Dst: compute_overlap_window
      Src: /src/opus/dnn/osce.c:1369,1
    - Dst: compute_overlap_window
      Src: /src/opus/dnn/osce.c:1370,1
    - Dst: compute_overlap_window
      Src: /src/opus/dnn/osce.c:1371,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - hBBWENET
    - weights
    argTypes:
    - BBWENet*
    - WeightArray*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1374
      start: 1361
    functionDepth: 1
    functionLinenumber: 1361
    functionLinenumberEnd: 1374
    functionName: init_bbwenet
    functionSourceFile: /src/opus/dnn/osce.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - OPUS_CLEAR
    - compute_overlap_window
    - init_bbwenetlayers
    linkageType: ''
    returnType: int
    signature: int init_bbwenet(BBWENet *hBBWENET, const WeightArray *weights)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/osce.c:1385,1
    - Dst: reset_lace_state
      Src: /src/opus/dnn/osce.c:1393,1
    - Dst: reset_nolace_state
      Src: /src/opus/dnn/osce.c:1398,1
    - Dst: celt_assert
      Src: /src/opus/dnn/osce.c:1402,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 2
    argNames:
    - hOSCE
    - method
    argTypes:
    - silk_OSCE_struct*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1406
      start: 1381
    functionDepth: 2
    functionLinenumber: 1381
    functionLinenumberEnd: 1406
    functionName: osce_reset
    functionSourceFile: /src/opus/dnn/osce.c
    functionUses: 3
    functionsReached:
    - reset_lace_state
    - celt_assert
    - OPUS_CLEAR
    - reset_nolace_state
    linkageType: ''
    returnType: void
    signature: void osce_reset(silk_OSCE_struct *hOSCE, int method)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/osce.c:1413,1
    - Dst: reset_bbwenet_state
      Src: /src/opus/dnn/osce.c:1421,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - hOSCEBWE
    argTypes:
    - silk_OSCE_BWE_struct*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1422
      start: 1410
    functionDepth: 2
    functionLinenumber: 1410
    functionLinenumberEnd: 1422
    functionName: osce_bwe_reset
    functionSourceFile: /src/opus/dnn/osce.c
    functionUses: 1
    functionsReached:
    - reset_bbwenet_state
    - OPUS_CLEAR
    linkageType: ''
    returnType: void
    signature: void osce_bwe_reset(silk_OSCE_BWE_struct *hOSCEBWE)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: parse_weights
      Src: /src/opus/dnn/osce.c:1436,1
    - Dst: init_lace
      Src: /src/opus/dnn/osce.c:1439,1
    - Dst: init_nolace
      Src: /src/opus/dnn/osce.c:1443,1
    - Dst: init_bbwenet
      Src: /src/opus/dnn/osce.c:1448,1
    - Dst: free
      Src: /src/opus/dnn/osce.c:1451,1
    - Dst: init_lace
      Src: /src/opus/dnn/osce.c:1458,1
    - Dst: init_nolace
      Src: /src/opus/dnn/osce.c:1462,1
    - Dst: init_bbwenet
      Src: /src/opus/dnn/osce.c:1467,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 27
    argCount: 3
    argNames:
    - model
    - data
    - len
    argTypes:
    - OSCEModel*
    - void*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1475
      start: 1428
    functionDepth: 2
    functionLinenumber: 1428
    functionLinenumberEnd: 1475
    functionName: osce_load_models
    functionSourceFile: /src/opus/dnn/osce.c
    functionUses: 1
    functionsReached:
    - parse_weights
    - init_lace
    - init_nolace
    - init_bbwenet
    - free
    linkageType: ''
    returnType: int
    signature: int osce_load_models(OSCEModel *model, const void *data, int len)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/dnn/osce.c:1493,1
    - Dst: osce_bwe_calculate_features
      Src: /src/opus/dnn/osce.c:1503,1
    - Dst: upsamp_2x
      Src: /src/opus/dnn/osce.c:1507,1
    - Dst: interpol_3_2
      Src: /src/opus/dnn/osce.c:1508,1
    - Dst: bbwenet_process_frames
      Src: /src/opus/dnn/osce.c:1512,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce.c:1524,1
    - Dst: float2int
      Src: /src/opus/dnn/osce.c:1530,1
    - Dst: float2int
      Src: /src/opus/dnn/osce.c:1538,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 6
    argNames:
    - model
    - psOSCEBWE
    - xq48
    - xq16
    - xq16_len
    - arch
    argTypes:
    - OSCEModel*
    - silk_OSCE_BWE_struct*
    - opus_int16[]
    - opus_int16[]
    - opus_int32
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1542
      start: 1478
    functionDepth: 3
    functionLinenumber: 1478
    functionLinenumberEnd: 1542
    functionName: osce_bwe
    functionSourceFile: /src/opus/dnn/osce.c
    functionUses: 1
    functionsReached:
    - upsamp_2x
    - celt_assert
    - OPUS_COPY
    - osce_bwe_calculate_features
    - float2int
    - bbwenet_process_frames
    - interpol_3_2
    linkageType: ''
    returnType: void
    signature: "void osce_bwe(\n    OSCEModel                   *model,                         /*
      I    OSCE model struct                           */\n    silk_OSCE_BWE_struct
      \       *psOSCEBWE,                     /* I/O  OSCE BWE state                              */\n
      \   opus_int16                  xq48[],                         /* O    bandwidth-extended
      speech                   */\n    opus_int16                  xq16[],                         /*
      I    Decoded speech                              */\n    opus_int32                  xq16_len,
      \                      /* I    Length of xq16 in samples                   */\n
      \   int                         arch                            /* I    Run-time
      architecture                       */\n )"
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: osce_reset
      Src: /src/opus/dnn/osce.c:1566,1
    - Dst: osce_calculate_features
      Src: /src/opus/dnn/osce.c:1570,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce.c:1585,1
    - Dst: lace_process_20ms_frame
      Src: /src/opus/dnn/osce.c:1589,1
    - Dst: nolace_process_20ms_frame
      Src: /src/opus/dnn/osce.c:1594,1
    - Dst: celt_assert
      Src: /src/opus/dnn/osce.c:1598,1
    - Dst: fopen
      Src: /src/opus/dnn/osce.c:1612,1
    - Dst: fopen
      Src: /src/opus/dnn/osce.c:1613,1
    - Dst: fopen
      Src: /src/opus/dnn/osce.c:1614,1
    - Dst: fopen
      Src: /src/opus/dnn/osce.c:1615,1
    - Dst: fopen
      Src: /src/opus/dnn/osce.c:1616,1
    - Dst: fopen
      Src: /src/opus/dnn/osce.c:1617,1
    - Dst: fopen
      Src: /src/opus/dnn/osce.c:1618,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:1620,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:1621,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:1635,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:1643,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:1650,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:1655,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:1658,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce.c:1663,1
    - Dst: osce_cross_fade_10ms
      Src: /src/opus/dnn/osce.c:1668,1
    - Dst: float2int
      Src: /src/opus/dnn/osce.c:1678,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 82
    argCount: 6
    argNames:
    - model
    - psDec
    - psDecCtrl
    - xq
    - num_bits
    - arch
    argTypes:
    - OSCEModel*
    - silk_decoder_state*
    - silk_decoder_control*
    - opus_int16[]
    - opus_int32
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1681
      start: 1546
    functionDepth: 4
    functionLinenumber: 1546
    functionLinenumberEnd: 1681
    functionName: osce_enhance_frame
    functionSourceFile: /src/opus/dnn/osce.c
    functionUses: 1
    functionsReached:
    - osce_cross_fade_10ms
    - celt_assert
    - OPUS_COPY
    - float2int
    - nolace_process_20ms_frame
    - osce_calculate_features
    - osce_reset
    - fwrite
    - fopen
    - lace_process_20ms_frame
    linkageType: ''
    returnType: void
    signature: "void osce_enhance_frame(\n    OSCEModel                   *model,
      \                        /* I    OSCE model struct                           */\n
      \   silk_decoder_state          *psDec,                         /* I/O  Decoder
      state                               */\n    silk_decoder_control        *psDecCtrl,
      \                    /* I    Decoder control                             */\n
      \   opus_int16                  xq[],                           /* I/O  Decoded
      speech                              */\n    opus_int32                  num_bits,
      \                      /* I    Size of SILK payload in bits                */\n
      \   int                         arch                            /* I    Run-time
      architecture                       */\n)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: init_lace
      Src: /src/opus/dnn/osce.c:1707,1
    - Dst: strcpy
      Src: /src/opus/dnn/osce.c:1711,1
    - Dst: strcat
      Src: /src/opus/dnn/osce.c:1712,1
    - Dst: fopen
      Src: /src/opus/dnn/osce.c:1713,1
    - Dst: sprintf
      Src: /src/opus/dnn/osce.c:1716,1
    - Dst: perror
      Src: /src/opus/dnn/osce.c:1717,1
    - Dst: exit
      Src: /src/opus/dnn/osce.c:1718,1
    - Dst: strcpy
      Src: /src/opus/dnn/osce.c:1721,1
    - Dst: strcat
      Src: /src/opus/dnn/osce.c:1722,1
    - Dst: fopen
      Src: /src/opus/dnn/osce.c:1723,1
    - Dst: sprintf
      Src: /src/opus/dnn/osce.c:1726,1
    - Dst: perror
      Src: /src/opus/dnn/osce.c:1727,1
    - Dst: exit
      Src: /src/opus/dnn/osce.c:1728,1
    - Dst: strcpy
      Src: /src/opus/dnn/osce.c:1731,1
    - Dst: strcat
      Src: /src/opus/dnn/osce.c:1732,1
    - Dst: fopen
      Src: /src/opus/dnn/osce.c:1733,1
    - Dst: sprintf
      Src: /src/opus/dnn/osce.c:1736,1
    - Dst: perror
      Src: /src/opus/dnn/osce.c:1737,1
    - Dst: exit
      Src: /src/opus/dnn/osce.c:1738,1
    - Dst: strcpy
      Src: /src/opus/dnn/osce.c:1741,1
    - Dst: strcat
      Src: /src/opus/dnn/osce.c:1742,1
    - Dst: fopen
      Src: /src/opus/dnn/osce.c:1743,1
    - Dst: sprintf
      Src: /src/opus/dnn/osce.c:1746,1
    - Dst: perror
      Src: /src/opus/dnn/osce.c:1747,1
    - Dst: exit
      Src: /src/opus/dnn/osce.c:1748,1
    - Dst: fread
      Src: /src/opus/dnn/osce.c:1753,1
    - Dst: fprintf
      Src: /src/opus/dnn/osce.c:1755,1
    - Dst: exit
      Src: /src/opus/dnn/osce.c:1756,1
    - Dst: fread
      Src: /src/opus/dnn/osce.c:1758,1
    - Dst: fprintf
      Src: /src/opus/dnn/osce.c:1760,1
    - Dst: exit
      Src: /src/opus/dnn/osce.c:1761,1
    - Dst: fread
      Src: /src/opus/dnn/osce.c:1763,1
    - Dst: fprintf
      Src: /src/opus/dnn/osce.c:1765,1
    - Dst: exit
      Src: /src/opus/dnn/osce.c:1766,1
    - Dst: fread
      Src: /src/opus/dnn/osce.c:1768,1
    - Dst: fprintf
      Src: /src/opus/dnn/osce.c:1770,1
    - Dst: exit
      Src: /src/opus/dnn/osce.c:1771,1
    - Dst: lace_feature_net
      Src: /src/opus/dnn/osce.c:1775,1
    - Dst: pow
      Src: /src/opus/dnn/osce.c:1780,1
    - Dst: printf
      Src: /src/opus/dnn/osce.c:1783,1
    - Dst: sqrt
      Src: /src/opus/dnn/osce.c:1783,1
    - Dst: fclose
      Src: /src/opus/dnn/osce.c:1787,1
    - Dst: fclose
      Src: /src/opus/dnn/osce.c:1788,1
    - Dst: fclose
      Src: /src/opus/dnn/osce.c:1789,1
    - Dst: fclose
      Src: /src/opus/dnn/osce.c:1790,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 62
    argCount: 3
    argNames:
    - prefix
    - num_frames
    - hLACE
    argTypes:
    - char*
    - int
    - LACE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1791
      start: 1688
    functionDepth: 3
    functionLinenumber: 1688
    functionLinenumberEnd: 1791
    functionName: lace_feature_net_compare
    functionSourceFile: /src/opus/dnn/osce.c
    functionUses: 0
    functionsReached:
    - exit
    - lace_feature_net
    - init_lace
    - perror
    - strcat
    - sprintf
    - fclose
    - strcpy
    - fread
    - fprintf
    - pow
    - fopen
    - sqrt
    - printf
    linkageType: ''
    returnType: void
    signature: "void lace_feature_net_compare(\n    const char * prefix,\n    int
      num_frames,\n    LACE* hLACE\n)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: init_lace
      Src: /src/opus/dnn/osce.c:1816,1
    - Dst: strcpy
      Src: /src/opus/dnn/osce.c:1818,1
    - Dst: strcat
      Src: /src/opus/dnn/osce.c:1819,1
    - Dst: fopen
      Src: /src/opus/dnn/osce.c:1820,1
    - Dst: sprintf
      Src: /src/opus/dnn/osce.c:1823,1
    - Dst: perror
      Src: /src/opus/dnn/osce.c:1824,1
    - Dst: exit
      Src: /src/opus/dnn/osce.c:1825,1
    - Dst: strcpy
      Src: /src/opus/dnn/osce.c:1828,1
    - Dst: strcat
      Src: /src/opus/dnn/osce.c:1829,1
    - Dst: fopen
      Src: /src/opus/dnn/osce.c:1830,1
    - Dst: sprintf
      Src: /src/opus/dnn/osce.c:1833,1
    - Dst: perror
      Src: /src/opus/dnn/osce.c:1834,1
    - Dst: exit
      Src: /src/opus/dnn/osce.c:1835,1
    - Dst: fopen
      Src: /src/opus/dnn/osce.c:1838,1
    - Dst: sprintf
      Src: /src/opus/dnn/osce.c:1841,1
    - Dst: perror
      Src: /src/opus/dnn/osce.c:1842,1
    - Dst: exit
      Src: /src/opus/dnn/osce.c:1843,1
    - Dst: strcpy
      Src: /src/opus/dnn/osce.c:1846,1
    - Dst: strcat
      Src: /src/opus/dnn/osce.c:1847,1
    - Dst: fopen
      Src: /src/opus/dnn/osce.c:1848,1
    - Dst: sprintf
      Src: /src/opus/dnn/osce.c:1851,1
    - Dst: perror
      Src: /src/opus/dnn/osce.c:1852,1
    - Dst: exit
      Src: /src/opus/dnn/osce.c:1853,1
    - Dst: strcpy
      Src: /src/opus/dnn/osce.c:1856,1
    - Dst: strcat
      Src: /src/opus/dnn/osce.c:1857,1
    - Dst: fopen
      Src: /src/opus/dnn/osce.c:1858,1
    - Dst: sprintf
      Src: /src/opus/dnn/osce.c:1861,1
    - Dst: perror
      Src: /src/opus/dnn/osce.c:1862,1
    - Dst: exit
      Src: /src/opus/dnn/osce.c:1863,1
    - Dst: printf
      Src: /src/opus/dnn/osce.c:1866,1
    - Dst: fread
      Src: /src/opus/dnn/osce.c:1868,1
    - Dst: printf
      Src: /src/opus/dnn/osce.c:1870,1
    - Dst: fread
      Src: /src/opus/dnn/osce.c:1871,1
    - Dst: fprintf
      Src: /src/opus/dnn/osce.c:1873,1
    - Dst: exit
      Src: /src/opus/dnn/osce.c:1874,1
    - Dst: fread
      Src: /src/opus/dnn/osce.c:1876,1
    - Dst: fprintf
      Src: /src/opus/dnn/osce.c:1878,1
    - Dst: exit
      Src: /src/opus/dnn/osce.c:1879,1
    - Dst: fread
      Src: /src/opus/dnn/osce.c:1881,1
    - Dst: fprintf
      Src: /src/opus/dnn/osce.c:1883,1
    - Dst: exit
      Src: /src/opus/dnn/osce.c:1884,1
    - Dst: lace_process_20ms_frame
      Src: /src/opus/dnn/osce.c:1887,1
    - Dst: CLIP
      Src: /src/opus/dnn/osce.c:1899,1
    - Dst: round
      Src: /src/opus/dnn/osce.c:1900,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:1903,1
    - Dst: printf
      Src: /src/opus/dnn/osce.c:1905,1
    - Dst: fclose
      Src: /src/opus/dnn/osce.c:1907,1
    - Dst: fclose
      Src: /src/opus/dnn/osce.c:1908,1
    - Dst: fclose
      Src: /src/opus/dnn/osce.c:1909,1
    - Dst: fclose
      Src: /src/opus/dnn/osce.c:1910,1
    - Dst: fclose
      Src: /src/opus/dnn/osce.c:1911,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 68
    argCount: 2
    argNames:
    - prefix
    - output
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1912
      start: 1794
    functionDepth: 4
    functionLinenumber: 1794
    functionLinenumberEnd: 1912
    functionName: lace_demo
    functionSourceFile: /src/opus/dnn/osce.c
    functionUses: 0
    functionsReached:
    - exit
    - init_lace
    - round
    - perror
    - strcat
    - sprintf
    - fclose
    - CLIP
    - strcpy
    - fread
    - fprintf
    - fwrite
    - fopen
    - lace_process_20ms_frame
    - printf
    linkageType: ''
    returnType: void
    signature: "void lace_demo(\n    char *prefix,\n    char *output\n)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: init_nolace
      Src: /src/opus/dnn/osce.c:1936,1
    - Dst: strcpy
      Src: /src/opus/dnn/osce.c:1938,1
    - Dst: strcat
      Src: /src/opus/dnn/osce.c:1939,1
    - Dst: fopen
      Src: /src/opus/dnn/osce.c:1940,1
    - Dst: sprintf
      Src: /src/opus/dnn/osce.c:1943,1
    - Dst: perror
      Src: /src/opus/dnn/osce.c:1944,1
    - Dst: exit
      Src: /src/opus/dnn/osce.c:1945,1
    - Dst: strcpy
      Src: /src/opus/dnn/osce.c:1948,1
    - Dst: strcat
      Src: /src/opus/dnn/osce.c:1949,1
    - Dst: fopen
      Src: /src/opus/dnn/osce.c:1950,1
    - Dst: sprintf
      Src: /src/opus/dnn/osce.c:1953,1
    - Dst: perror
      Src: /src/opus/dnn/osce.c:1954,1
    - Dst: exit
      Src: /src/opus/dnn/osce.c:1955,1
    - Dst: fopen
      Src: /src/opus/dnn/osce.c:1958,1
    - Dst: sprintf
      Src: /src/opus/dnn/osce.c:1961,1
    - Dst: perror
      Src: /src/opus/dnn/osce.c:1962,1
    - Dst: exit
      Src: /src/opus/dnn/osce.c:1963,1
    - Dst: strcpy
      Src: /src/opus/dnn/osce.c:1966,1
    - Dst: strcat
      Src: /src/opus/dnn/osce.c:1967,1
    - Dst: fopen
      Src: /src/opus/dnn/osce.c:1968,1
    - Dst: sprintf
      Src: /src/opus/dnn/osce.c:1971,1
    - Dst: perror
      Src: /src/opus/dnn/osce.c:1972,1
    - Dst: exit
      Src: /src/opus/dnn/osce.c:1973,1
    - Dst: strcpy
      Src: /src/opus/dnn/osce.c:1976,1
    - Dst: strcat
      Src: /src/opus/dnn/osce.c:1977,1
    - Dst: fopen
      Src: /src/opus/dnn/osce.c:1978,1
    - Dst: sprintf
      Src: /src/opus/dnn/osce.c:1981,1
    - Dst: perror
      Src: /src/opus/dnn/osce.c:1982,1
    - Dst: exit
      Src: /src/opus/dnn/osce.c:1983,1
    - Dst: printf
      Src: /src/opus/dnn/osce.c:1986,1
    - Dst: fread
      Src: /src/opus/dnn/osce.c:1988,1
    - Dst: printf
      Src: /src/opus/dnn/osce.c:1990,1
    - Dst: fread
      Src: /src/opus/dnn/osce.c:1991,1
    - Dst: fprintf
      Src: /src/opus/dnn/osce.c:1993,1
    - Dst: exit
      Src: /src/opus/dnn/osce.c:1994,1
    - Dst: fread
      Src: /src/opus/dnn/osce.c:1996,1
    - Dst: fprintf
      Src: /src/opus/dnn/osce.c:1998,1
    - Dst: exit
      Src: /src/opus/dnn/osce.c:1999,1
    - Dst: fread
      Src: /src/opus/dnn/osce.c:2001,1
    - Dst: fprintf
      Src: /src/opus/dnn/osce.c:2003,1
    - Dst: exit
      Src: /src/opus/dnn/osce.c:2004,1
    - Dst: nolace_process_20ms_frame
      Src: /src/opus/dnn/osce.c:2007,1
    - Dst: CLIP
      Src: /src/opus/dnn/osce.c:2019,1
    - Dst: round
      Src: /src/opus/dnn/osce.c:2020,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce.c:2023,1
    - Dst: printf
      Src: /src/opus/dnn/osce.c:2025,1
    - Dst: fclose
      Src: /src/opus/dnn/osce.c:2027,1
    - Dst: fclose
      Src: /src/opus/dnn/osce.c:2028,1
    - Dst: fclose
      Src: /src/opus/dnn/osce.c:2029,1
    - Dst: fclose
      Src: /src/opus/dnn/osce.c:2030,1
    - Dst: fclose
      Src: /src/opus/dnn/osce.c:2031,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 68
    argCount: 2
    argNames:
    - prefix
    - output
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2032
      start: 1914
    functionDepth: 4
    functionLinenumber: 1914
    functionLinenumberEnd: 2032
    functionName: nolace_demo
    functionSourceFile: /src/opus/dnn/osce.c
    functionUses: 0
    functionsReached:
    - exit
    - round
    - fclose
    - perror
    - strcat
    - sprintf
    - nolace_process_20ms_frame
    - init_nolace
    - CLIP
    - strcpy
    - fread
    - fprintf
    - fwrite
    - fopen
    - printf
    linkageType: ''
    returnType: void
    signature: "void nolace_demo(\n    char *prefix,\n    char *output\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lace_feature_net_compare
      Src: /src/opus/dnn/osce.c:2040,1
    - Dst: lace_demo
      Src: /src/opus/dnn/osce.c:2042,1
    - Dst: lace_demo
      Src: /src/opus/dnn/osce.c:2043,1
    - Dst: nolace_demo
      Src: /src/opus/dnn/osce.c:2045,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2047
      start: 2035
    functionDepth: 5
    functionLinenumber: 2035
    functionLinenumberEnd: 2047
    functionName: main
    functionSourceFile: /src/opus/dnn/osce.c
    functionUses: 0
    functionsReached:
    - lace_feature_net_compare
    - lace_demo
    - nolace_demo
    linkageType: ''
    returnType: int
    signature: int main()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vrshrq_n_s32
      Src: /src/opus/dnn/vec_neon.h:40,1
    - Dst: vcvtq_n_s32_f32
      Src: /src/opus/dnn/vec_neon.h:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - float32x4_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 41
    functionName: vcvtnq_s32_f32
    functionSourceFile: /src/opus/dnn/vec_neon.h
    functionUses: 0
    functionsReached:
    - vcvtq_n_s32_f32
    - vrshrq_n_s32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE vcvtnq_s32_f32(float32x4_t x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vcombine_s16
      Src: /src/opus/dnn/vec_neon.h:44,1
    - Dst: vpadd_s16
      Src: /src/opus/dnn/vec_neon.h:44,1
    - Dst: vget_low_s16
      Src: /src/opus/dnn/vec_neon.h:44,1
    - Dst: vget_high_s16
      Src: /src/opus/dnn/vec_neon.h:44,1
    - Dst: vpadd_s16
      Src: /src/opus/dnn/vec_neon.h:44,1
    - Dst: vget_low_s16
      Src: /src/opus/dnn/vec_neon.h:44,1
    - Dst: vget_high_s16
      Src: /src/opus/dnn/vec_neon.h:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - int16x8_t
    - int16x8_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionName: vpaddq_s16
    functionSourceFile: /src/opus/dnn/vec_neon.h
    functionUses: 0
    functionsReached:
    - vcombine_s16
    - vpadd_s16
    - vget_low_s16
    - vget_high_s16
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE vpaddq_s16(int16x8_t a, int16x8_t b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vmull_s8
      Src: /src/opus/dnn/vec_neon.h:48,1
    - Dst: vget_high_s8
      Src: /src/opus/dnn/vec_neon.h:48,1
    - Dst: vget_high_s8
      Src: /src/opus/dnn/vec_neon.h:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - int8x16_t
    - int8x16_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionName: vmull_high_s8
    functionSourceFile: /src/opus/dnn/vec_neon.h
    functionUses: 0
    functionsReached:
    - vget_high_s8
    - vmull_s8
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE vmull_high_s8(int8x16_t a, int8x16_t b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 56
    functionName: vmlaq_f32
    functionSourceFile: /src/opus/dnn/vec_neon.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: vmlaq_f32(a,b,c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vmaxq_f32
      Src: /src/opus/dnn/vec_neon.h:63,1
    - Dst: vminq_f32
      Src: /src/opus/dnn/vec_neon.h:63,1
    - Dst: vdupq_n_f32
      Src: /src/opus/dnn/vec_neon.h:63,1
    - Dst: vdupq_n_f32
      Src: /src/opus/dnn/vec_neon.h:63,1
    - Dst: vmlaq_f32
      Src: /src/opus/dnn/vec_neon.h:66,1
    - Dst: vdupq_n_f32
      Src: /src/opus/dnn/vec_neon.h:66,1
    - Dst: vdupq_n_f32
      Src: /src/opus/dnn/vec_neon.h:66,1
    - Dst: vcvtq_s32_f32
      Src: /src/opus/dnn/vec_neon.h:69,1
    - Dst: vcvtq_f32_s32
      Src: /src/opus/dnn/vec_neon.h:70,1
    - Dst: vsubq_f32
      Src: /src/opus/dnn/vec_neon.h:71,1
    - Dst: vdupq_n_f32
      Src: /src/opus/dnn/vec_neon.h:73,1
    - Dst: vdupq_n_f32
      Src: /src/opus/dnn/vec_neon.h:74,1
    - Dst: vdupq_n_f32
      Src: /src/opus/dnn/vec_neon.h:75,1
    - Dst: vdupq_n_f32
      Src: /src/opus/dnn/vec_neon.h:76,1
    - Dst: vmlaq_f32
      Src: /src/opus/dnn/vec_neon.h:77,1
    - Dst: vmlaq_f32
      Src: /src/opus/dnn/vec_neon.h:77,1
    - Dst: vmlaq_f32
      Src: /src/opus/dnn/vec_neon.h:77,1
    - Dst: vreinterpretq_f32_s32
      Src: /src/opus/dnn/vec_neon.h:80,1
    - Dst: vshlq_n_s32
      Src: /src/opus/dnn/vec_neon.h:80,1
    - Dst: vmulq_f32
      Src: /src/opus/dnn/vec_neon.h:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - x
    argTypes:
    - float32x4_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 84
    functionName: exp4_approx
    functionSourceFile: /src/opus/dnn/vec_neon.h
    functionUses: 0
    functionsReached:
    - vmulq_f32
    - vmlaq_f32
    - vmaxq_f32
    - vcvtq_s32_f32
    - vsubq_f32
    - vcvtq_f32_s32
    - vminq_f32
    - vdupq_n_f32
    - vreinterpretq_f32_s32
    - vshlq_n_s32
    linkageType: ''
    returnType: float32x4_t
    signature: float32x4_t exp4_approx(float32x4_t x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vdupq_n_f32
      Src: /src/opus/dnn/vec_neon.h:88,1
    - Dst: vdupq_n_f32
      Src: /src/opus/dnn/vec_neon.h:89,1
    - Dst: vdupq_n_f32
      Src: /src/opus/dnn/vec_neon.h:90,1
    - Dst: vdupq_n_f32
      Src: /src/opus/dnn/vec_neon.h:91,1
    - Dst: vdupq_n_f32
      Src: /src/opus/dnn/vec_neon.h:92,1
    - Dst: vdupq_n_f32
      Src: /src/opus/dnn/vec_neon.h:93,1
    - Dst: vdupq_n_f32
      Src: /src/opus/dnn/vec_neon.h:94,1
    - Dst: vdupq_n_f32
      Src: /src/opus/dnn/vec_neon.h:95,1
    - Dst: vmulq_f32
      Src: /src/opus/dnn/vec_neon.h:97,1
    - Dst: vmlaq_f32
      Src: /src/opus/dnn/vec_neon.h:98,1
    - Dst: vmlaq_f32
      Src: /src/opus/dnn/vec_neon.h:98,1
    - Dst: vmlaq_f32
      Src: /src/opus/dnn/vec_neon.h:99,1
    - Dst: vmlaq_f32
      Src: /src/opus/dnn/vec_neon.h:99,1
    - Dst: vmulq_f32
      Src: /src/opus/dnn/vec_neon.h:100,1
    - Dst: vrecpeq_f32
      Src: /src/opus/dnn/vec_neon.h:101,1
    - Dst: vmulq_f32
      Src: /src/opus/dnn/vec_neon.h:102,1
    - Dst: vmaxq_f32
      Src: /src/opus/dnn/vec_neon.h:103,1
    - Dst: vminq_f32
      Src: /src/opus/dnn/vec_neon.h:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - X
    argTypes:
    - float32x4_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 104
    functionName: tanh4_approx
    functionSourceFile: /src/opus/dnn/vec_neon.h
    functionUses: 0
    functionsReached:
    - vmulq_f32
    - vmaxq_f32
    - vmlaq_f32
    - vrecpeq_f32
    - vminq_f32
    - vdupq_n_f32
    linkageType: ''
    returnType: float32x4_t
    signature: float32x4_t tanh4_approx(float32x4_t X)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vdupq_n_f32
      Src: /src/opus/dnn/vec_neon.h:108,1
    - Dst: vdupq_n_f32
      Src: /src/opus/dnn/vec_neon.h:109,1
    - Dst: vdupq_n_f32
      Src: /src/opus/dnn/vec_neon.h:110,1
    - Dst: vdupq_n_f32
      Src: /src/opus/dnn/vec_neon.h:111,1
    - Dst: vdupq_n_f32
      Src: /src/opus/dnn/vec_neon.h:112,1
    - Dst: vdupq_n_f32
      Src: /src/opus/dnn/vec_neon.h:113,1
    - Dst: vdupq_n_f32
      Src: /src/opus/dnn/vec_neon.h:114,1
    - Dst: vdupq_n_f32
      Src: /src/opus/dnn/vec_neon.h:115,1
    - Dst: vdupq_n_f32
      Src: /src/opus/dnn/vec_neon.h:116,1
    - Dst: vmulq_f32
      Src: /src/opus/dnn/vec_neon.h:118,1
    - Dst: vmlaq_f32
      Src: /src/opus/dnn/vec_neon.h:119,1
    - Dst: vmlaq_f32
      Src: /src/opus/dnn/vec_neon.h:119,1
    - Dst: vmlaq_f32
      Src: /src/opus/dnn/vec_neon.h:120,1
    - Dst: vmlaq_f32
      Src: /src/opus/dnn/vec_neon.h:120,1
    - Dst: vmulq_f32
      Src: /src/opus/dnn/vec_neon.h:121,1
    - Dst: vrecpeq_f32
      Src: /src/opus/dnn/vec_neon.h:122,1
    - Dst: vmlaq_f32
      Src: /src/opus/dnn/vec_neon.h:123,1
    - Dst: vmaxq_f32
      Src: /src/opus/dnn/vec_neon.h:124,1
    - Dst: vminq_f32
      Src: /src/opus/dnn/vec_neon.h:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - X
    argTypes:
    - float32x4_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 125
    functionName: sigmoid4_approx
    functionSourceFile: /src/opus/dnn/vec_neon.h
    functionUses: 0
    functionsReached:
    - vmulq_f32
    - vmaxq_f32
    - vmlaq_f32
    - vrecpeq_f32
    - vminq_f32
    - vdupq_n_f32
    linkageType: ''
    returnType: float32x4_t
    signature: float32x4_t sigmoid4_approx(float32x4_t X)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vdupq_n_f32
      Src: /src/opus/dnn/vec_neon.h:131,1
    - Dst: exp4_approx
      Src: /src/opus/dnn/vec_neon.h:132,1
    - Dst: vst1q_f32
      Src: /src/opus/dnn/vec_neon.h:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 135
    functionName: lpcnet_exp
    functionSourceFile: /src/opus/dnn/vec_neon.h
    functionUses: 0
    functionsReached:
    - vst1q_f32
    - vdupq_n_f32
    - exp4_approx
    linkageType: ''
    returnType: float
    signature: float lpcnet_exp(float x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vdupq_n_f32
      Src: /src/opus/dnn/vec_neon.h:141,1
    - Dst: tanh4_approx
      Src: /src/opus/dnn/vec_neon.h:142,1
    - Dst: vst1q_f32
      Src: /src/opus/dnn/vec_neon.h:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 145
    functionName: tanh_approx
    functionSourceFile: /src/opus/dnn/vec_neon.h
    functionUses: 0
    functionsReached:
    - tanh4_approx
    - vdupq_n_f32
    - vst1q_f32
    linkageType: ''
    returnType: float
    signature: float tanh_approx(float x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vdupq_n_f32
      Src: /src/opus/dnn/vec_neon.h:151,1
    - Dst: sigmoid4_approx
      Src: /src/opus/dnn/vec_neon.h:152,1
    - Dst: vst1q_f32
      Src: /src/opus/dnn/vec_neon.h:153,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 155
    functionName: sigmoid_approx
    functionSourceFile: /src/opus/dnn/vec_neon.h
    functionUses: 2
    functionsReached:
    - vst1q_f32
    - vdupq_n_f32
    - sigmoid4_approx
    linkageType: ''
    returnType: float
    signature: float sigmoid_approx(float x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vld1q_f32
      Src: /src/opus/dnn/vec_neon.h:163,1
    - Dst: exp4_approx
      Src: /src/opus/dnn/vec_neon.h:164,1
    - Dst: vst1q_f32
      Src: /src/opus/dnn/vec_neon.h:165,1
    - Dst: lpcnet_exp
      Src: /src/opus/dnn/vec_neon.h:168,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - y
    - x
    - N
    argTypes:
    - float*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 169
    functionName: softmax
    functionSourceFile: /src/opus/dnn/vec_neon.h
    functionUses: 0
    functionsReached:
    - vst1q_f32
    - lpcnet_exp
    - vld1q_f32
    - exp4_approx
    linkageType: ''
    returnType: void
    signature: void softmax(float *y, const float *x, int N)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vld1q_f32
      Src: /src/opus/dnn/vec_neon.h:177,1
    - Dst: tanh4_approx
      Src: /src/opus/dnn/vec_neon.h:178,1
    - Dst: vst1q_f32
      Src: /src/opus/dnn/vec_neon.h:179,1
    - Dst: lpcnet_exp
      Src: /src/opus/dnn/vec_neon.h:184,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - y
    - x
    - N
    argTypes:
    - float*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 187
    functionName: vec_tanh
    functionSourceFile: /src/opus/dnn/vec_neon.h
    functionUses: 0
    functionsReached:
    - tanh4_approx
    - vst1q_f32
    - lpcnet_exp
    - vld1q_f32
    linkageType: ''
    returnType: void
    signature: void vec_tanh(float *y, const float *x, int N)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vld1q_f32
      Src: /src/opus/dnn/vec_neon.h:195,1
    - Dst: sigmoid4_approx
      Src: /src/opus/dnn/vec_neon.h:196,1
    - Dst: vst1q_f32
      Src: /src/opus/dnn/vec_neon.h:197,1
    - Dst: lpcnet_exp
      Src: /src/opus/dnn/vec_neon.h:202,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - y
    - x
    - N
    argTypes:
    - float*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 205
    functionName: vec_sigmoid
    functionSourceFile: /src/opus/dnn/vec_neon.h
    functionUses: 0
    functionsReached:
    - vst1q_f32
    - sigmoid4_approx
    - lpcnet_exp
    - vld1q_f32
    linkageType: ''
    returnType: void
    signature: void vec_sigmoid(float *y, const float *x, int N)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vdupq_n_f32
      Src: /src/opus/dnn/vec_neon.h:217,1
    - Dst: vdupq_n_f32
      Src: /src/opus/dnn/vec_neon.h:218,1
    - Dst: vdupq_n_f32
      Src: /src/opus/dnn/vec_neon.h:219,1
    - Dst: vdupq_n_f32
      Src: /src/opus/dnn/vec_neon.h:220,1
    - Dst: vld1q_f32
      Src: /src/opus/dnn/vec_neon.h:229,1
    - Dst: vld1q_f32
      Src: /src/opus/dnn/vec_neon.h:230,1
    - Dst: vld1q_f32
      Src: /src/opus/dnn/vec_neon.h:231,1
    - Dst: vld1q_f32
      Src: /src/opus/dnn/vec_neon.h:232,1
    - Dst: vld1q_dup_f32
      Src: /src/opus/dnn/vec_neon.h:234,1
    - Dst: vmlaq_f32
      Src: /src/opus/dnn/vec_neon.h:236,1
    - Dst: vmlaq_f32
      Src: /src/opus/dnn/vec_neon.h:237,1
    - Dst: vmlaq_f32
      Src: /src/opus/dnn/vec_neon.h:238,1
    - Dst: vmlaq_f32
      Src: /src/opus/dnn/vec_neon.h:239,1
    - Dst: vst1q_f32
      Src: /src/opus/dnn/vec_neon.h:244,1
    - Dst: vst1q_f32
      Src: /src/opus/dnn/vec_neon.h:245,1
    - Dst: vst1q_f32
      Src: /src/opus/dnn/vec_neon.h:246,1
    - Dst: vst1q_f32
      Src: /src/opus/dnn/vec_neon.h:247,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 6
    argNames:
    - out
    - weights
    - rows
    - cols
    - col_stride
    - x
    argTypes:
    - float*
    - float*
    - int
    - int
    - int
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 250
    functionName: sgemv16x1
    functionSourceFile: /src/opus/dnn/vec_neon.h
    functionUses: 0
    functionsReached:
    - vmlaq_f32
    - vld1q_dup_f32
    - vld1q_f32
    - vdupq_n_f32
    - vst1q_f32
    linkageType: ''
    returnType: void
    signature: void sgemv16x1(float *out, const float *weights, int rows, int cols,
      int col_stride, const float *x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vdupq_n_f32
      Src: /src/opus/dnn/vec_neon.h:261,1
    - Dst: vdupq_n_f32
      Src: /src/opus/dnn/vec_neon.h:262,1
    - Dst: vld1q_f32
      Src: /src/opus/dnn/vec_neon.h:271,1
    - Dst: vld1q_f32
      Src: /src/opus/dnn/vec_neon.h:272,1
    - Dst: vld1q_dup_f32
      Src: /src/opus/dnn/vec_neon.h:274,1
    - Dst: vmlaq_f32
      Src: /src/opus/dnn/vec_neon.h:276,1
    - Dst: vmlaq_f32
      Src: /src/opus/dnn/vec_neon.h:277,1
    - Dst: vst1q_f32
      Src: /src/opus/dnn/vec_neon.h:282,1
    - Dst: vst1q_f32
      Src: /src/opus/dnn/vec_neon.h:283,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 6
    argNames:
    - out
    - weights
    - rows
    - cols
    - col_stride
    - x
    argTypes:
    - float*
    - float*
    - int
    - int
    - int
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 252
    functionDepth: 0
    functionLinenumber: 252
    functionLinenumberEnd: 285
    functionName: sgemv8x1
    functionSourceFile: /src/opus/dnn/vec_neon.h
    functionUses: 0
    functionsReached:
    - vmlaq_f32
    - vld1q_dup_f32
    - vld1q_f32
    - vdupq_n_f32
    - vst1q_f32
    linkageType: ''
    returnType: void
    signature: void sgemv8x1(float *out, const float *weights, int rows, int cols,
      int col_stride, const float *x)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: sgemv16x1
      Src: /src/opus/dnn/vec_neon.h:289,1
    - Dst: sgemv8x1
      Src: /src/opus/dnn/vec_neon.h:290,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 6
    argNames:
    - out
    - weights
    - rows
    - cols
    - col_stride
    - x
    argTypes:
    - float*
    - float*
    - int
    - int
    - int
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 287
    functionDepth: 0
    functionLinenumber: 287
    functionLinenumberEnd: 299
    functionName: sgemv
    functionSourceFile: /src/opus/dnn/vec_neon.h
    functionUses: 0
    functionsReached:
    - sgemv16x1
    - sgemv8x1
    linkageType: ''
    returnType: void
    signature: void sgemv(float *out, const float *weights, int rows, int cols, int
      col_stride, const float *x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/vec_neon.h:305,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 46
    argCount: 5
    argNames:
    - out
    - w
    - idx
    - rows
    - x
    argTypes:
    - float*
    - float*
    - int*
    - int
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 302
    functionDepth: 1
    functionLinenumber: 302
    functionLinenumberEnd: 359
    functionName: sparse_sgemv8x4
    functionSourceFile: /src/opus/dnn/vec_neon.h
    functionUses: 0
    functionsReached:
    - OPUS_CLEAR
    linkageType: ''
    returnType: void
    signature: void sparse_sgemv8x4(float *out, const float *w, const int *idx, int
      rows, const float *x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vdotq_s32
      Src: /src/opus/dnn/vec_neon.h:370,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - acc
    - a
    - b
    argTypes:
    - int32x4_t
    - int8x16_t
    - int8x16_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 369
    functionDepth: 0
    functionLinenumber: 369
    functionLinenumberEnd: 371
    functionName: vdotprod
    functionSourceFile: /src/opus/dnn/vec_neon.h
    functionUses: 0
    functionsReached:
    - vdotq_s32
    linkageType: ''
    returnType: int32x4_t
    signature: int32x4_t vdotprod(int32x4_t acc, int8x16_t a, int8x16_t b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vpadalq_s16
      Src: /src/opus/dnn/vec_neon.h:375,1
    - Dst: vpaddq_s16
      Src: /src/opus/dnn/vec_neon.h:375,1
    - Dst: vmull_s8
      Src: /src/opus/dnn/vec_neon.h:375,1
    - Dst: vget_low_s8
      Src: /src/opus/dnn/vec_neon.h:375,1
    - Dst: vget_low_s8
      Src: /src/opus/dnn/vec_neon.h:375,1
    - Dst: vmull_high_s8
      Src: /src/opus/dnn/vec_neon.h:375,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - acc
    - a
    - b
    argTypes:
    - int32x4_t
    - int8x16_t
    - int8x16_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 373
    functionDepth: 1
    functionLinenumber: 373
    functionLinenumberEnd: 376
    functionName: vdotprod
    functionSourceFile: /src/opus/dnn/vec_neon.h
    functionUses: 0
    functionsReached:
    - vget_low_s8
    - vpaddq_s16
    - vmull_s8
    - vmull_high_s8
    - vpadalq_s16
    linkageType: ''
    returnType: int32x4_t
    signature: int32x4_t vdotprod(int32x4_t acc, int8x16_t a, int8x16_t b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vdupq_n_f32
      Src: /src/opus/dnn/vec_neon.h:384,1
    - Dst: vcvtnq_s32_f32
      Src: /src/opus/dnn/vec_neon.h:388,1
    - Dst: vmulq_f32
      Src: /src/opus/dnn/vec_neon.h:388,1
    - Dst: vld1q_f32
      Src: /src/opus/dnn/vec_neon.h:388,1
    - Dst: vcvtnq_s32_f32
      Src: /src/opus/dnn/vec_neon.h:389,1
    - Dst: vmulq_f32
      Src: /src/opus/dnn/vec_neon.h:389,1
    - Dst: vld1q_f32
      Src: /src/opus/dnn/vec_neon.h:389,1
    - Dst: vcombine_s16
      Src: /src/opus/dnn/vec_neon.h:390,1
    - Dst: vmovn_s32
      Src: /src/opus/dnn/vec_neon.h:390,1
    - Dst: vmovn_s32
      Src: /src/opus/dnn/vec_neon.h:390,1
    - Dst: vst1_s8
      Src: /src/opus/dnn/vec_neon.h:391,1
    - Dst: vmovn_s16
      Src: /src/opus/dnn/vec_neon.h:391,1
    - Dst: vdupq_n_s32
      Src: /src/opus/dnn/vec_neon.h:397,1
    - Dst: vdupq_n_s32
      Src: /src/opus/dnn/vec_neon.h:398,1
    - Dst: vdupq_n_s32
      Src: /src/opus/dnn/vec_neon.h:399,1
    - Dst: vdupq_n_s32
      Src: /src/opus/dnn/vec_neon.h:400,1
    - Dst: vreinterpretq_s8_s32
      Src: /src/opus/dnn/vec_neon.h:405,1
    - Dst: vld1q_dup_s32
      Src: /src/opus/dnn/vec_neon.h:405,1
    - Dst: vld1q_s8
      Src: /src/opus/dnn/vec_neon.h:406,1
    - Dst: vld1q_s8
      Src: /src/opus/dnn/vec_neon.h:407,1
    - Dst: vdotprod
      Src: /src/opus/dnn/vec_neon.h:408,1
    - Dst: vdotprod
      Src: /src/opus/dnn/vec_neon.h:409,1
    - Dst: vreinterpretq_s8_s32
      Src: /src/opus/dnn/vec_neon.h:410,1
    - Dst: vld1q_dup_s32
      Src: /src/opus/dnn/vec_neon.h:410,1
    - Dst: vld1q_s8
      Src: /src/opus/dnn/vec_neon.h:411,1
    - Dst: vld1q_s8
      Src: /src/opus/dnn/vec_neon.h:412,1
    - Dst: vdotprod
      Src: /src/opus/dnn/vec_neon.h:413,1
    - Dst: vdotprod
      Src: /src/opus/dnn/vec_neon.h:414,1
    - Dst: vaddq_s32
      Src: /src/opus/dnn/vec_neon.h:417,1
    - Dst: vaddq_s32
      Src: /src/opus/dnn/vec_neon.h:418,1
    - Dst: vreinterpretq_s8_s32
      Src: /src/opus/dnn/vec_neon.h:422,1
    - Dst: vld1q_dup_s32
      Src: /src/opus/dnn/vec_neon.h:422,1
    - Dst: vld1q_s8
      Src: /src/opus/dnn/vec_neon.h:423,1
    - Dst: vld1q_s8
      Src: /src/opus/dnn/vec_neon.h:424,1
    - Dst: vdotprod
      Src: /src/opus/dnn/vec_neon.h:425,1
    - Dst: vdotprod
      Src: /src/opus/dnn/vec_neon.h:426,1
    - Dst: vst1q_f32
      Src: /src/opus/dnn/vec_neon.h:429,1
    - Dst: vmulq_f32
      Src: /src/opus/dnn/vec_neon.h:429,1
    - Dst: vld1q_f32
      Src: /src/opus/dnn/vec_neon.h:429,1
    - Dst: vcvtq_f32_s32
      Src: /src/opus/dnn/vec_neon.h:429,1
    - Dst: vst1q_f32
      Src: /src/opus/dnn/vec_neon.h:430,1
    - Dst: vmulq_f32
      Src: /src/opus/dnn/vec_neon.h:430,1
    - Dst: vld1q_f32
      Src: /src/opus/dnn/vec_neon.h:430,1
    - Dst: vcvtq_f32_s32
      Src: /src/opus/dnn/vec_neon.h:430,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 39
    argCount: 6
    argNames:
    - _out
    - w
    - scale
    - rows
    - cols
    - _x
    argTypes:
    - float*
    - opus_int8*
    - float*
    - int
    - int
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 432
      start: 379
    functionDepth: 1
    functionLinenumber: 379
    functionLinenumberEnd: 432
    functionName: cgemv8x4
    functionSourceFile: /src/opus/dnn/vec_neon.h
    functionUses: 0
    functionsReached:
    - vmulq_f32
    - vst1_s8
    - vdotprod
    - vcvtq_f32_s32
    - vld1q_f32
    - vcombine_s16
    - vreinterpretq_s8_s32
    - vld1q_s8
    - vdupq_n_f32
    - vaddq_s32
    - vst1q_f32
    - vmovn_s16
    - vld1q_dup_s32
    - vdupq_n_s32
    - vcvtnq_s32_f32
    - vmovn_s32
    linkageType: ''
    returnType: void
    signature: void cgemv8x4(float *_out, const opus_int8 *w, const float *scale,
      int rows, int cols, const float *_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vdupq_n_f32
      Src: /src/opus/dnn/vec_neon.h:439,1
    - Dst: vcvtnq_s32_f32
      Src: /src/opus/dnn/vec_neon.h:443,1
    - Dst: vmulq_f32
      Src: /src/opus/dnn/vec_neon.h:443,1
    - Dst: vld1q_f32
      Src: /src/opus/dnn/vec_neon.h:443,1
    - Dst: vcvtnq_s32_f32
      Src: /src/opus/dnn/vec_neon.h:444,1
    - Dst: vmulq_f32
      Src: /src/opus/dnn/vec_neon.h:444,1
    - Dst: vld1q_f32
      Src: /src/opus/dnn/vec_neon.h:444,1
    - Dst: vcombine_s16
      Src: /src/opus/dnn/vec_neon.h:445,1
    - Dst: vmovn_s32
      Src: /src/opus/dnn/vec_neon.h:445,1
    - Dst: vmovn_s32
      Src: /src/opus/dnn/vec_neon.h:445,1
    - Dst: vst1_s8
      Src: /src/opus/dnn/vec_neon.h:446,1
    - Dst: vmovn_s16
      Src: /src/opus/dnn/vec_neon.h:446,1
    - Dst: vdupq_n_s32
      Src: /src/opus/dnn/vec_neon.h:452,1
    - Dst: vdupq_n_s32
      Src: /src/opus/dnn/vec_neon.h:453,1
    - Dst: vreinterpretq_s8_s32
      Src: /src/opus/dnn/vec_neon.h:460,1
    - Dst: vld1q_dup_s32
      Src: /src/opus/dnn/vec_neon.h:460,1
    - Dst: vld1q_s8
      Src: /src/opus/dnn/vec_neon.h:461,1
    - Dst: vld1q_s8
      Src: /src/opus/dnn/vec_neon.h:462,1
    - Dst: vdotprod
      Src: /src/opus/dnn/vec_neon.h:463,1
    - Dst: vdotprod
      Src: /src/opus/dnn/vec_neon.h:464,1
    - Dst: vst1q_f32
      Src: /src/opus/dnn/vec_neon.h:467,1
    - Dst: vmulq_f32
      Src: /src/opus/dnn/vec_neon.h:467,1
    - Dst: vld1q_f32
      Src: /src/opus/dnn/vec_neon.h:467,1
    - Dst: vcvtq_f32_s32
      Src: /src/opus/dnn/vec_neon.h:467,1
    - Dst: vst1q_f32
      Src: /src/opus/dnn/vec_neon.h:468,1
    - Dst: vmulq_f32
      Src: /src/opus/dnn/vec_neon.h:468,1
    - Dst: vld1q_f32
      Src: /src/opus/dnn/vec_neon.h:468,1
    - Dst: vcvtq_f32_s32
      Src: /src/opus/dnn/vec_neon.h:468,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 7
    argNames:
    - _out
    - w
    - idx
    - scale
    - rows
    - cols
    - _x
    argTypes:
    - float*
    - opus_int8*
    - int*
    - float*
    - int
    - int
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 470
      start: 434
    functionDepth: 1
    functionLinenumber: 434
    functionLinenumberEnd: 470
    functionName: sparse_cgemv8x4
    functionSourceFile: /src/opus/dnn/vec_neon.h
    functionUses: 0
    functionsReached:
    - vmulq_f32
    - vst1_s8
    - vdotprod
    - vcvtq_f32_s32
    - vld1q_f32
    - vcombine_s16
    - vreinterpretq_s8_s32
    - vld1q_s8
    - vdupq_n_f32
    - vst1q_f32
    - vmovn_s16
    - vld1q_dup_s32
    - vdupq_n_s32
    - vcvtnq_s32_f32
    - vmovn_s32
    linkageType: ''
    returnType: void
    signature: void sparse_cgemv8x4(float *_out, const opus_int8 *w, const int *idx,
      const float *scale, int rows, int cols, const float *_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - i_out_channels
    - ','
    - i_in_channels
    - ','
    - i_kernel
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 47
    functionName: KERNEL_INDEX
    functionSourceFile: /src/opus/dnn/nndsp.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: KERNEL_INDEX(i_out_channels, i_in_channels, i_kernel)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/nndsp.c:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - hAdaConv
    argTypes:
    - AdaConvState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionName: init_adaconv_state
    functionSourceFile: /src/opus/dnn/nndsp.c
    functionUses: 3
    functionsReached:
    - OPUS_CLEAR
    linkageType: ''
    returnType: void
    signature: void init_adaconv_state(AdaConvState *hAdaConv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/nndsp.c:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - hAdaComb
    argTypes:
    - AdaCombState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionName: init_adacomb_state
    functionSourceFile: /src/opus/dnn/nndsp.c
    functionUses: 2
    functionsReached:
    - OPUS_CLEAR
    linkageType: ''
    returnType: void
    signature: void init_adacomb_state(AdaCombState *hAdaComb)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/nndsp.c:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - hAdaShape
    argTypes:
    - AdaShapeState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 61
    functionName: init_adashape_state
    functionSourceFile: /src/opus/dnn/nndsp.c
    functionUses: 2
    functionsReached:
    - OPUS_CLEAR
    linkageType: ''
    returnType: void
    signature: void init_adashape_state(AdaShapeState *hAdaShape)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cos
      Src: /src/opus/dnn/nndsp.c:68,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - window
    - overlap_size
    argTypes:
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 70
    functionName: compute_overlap_window
    functionSourceFile: /src/opus/dnn/nndsp.c
    functionUses: 3
    functionsReached:
    - cos
    linkageType: ''
    returnType: void
    signature: void compute_overlap_window(float *window, int overlap_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/opus/dnn/nndsp.c:77,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - name
    - vec
    - length
    argTypes:
    - char*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 79
    functionName: print_float_vector
    functionSourceFile: /src/opus/dnn/nndsp.c
    functionUses: 0
    functionsReached:
    - printf
    linkageType: ''
    returnType: void
    signature: void print_float_vector(const char* name, const float *vec, int length)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: KERNEL_INDEX
      Src: /src/opus/dnn/nndsp.c:101,1
    - Dst: KERNEL_INDEX
      Src: /src/opus/dnn/nndsp.c:101,1
    - Dst: printf
      Src: /src/opus/dnn/nndsp.c:105,1
    - Dst: sqrt
      Src: /src/opus/dnn/nndsp.c:105,1
    - Dst: sqrt
      Src: /src/opus/dnn/nndsp.c:107,1
    - Dst: KERNEL_INDEX
      Src: /src/opus/dnn/nndsp.c:113,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 5
    argNames:
    - kernel
    - in_channels
    - out_channels
    - kernel_size
    - gain
    argTypes:
    - float*
    - int
    - int
    - int
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 117
    functionName: scale_kernel
    functionSourceFile: /src/opus/dnn/nndsp.c
    functionUses: 0
    functionsReached:
    - KERNEL_INDEX
    - sqrt
    - printf
    linkageType: ''
    returnType: void
    signature: "void scale_kernel(\n    float *kernel,\n    int in_channels,\n    int
      out_channels,\n    int kernel_size,\n    float *gain\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: exp
      Src: /src/opus/dnn/nndsp.c:129,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - gains
    - num_gains
    - filter_gain_a
    - filter_gain_b
    argTypes:
    - float*
    - int
    - float
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 131
    functionName: transform_gains
    functionSourceFile: /src/opus/dnn/nndsp.c
    functionUses: 0
    functionsReached:
    - exp
    linkageType: ''
    returnType: void
    signature: "void transform_gains(\n    float *gains,\n    int num_gains,\n    float
      filter_gain_a,\n    float filter_gain_b\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/dnn/nndsp.c:167,1
    - Dst: celt_assert
      Src: /src/opus/dnn/nndsp.c:168,1
    - Dst: celt_assert
      Src: /src/opus/dnn/nndsp.c:169,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/nndsp.c:171,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/nndsp.c:172,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/nndsp.c:173,1
    - Dst: print_float_vector
      Src: /src/opus/dnn/nndsp.c:176,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/nndsp.c:182,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/nndsp.c:183,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/nndsp.c:189,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/nndsp.c:190,1
    - Dst: print_float_vector
      Src: /src/opus/dnn/nndsp.c:192,1
    - Dst: print_float_vector
      Src: /src/opus/dnn/nndsp.c:193,1
    - Dst: print_float_vector
      Src: /src/opus/dnn/nndsp.c:194,1
    - Dst: transform_gains
      Src: /src/opus/dnn/nndsp.c:196,1
    - Dst: scale_kernel
      Src: /src/opus/dnn/nndsp.c:197,1
    - Dst: print_float_vector
      Src: /src/opus/dnn/nndsp.c:200,1
    - Dst: print_float_vector
      Src: /src/opus/dnn/nndsp.c:201,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/nndsp.c:210,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/nndsp.c:211,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/nndsp.c:213,1
    - Dst: KERNEL_INDEX
      Src: /src/opus/dnn/nndsp.c:213,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/nndsp.c:214,1
    - Dst: KERNEL_INDEX
      Src: /src/opus/dnn/nndsp.c:214,1
    - Dst: celt_pitch_xcorr
      Src: /src/opus/dnn/nndsp.c:215,1
    - Dst: celt_pitch_xcorr
      Src: /src/opus/dnn/nndsp.c:216,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/nndsp.c:229,1
    - Dst: print_float_vector
      Src: /src/opus/dnn/nndsp.c:232,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/nndsp.c:238,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/nndsp.c:240,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 46
    argCount: 18
    argNames:
    - hAdaConv
    - x_out
    - x_in
    - features
    - kernel_layer
    - gain_layer
    - feature_dim
    - frame_size
    - overlap_size
    - in_channels
    - out_channels
    - kernel_size
    - left_padding
    - filter_gain_a
    - filter_gain_b
    - shape_gain
    - window
    - arch
    argTypes:
    - AdaConvState*
    - float*
    - float*
    - float*
    - LinearLayer*
    - LinearLayer*
    - int
    - int
    - int
    - int
    - int
    - int
    - int
    - float
    - float
    - float
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 133
    functionDepth: 2
    functionLinenumber: 133
    functionLinenumberEnd: 241
    functionName: adaconv_process_frame
    functionSourceFile: /src/opus/dnn/nndsp.c
    functionUses: 3
    functionsReached:
    - celt_assert
    - OPUS_CLEAR
    - print_float_vector
    - OPUS_COPY
    - scale_kernel
    - celt_pitch_xcorr
    - KERNEL_INDEX
    - transform_gains
    - compute_generic_dense
    linkageType: ''
    returnType: void
    signature: "void adaconv_process_frame(\n    AdaConvState* hAdaConv,\n    float
      *x_out,\n    const float *x_in,\n    const float *features,\n    const LinearLayer
      *kernel_layer,\n    const LinearLayer *gain_layer,\n    int feature_dim,\n    int
      frame_size,\n    int overlap_size,\n    int in_channels,\n    int out_channels,\n
      \   int kernel_size,\n    int left_padding,\n    float filter_gain_a,\n    float
      filter_gain_b,\n    float shape_gain,\n    float *window,\n    int arch\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/nndsp.c:276,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/nndsp.c:277,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/nndsp.c:278,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/nndsp.c:280,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/nndsp.c:281,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/nndsp.c:285,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/nndsp.c:286,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/nndsp.c:287,1
    - Dst: print_float_vector
      Src: /src/opus/dnn/nndsp.c:289,1
    - Dst: print_float_vector
      Src: /src/opus/dnn/nndsp.c:290,1
    - Dst: print_float_vector
      Src: /src/opus/dnn/nndsp.c:291,1
    - Dst: print_float_vector
      Src: /src/opus/dnn/nndsp.c:292,1
    - Dst: exp
      Src: /src/opus/dnn/nndsp.c:294,1
    - Dst: exp
      Src: /src/opus/dnn/nndsp.c:295,1
    - Dst: scale_kernel
      Src: /src/opus/dnn/nndsp.c:296,1
    - Dst: print_float_vector
      Src: /src/opus/dnn/nndsp.c:299,1
    - Dst: print_float_vector
      Src: /src/opus/dnn/nndsp.c:300,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/nndsp.c:303,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/nndsp.c:304,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/nndsp.c:305,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/nndsp.c:306,1
    - Dst: celt_pitch_xcorr
      Src: /src/opus/dnn/nndsp.c:308,1
    - Dst: celt_pitch_xcorr
      Src: /src/opus/dnn/nndsp.c:310,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/nndsp.c:325,1
    - Dst: print_float_vector
      Src: /src/opus/dnn/nndsp.c:328,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/nndsp.c:332,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/nndsp.c:333,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 41
    argCount: 18
    argNames:
    - hAdaComb
    - x_out
    - x_in
    - features
    - kernel_layer
    - gain_layer
    - global_gain_layer
    - pitch_lag
    - feature_dim
    - frame_size
    - overlap_size
    - kernel_size
    - left_padding
    - filter_gain_a
    - filter_gain_b
    - log_gain_limit
    - window
    - arch
    argTypes:
    - AdaCombState*
    - float*
    - float*
    - float*
    - LinearLayer*
    - LinearLayer*
    - LinearLayer*
    - int
    - int
    - int
    - int
    - int
    - int
    - float
    - float
    - float
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 243
    functionDepth: 2
    functionLinenumber: 243
    functionLinenumberEnd: 336
    functionName: adacomb_process_frame
    functionSourceFile: /src/opus/dnn/nndsp.c
    functionUses: 2
    functionsReached:
    - OPUS_CLEAR
    - print_float_vector
    - OPUS_COPY
    - scale_kernel
    - exp
    - celt_pitch_xcorr
    - compute_generic_dense
    linkageType: ''
    returnType: void
    signature: "void adacomb_process_frame(\n    AdaCombState* hAdaComb,\n    float
      *x_out,\n    const float *x_in,\n    const float *features,\n    const LinearLayer
      *kernel_layer,\n    const LinearLayer *gain_layer,\n    const LinearLayer *global_gain_layer,\n
      \   int pitch_lag,\n    int feature_dim,\n    int frame_size,\n    int overlap_size,\n
      \   int kernel_size,\n    int left_padding,\n    float filter_gain_a,\n    float
      filter_gain_b,\n    float log_gain_limit,\n    float *window,\n    int arch\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/dnn/nndsp.c:364,1
    - Dst: celt_assert
      Src: /src/opus/dnn/nndsp.c:365,1
    - Dst: celt_assert
      Src: /src/opus/dnn/nndsp.c:366,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/nndsp.c:370,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/nndsp.c:372,1
    - Dst: fabs
      Src: /src/opus/dnn/nndsp.c:380,1
    - Dst: celt_log
      Src: /src/opus/dnn/nndsp.c:382,1
    - Dst: print_float_vector
      Src: /src/opus/dnn/nndsp.c:392,1
    - Dst: print_float_vector
      Src: /src/opus/dnn/nndsp.c:397,1
    - Dst: compute_generic_conv1d
      Src: /src/opus/dnn/nndsp.c:399,1
    - Dst: compute_generic_conv1d
      Src: /src/opus/dnn/nndsp.c:400,1
    - Dst: print_float_vector
      Src: /src/opus/dnn/nndsp.c:402,1
    - Dst: print_float_vector
      Src: /src/opus/dnn/nndsp.c:411,1
    - Dst: compute_generic_conv1d
      Src: /src/opus/dnn/nndsp.c:413,1
    - Dst: print_float_vector
      Src: /src/opus/dnn/nndsp.c:416,1
    - Dst: print_float_vector
      Src: /src/opus/dnn/nndsp.c:431,1
    - Dst: compute_activation
      Src: /src/opus/dnn/nndsp.c:434,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 43
    argCount: 12
    argNames:
    - hAdaShape
    - x_out
    - x_in
    - features
    - alpha1f
    - alpha1t
    - alpha2
    - feature_dim
    - frame_size
    - avg_pool_k
    - interpolate_k
    - arch
    argTypes:
    - AdaShapeState*
    - float*
    - float*
    - float*
    - LinearLayer*
    - LinearLayer*
    - LinearLayer*
    - int
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 441
      start: 339
    functionDepth: 1
    functionLinenumber: 339
    functionLinenumberEnd: 441
    functionName: adashape_process_frame
    functionSourceFile: /src/opus/dnn/nndsp.c
    functionUses: 2
    functionsReached:
    - celt_assert
    - OPUS_CLEAR
    - print_float_vector
    - compute_activation
    - celt_log
    - OPUS_COPY
    - fabs
    - compute_generic_conv1d
    linkageType: ''
    returnType: void
    signature: "void adashape_process_frame(\n    AdaShapeState *hAdaShape,\n    float
      *x_out,\n    const float *x_in,\n    const float *features,\n    const LinearLayer
      *alpha1f,\n    const LinearLayer *alpha1t,\n    const LinearLayer *alpha2,\n
      \   int feature_dim,\n    int frame_size,\n    int avg_pool_k,\n    int interpolate_k,\n
      \   int arch\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/vec.h:53,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 25
    argCount: 6
    argNames:
    - out
    - weights
    - rows
    - cols
    - col_stride
    - x
    argTypes:
    - float*
    - float*
    - int
    - int
    - int
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 82
    functionName: sgemv16x1
    functionSourceFile: /src/opus/dnn/vec.h
    functionUses: 1
    functionsReached:
    - OPUS_CLEAR
    linkageType: ''
    returnType: void
    signature: void sgemv16x1(float *out, const float *weights, int rows, int cols,
      int col_stride, const float *x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/vec.h:87,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 6
    argNames:
    - out
    - weights
    - rows
    - cols
    - col_stride
    - x
    argTypes:
    - float*
    - float*
    - int
    - int
    - int
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 108
    functionName: sgemv8x1
    functionSourceFile: /src/opus/dnn/vec.h
    functionUses: 1
    functionsReached:
    - OPUS_CLEAR
    linkageType: ''
    returnType: void
    signature: void sgemv8x1(float *out, const float *weights, int rows, int cols,
      int col_stride, const float *x)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: sgemv16x1
      Src: /src/opus/dnn/vec.h:112,1
    - Dst: sgemv8x1
      Src: /src/opus/dnn/vec.h:113,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 6
    argNames:
    - out
    - weights
    - rows
    - cols
    - col_stride
    - x
    argTypes:
    - float*
    - float*
    - int
    - int
    - int
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 122
    functionName: sgemv
    functionSourceFile: /src/opus/dnn/vec.h
    functionUses: 0
    functionsReached:
    - sgemv16x1
    - sgemv8x1
    linkageType: ''
    returnType: void
    signature: void sgemv(float *out, const float *weights, int rows, int cols, int
      col_stride, const float *x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/vec.h:127,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 46
    argCount: 5
    argNames:
    - out
    - w
    - idx
    - rows
    - x
    argTypes:
    - float*
    - float*
    - int*
    - int
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 181
    functionName: sparse_sgemv8x4
    functionSourceFile: /src/opus/dnn/vec.h
    functionUses: 0
    functionsReached:
    - OPUS_CLEAR
    linkageType: ''
    returnType: void
    signature: void sparse_sgemv8x4(float *out, const float *w, const int *idx, int
      rows, const float *x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: floor
      Src: /src/opus/dnn/vec.h:189,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 27
    argCount: 7
    argNames:
    - out
    - w
    - idx
    - scale
    - rows
    - cols
    - _x
    argTypes:
    - float*
    - opus_int8*
    - int*
    - float*
    - int
    - int
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 217
    functionName: sparse_cgemv8x4
    functionSourceFile: /src/opus/dnn/vec.h
    functionUses: 0
    functionsReached:
    - floor
    linkageType: ''
    returnType: void
    signature: void sparse_cgemv8x4(float *out, const opus_int8 *w, const int *idx,
      const float *scale, int rows, int cols, const float *_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: floor
      Src: /src/opus/dnn/vec.h:223,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 6
    argNames:
    - out
    - w
    - scale
    - rows
    - cols
    - _x
    argTypes:
    - float*
    - opus_int8*
    - float*
    - int
    - int
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 218
    functionDepth: 0
    functionLinenumber: 218
    functionLinenumberEnd: 247
    functionName: cgemv8x4
    functionSourceFile: /src/opus/dnn/vec.h
    functionUses: 0
    functionsReached:
    - floor
    linkageType: ''
    returnType: void
    signature: void cgemv8x4(float *out, const opus_int8 *w, const float *scale, int
      rows, int cols, const float *_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: floor
      Src: /src/opus/dnn/vec.h:254,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 27
    argCount: 7
    argNames:
    - out
    - w
    - idx
    - scale
    - rows
    - cols
    - _x
    argTypes:
    - float*
    - opus_int8*
    - int*
    - float*
    - int
    - int
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 282
    functionName: sparse_cgemv8x4
    functionSourceFile: /src/opus/dnn/vec.h
    functionUses: 0
    functionsReached:
    - floor
    linkageType: ''
    returnType: void
    signature: void sparse_cgemv8x4(float *out, const opus_int8 *w, const int *idx,
      const float *scale, int rows, int cols, const float *_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: floor
      Src: /src/opus/dnn/vec.h:288,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 6
    argNames:
    - out
    - w
    - scale
    - rows
    - cols
    - _x
    argTypes:
    - float*
    - opus_int8*
    - float*
    - int
    - int
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 283
    functionDepth: 0
    functionLinenumber: 283
    functionLinenumberEnd: 312
    functionName: cgemv8x4
    functionSourceFile: /src/opus/dnn/vec.h
    functionUses: 0
    functionsReached:
    - floor
    linkageType: ''
    returnType: void
    signature: void cgemv8x4(float *out, const opus_int8 *w, const float *scale, int
      rows, int cols, const float *_x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: floor
      Src: /src/opus/dnn/vec.h:325,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - x
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 317
    functionDepth: 0
    functionLinenumber: 317
    functionLinenumberEnd: 334
    functionName: lpcnet_exp2
    functionSourceFile: /src/opus/dnn/vec.h
    functionUses: 0
    functionsReached:
    - floor
    linkageType: ''
    returnType: float
    signature: float lpcnet_exp2(float x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 335
    functionDepth: 0
    functionLinenumber: 335
    functionLinenumberEnd: 336
    functionName: lpcnet_exp
    functionSourceFile: /src/opus/dnn/vec.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: lpcnet_exp(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 337
    functionDepth: 0
    functionLinenumber: 337
    functionLinenumberEnd: 338
    functionName: fmadd
    functionSourceFile: /src/opus/dnn/vec.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: fmadd(a, b, c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fmadd
      Src: /src/opus/dnn/vec.h:348,1
    - Dst: fmadd
      Src: /src/opus/dnn/vec.h:348,1
    - Dst: fmadd
      Src: /src/opus/dnn/vec.h:349,1
    - Dst: fmadd
      Src: /src/opus/dnn/vec.h:349,1
    - Dst: MAX32
      Src: /src/opus/dnn/vec.h:351,1
    - Dst: MIN32
      Src: /src/opus/dnn/vec.h:351,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 338
    functionDepth: 0
    functionLinenumber: 338
    functionLinenumberEnd: 352
    functionName: tanh_approx
    functionSourceFile: /src/opus/dnn/vec.h
    functionUses: 0
    functionsReached:
    - fmadd
    - MIN32
    - MAX32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE tanh_approx(float x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tanh_approx
      Src: /src/opus/dnn/vec.h:356,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 354
    functionDepth: 0
    functionLinenumber: 354
    functionLinenumberEnd: 357
    functionName: sigmoid_approx
    functionSourceFile: /src/opus/dnn/vec.h
    functionUses: 2
    functionsReached:
    - tanh_approx
    linkageType: ''
    returnType: float
    signature: float sigmoid_approx(float x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lpcnet_exp
      Src: /src/opus/dnn/vec.h:363,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 3
    argNames:
    - y
    - x
    - N
    argTypes:
    - float*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 359
    functionDepth: 0
    functionLinenumber: 359
    functionLinenumberEnd: 364
    functionName: softmax
    functionSourceFile: /src/opus/dnn/vec.h
    functionUses: 0
    functionsReached:
    - lpcnet_exp
    linkageType: ''
    returnType: void
    signature: void softmax(float *y, const float *x, int N)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tanh_approx
      Src: /src/opus/dnn/vec.h:371,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - y
    - x
    - N
    argTypes:
    - float*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 373
      start: 366
    functionDepth: 0
    functionLinenumber: 366
    functionLinenumberEnd: 373
    functionName: vec_tanh
    functionSourceFile: /src/opus/dnn/vec.h
    functionUses: 0
    functionsReached:
    - tanh_approx
    linkageType: ''
    returnType: void
    signature: void vec_tanh(float *y, const float *x, int N)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sigmoid_approx
      Src: /src/opus/dnn/vec.h:380,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - y
    - x
    - N
    argTypes:
    - float*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 382
      start: 375
    functionDepth: 0
    functionLinenumber: 375
    functionLinenumberEnd: 382
    functionName: vec_sigmoid
    functionSourceFile: /src/opus/dnn/vec.h
    functionUses: 0
    functionsReached:
    - sigmoid_approx
    linkageType: ''
    returnType: void
    signature: void vec_sigmoid(float *y, const float *x, int N)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/dnn/osce_features.c:188,1
    - Dst: printf
      Src: /src/opus/dnn/osce_features.c:206,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 5
    argNames:
    - x_out
    - x_in
    - center_bins
    - band_weights
    - num_bands
    argTypes:
    - float*
    - float*
    - int*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 183
    functionDepth: 1
    functionLinenumber: 183
    functionLinenumberEnd: 209
    functionName: apply_filterbank
    functionSourceFile: /src/opus/dnn/osce_features.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - printf
    linkageType: ''
    returnType: void
    signature: void apply_filterbank(float *x_out, float *x_in, const int *center_bins,
      const float* band_weights, int num_bands)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/dnn/osce_features.c:214,1
    - Dst: forward_transform
      Src: /src/opus/dnn/osce_features.c:217,1
    - Dst: sqrt
      Src: /src/opus/dnn/osce_features.c:221,1
    - Dst: printf
      Src: /src/opus/dnn/osce_features.c:223,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - out
    - in
    argTypes:
    - float*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 212
    functionDepth: 1
    functionLinenumber: 212
    functionLinenumberEnd: 226
    functionName: mag_spec_320_onesided
    functionSourceFile: /src/opus/dnn/osce_features.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - printf
    - forward_transform
    - sqrt
    linkageType: ''
    returnType: void
    signature: void mag_spec_320_onesided(float *out, float *in)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mag_spec_320_onesided
      Src: /src/opus/dnn/osce_features.c:242,1
    - Dst: apply_filterbank
      Src: /src/opus/dnn/osce_features.c:250,1
    - Dst: log
      Src: /src/opus/dnn/osce_features.c:255,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 3
    argNames:
    - spec
    - a_q12
    - lpc_order
    argTypes:
    - float*
    - opus_int16*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 229
    functionDepth: 2
    functionLinenumber: 229
    functionLinenumberEnd: 257
    functionName: calculate_log_spectrum_from_lpc
    functionSourceFile: /src/opus/dnn/osce_features.c
    functionUses: 0
    functionsReached:
    - log
    - mag_spec_320_onesided
    - apply_filterbank
    linkageType: ''
    returnType: void
    signature: void calculate_log_spectrum_from_lpc(float *spec, opus_int16 *a_q12,
      int lpc_order)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/dnn/osce_features.c:265,1
    - Dst: mag_spec_320_onesided
      Src: /src/opus/dnn/osce_features.c:273,1
    - Dst: apply_filterbank
      Src: /src/opus/dnn/osce_features.c:276,1
    - Dst: log
      Src: /src/opus/dnn/osce_features.c:281,1
    - Dst: printf
      Src: /src/opus/dnn/osce_features.c:283,1
    - Dst: celt_assert
      Src: /src/opus/dnn/osce_features.c:288,1
    - Dst: dct
      Src: /src/opus/dnn/osce_features.c:289,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - cepstrum
    - signal
    argTypes:
    - float*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 259
    functionDepth: 2
    functionLinenumber: 259
    functionLinenumberEnd: 290
    functionName: calculate_cepstrum
    functionSourceFile: /src/opus/dnn/osce_features.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - apply_filterbank
    - dct
    - mag_spec_320_onesided
    - log
    - printf
    linkageType: ''
    returnType: void
    signature: void calculate_cepstrum(float *cepstrum, float *signal)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/dnn/osce_features.c:295,1
    - Dst: sqrt
      Src: /src/opus/dnn/osce_features.c:310,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 3
    argNames:
    - acorr
    - signal
    - lag
    argTypes:
    - float*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 292
    functionDepth: 1
    functionLinenumber: 292
    functionLinenumberEnd: 312
    functionName: calculate_acorr
    functionSourceFile: /src/opus/dnn/osce_features.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - sqrt
    linkageType: ''
    returnType: void
    signature: void calculate_acorr(float *acorr, float *signal, int lag)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/dnn/osce_features.c:363,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 26
    argCount: 3
    argNames:
    - psFeatures
    - lag
    - type
    argTypes:
    - OSCEFeatureState*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 366
      start: 314
    functionDepth: 1
    functionLinenumber: 314
    functionLinenumberEnd: 366
    functionName: pitch_postprocessing
    functionSourceFile: /src/opus/dnn/osce_features.c
    functionUses: 0
    functionsReached:
    - celt_assert
    linkageType: ''
    returnType: int
    signature: int pitch_postprocessing(OSCEFeatureState *psFeatures, int lag, int
      type)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fopen
      Src: /src/opus/dnn/osce_features.c:387,1
    - Dst: memset
      Src: /src/opus/dnn/osce_features.c:392,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce_features.c:407,1
    - Dst: memset
      Src: /src/opus/dnn/osce_features.c:413,1
    - Dst: calculate_log_spectrum_from_lpc
      Src: /src/opus/dnn/osce_features.c:418,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce_features.c:422,1
    - Dst: calculate_cepstrum
      Src: /src/opus/dnn/osce_features.c:428,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce_features.c:432,1
    - Dst: pitch_postprocessing
      Src: /src/opus/dnn/osce_features.c:436,1
    - Dst: calculate_acorr
      Src: /src/opus/dnn/osce_features.c:439,1
    - Dst: celt_assert
      Src: /src/opus/dnn/osce_features.c:442,1
    - Dst: log
      Src: /src/opus/dnn/osce_features.c:449,1
    - Dst: fwrite
      Src: /src/opus/dnn/osce_features.c:452,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce_features.c:457,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 39
    argCount: 7
    argNames:
    - psDec
    - psDecCtrl
    - features
    - numbits
    - periods
    - xq
    - num_bits
    argTypes:
    - silk_decoder_state*
    - silk_decoder_control*
    - float*
    - float*
    - int*
    - opus_int16[]
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 458
      start: 368
    functionDepth: 3
    functionLinenumber: 368
    functionLinenumberEnd: 458
    functionName: osce_calculate_features
    functionSourceFile: /src/opus/dnn/osce_features.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - calculate_log_spectrum_from_lpc
    - calculate_acorr
    - OPUS_COPY
    - pitch_postprocessing
    - memset
    - calculate_cepstrum
    - fwrite
    - fopen
    - log
    linkageType: ''
    returnType: void
    signature: "void osce_calculate_features(\n    silk_decoder_state          *psDec,
      \                        /* I/O  Decoder state                               */\n
      \   silk_decoder_control        *psDecCtrl,                     /* I    Decoder
      control                             */\n    float                       *features,
      \                     /* O    input features                              */\n
      \   float                       *numbits,                       /* O    numbits
      and smoothed numbits                */\n    int                         *periods,
      \                      /* O    pitch lags on subframe basis                */\n
      \   const opus_int16            xq[],                           /* I    Decoded
      speech                              */\n    opus_int32                  num_bits
      \                       /* I    Size of SILK payload in bits                */\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/dnn/osce_features.c:477,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/osce_features.c:484,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce_features.c:490,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce_features.c:497,1
    - Dst: forward_transform
      Src: /src/opus/dnn/osce_features.c:506,1
    - Dst: sqrt
      Src: /src/opus/dnn/osce_features.c:521,1
    - Dst: sqrt
      Src: /src/opus/dnn/osce_features.c:529,1
    - Dst: apply_filterbank
      Src: /src/opus/dnn/osce_features.c:532,1
    - Dst: log
      Src: /src/opus/dnn/osce_features.c:536,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/osce_features.c:540,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 38
    argCount: 4
    argNames:
    - psFeatures
    - features
    - xq
    - num_samples
    argTypes:
    - OSCEBWEFeatureState*
    - float*
    - opus_int16[]
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 542
      start: 462
    functionDepth: 2
    functionLinenumber: 462
    functionLinenumberEnd: 542
    functionName: osce_bwe_calculate_features
    functionSourceFile: /src/opus/dnn/osce_features.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - OPUS_CLEAR
    - apply_filterbank
    - OPUS_COPY
    - forward_transform
    - sqrt
    - log
    linkageType: ''
    returnType: void
    signature: "void osce_bwe_calculate_features(\n    OSCEBWEFeatureState         *psFeatures,
      \                   /* I/O  BWE feature state                          */\n
      \   float                       *features,                      /* O    input
      features                              */\n    const opus_int16            xq[],
      \                          /* I    Decoded speech                              */\n
      \   int                         num_samples                     /* I    number
      of input samples                     */\n )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/dnn/osce_features.c:548,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - x_enhanced
    - x_in
    - length
    argTypes:
    - float*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 554
      start: 545
    functionDepth: 1
    functionLinenumber: 545
    functionLinenumberEnd: 554
    functionName: osce_cross_fade_10ms
    functionSourceFile: /src/opus/dnn/osce_features.c
    functionUses: 1
    functionsReached:
    - celt_assert
    linkageType: ''
    returnType: void
    signature: void osce_cross_fade_10ms(float *x_enhanced, float *x_in, int length)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/dnn/osce_features.c:560,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - x_fadein
    - x_fadeout
    - length
    argTypes:
    - opus_int16*
    - opus_int16*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 572
      start: 557
    functionDepth: 1
    functionLinenumber: 557
    functionLinenumberEnd: 572
    functionName: osce_bwe_cross_fade_10ms
    functionSourceFile: /src/opus/dnn/osce_features.c
    functionUses: 1
    functionsReached:
    - celt_assert
    linkageType: ''
    returnType: void
    signature: void osce_bwe_cross_fade_10ms(opus_int16 *x_fadein, opus_int16 *x_fadeout,
      int length)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_set1_ps
      Src: /src/opus/dnn/vec_avx.h:45,1
    - Dst: _mm_cvtepi32_ps
      Src: /src/opus/dnn/vec_avx.h:46,1
    - Dst: _mm_cvtps_epi32
      Src: /src/opus/dnn/vec_avx.h:46,1
    - Dst: _mm_sub_ps
      Src: /src/opus/dnn/vec_avx.h:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - __m128
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionName: mm_floor_ps
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - _mm_cvtepi32_ps
    - _mm_cvtps_epi32
    - _mm_sub_ps
    - _mm_set1_ps
    linkageType: ''
    returnType: __m128
    signature: __m128 mm_floor_ps(__m128 x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 50
    functionName: _mm_floor_ps
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _mm_floor_ps(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_loadu_ps
      Src: /src/opus/dnn/vec_avx.h:64,1
    - Dst: _mm_loadu_ps
      Src: /src/opus/dnn/vec_avx.h:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - src
    argTypes:
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 67
    functionName: mm256_loadu_ps
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - _mm_loadu_ps
    linkageType: ''
    returnType: mm256_emu
    signature: mm256_emu mm256_loadu_ps(const float *src)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - src
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 69
    functionName: _mm256_loadu_ps
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _mm256_loadu_ps(src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_storeu_ps
      Src: /src/opus/dnn/vec_avx.h:72,1
    - Dst: _mm_storeu_ps
      Src: /src/opus/dnn/vec_avx.h:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - float*
    - mm256_emu
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionName: mm256_storeu_ps
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - _mm_storeu_ps
    linkageType: ''
    returnType: void
    signature: void mm256_storeu_ps(float *dst, mm256_emu src)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - dst
    - ','
    - src
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 76
    functionName: _mm256_storeu_ps
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _mm256_storeu_ps(dst, src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_setzero_ps
      Src: /src/opus/dnn/vec_avx.h:80,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 83
    functionName: mm256_setzero_ps
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - _mm_setzero_ps
    linkageType: ''
    returnType: mm256_emu
    signature: mm256_emu mm256_setzero_ps(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_set1_ps
      Src: /src/opus/dnn/vec_avx.h:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 91
    functionName: mm256_broadcast_ss
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - _mm_set1_ps
    linkageType: ''
    returnType: mm256_emu
    signature: mm256_emu mm256_broadcast_ss(const float *x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 93
    functionName: _mm256_broadcast_ss
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _mm256_broadcast_ss(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_set1_ps
      Src: /src/opus/dnn/vec_avx.h:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 99
    functionName: mm256_set1_ps
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - _mm_set1_ps
    linkageType: ''
    returnType: mm256_emu
    signature: mm256_emu mm256_set1_ps(float x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 101
    functionName: _mm256_set1_ps
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _mm256_set1_ps(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_mul_ps
      Src: /src/opus/dnn/vec_avx.h:106,1
    - Dst: _mm_mul_ps
      Src: /src/opus/dnn/vec_avx.h:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - mm256_emu
    - mm256_emu
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 109
    functionName: mm256_mul_ps
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - _mm_mul_ps
    linkageType: ''
    returnType: mm256_emu
    signature: mm256_emu mm256_mul_ps(mm256_emu a, mm256_emu b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 111
    functionName: _mm256_mul_ps
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _mm256_mul_ps(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_add_ps
      Src: /src/opus/dnn/vec_avx.h:114,1
    - Dst: _mm_add_ps
      Src: /src/opus/dnn/vec_avx.h:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - mm256_emu
    - mm256_emu
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 117
    functionName: mm256_add_ps
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - _mm_add_ps
    linkageType: ''
    returnType: mm256_emu
    signature: mm256_emu mm256_add_ps(mm256_emu a, mm256_emu b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 119
    functionName: _mm256_add_ps
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _mm256_add_ps(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_max_ps
      Src: /src/opus/dnn/vec_avx.h:123,1
    - Dst: _mm_max_ps
      Src: /src/opus/dnn/vec_avx.h:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - mm256_emu
    - mm256_emu
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 126
    functionName: mm256_max_ps
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - _mm_max_ps
    linkageType: ''
    returnType: mm256_emu
    signature: mm256_emu mm256_max_ps(mm256_emu a, mm256_emu b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 128
    functionName: _mm256_max_ps
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _mm256_max_ps(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_min_ps
      Src: /src/opus/dnn/vec_avx.h:131,1
    - Dst: _mm_min_ps
      Src: /src/opus/dnn/vec_avx.h:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - mm256_emu
    - mm256_emu
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 134
    functionName: mm256_min_ps
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - _mm_min_ps
    linkageType: ''
    returnType: mm256_emu
    signature: mm256_emu mm256_min_ps(mm256_emu a, mm256_emu b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 136
    functionName: _mm256_min_ps
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _mm256_min_ps(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_rcp_ps
      Src: /src/opus/dnn/vec_avx.h:139,1
    - Dst: _mm_rcp_ps
      Src: /src/opus/dnn/vec_avx.h:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - a
    argTypes:
    - mm256_emu
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 142
    functionName: mm256_rcp_ps
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - _mm_rcp_ps
    linkageType: ''
    returnType: mm256_emu
    signature: mm256_emu mm256_rcp_ps(mm256_emu a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 144
    functionName: _mm256_rcp_ps
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _mm256_rcp_ps(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - x
    - i
    argTypes:
    - mm256_emu
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 148
    functionName: mm256_extractf128_ps
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: __m128
    signature: __m128 mm256_extractf128_ps(mm256_emu x, int i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - i
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 151
    functionName: _mm256_extractf128_ps
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _mm256_extractf128_ps(x,i)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - dst
    - src
    - i
    argTypes:
    - mm256_emu
    - __m128
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 156
    functionName: mm256_insertf128_ps
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: mm256_emu
    signature: mm256_emu mm256_insertf128_ps(mm256_emu dst, __m128 src, int i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - dst
    - ','
    - src
    - ','
    - i
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 159
    functionName: _mm256_insertf128_ps
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _mm256_insertf128_ps(dst,src,i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_setzero_si128
      Src: /src/opus/dnn/vec_avx.h:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 181
    functionName: mm256_setzero_si256
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - _mm_setzero_si128
    linkageType: ''
    returnType: mm256i_emu
    signature: mm256i_emu mm256_setzero_si256(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_loadu_si128
      Src: /src/opus/dnn/vec_avx.h:187,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/dnn/vec_avx.h:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - src
    argTypes:
    - mm256i_emu*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 190
    functionName: mm256_loadu_si256
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - _mm_loadu_si128
    linkageType: ''
    returnType: mm256i_emu
    signature: mm256i_emu mm256_loadu_si256(const mm256i_emu *src)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - src
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 192
    functionName: _mm256_loadu_si256
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _mm256_loadu_si256(src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_storeu_si128
      Src: /src/opus/dnn/vec_avx.h:195,1
    - Dst: _mm_storeu_si128
      Src: /src/opus/dnn/vec_avx.h:196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - dst
    - src
    argTypes:
    - mm256i_emu*
    - mm256i_emu
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 197
    functionName: mm256_storeu_si256
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - _mm_storeu_si128
    linkageType: ''
    returnType: void
    signature: void mm256_storeu_si256(mm256i_emu *dst, mm256i_emu src)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - dst
    - ','
    - src
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 199
    functionName: _mm256_storeu_si256
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _mm256_storeu_si256(dst, src)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/dnn/vec_avx.h:203,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - __m128i
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 205
    functionName: mm256_broadcastd_epi32
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - _mm_shuffle_epi32
    linkageType: ''
    returnType: mm256i_emu
    signature: mm256i_emu mm256_broadcastd_epi32(__m128i x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 206
    functionDepth: 0
    functionLinenumber: 206
    functionLinenumberEnd: 207
    functionName: _mm256_broadcastd_epi32
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _mm256_broadcastd_epi32(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_set1_epi32
      Src: /src/opus/dnn/vec_avx.h:211,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 214
    functionName: mm256_set1_epi32
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 7
    functionsReached:
    - _mm_set1_epi32
    linkageType: ''
    returnType: mm256i_emu
    signature: mm256i_emu mm256_set1_epi32(int x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 215
    functionDepth: 0
    functionLinenumber: 215
    functionLinenumberEnd: 216
    functionName: _mm256_set1_epi32
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _mm256_set1_epi32(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_set1_epi16
      Src: /src/opus/dnn/vec_avx.h:219,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 222
    functionName: mm256_set1_epi16
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - _mm_set1_epi16
    linkageType: ''
    returnType: mm256i_emu
    signature: mm256i_emu mm256_set1_epi16(int x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 224
    functionName: _mm256_set1_epi16
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _mm256_set1_epi16(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_add_epi32
      Src: /src/opus/dnn/vec_avx.h:228,1
    - Dst: _mm_add_epi32
      Src: /src/opus/dnn/vec_avx.h:229,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - mm256i_emu
    - mm256i_emu
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 231
    functionName: mm256_add_epi32
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 4
    functionsReached:
    - _mm_add_epi32
    linkageType: ''
    returnType: mm256i_emu
    signature: mm256i_emu mm256_add_epi32(mm256i_emu a, mm256i_emu b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 232
    functionDepth: 0
    functionLinenumber: 232
    functionLinenumberEnd: 233
    functionName: _mm256_add_epi32
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _mm256_add_epi32(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_madd_epi16
      Src: /src/opus/dnn/vec_avx.h:236,1
    - Dst: _mm_madd_epi16
      Src: /src/opus/dnn/vec_avx.h:237,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - mm256i_emu
    - mm256i_emu
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 234
    functionDepth: 0
    functionLinenumber: 234
    functionLinenumberEnd: 239
    functionName: mm256_madd_epi16
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - _mm_madd_epi16
    linkageType: ''
    returnType: mm256i_emu
    signature: mm256i_emu mm256_madd_epi16(mm256i_emu a, mm256i_emu b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 240
    functionDepth: 0
    functionLinenumber: 240
    functionLinenumberEnd: 241
    functionName: _mm256_madd_epi16
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _mm256_madd_epi16(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_maddubs_epi16
      Src: /src/opus/dnn/vec_avx.h:244,1
    - Dst: _mm_maddubs_epi16
      Src: /src/opus/dnn/vec_avx.h:245,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - mm256i_emu
    - mm256i_emu
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 242
    functionDepth: 0
    functionLinenumber: 242
    functionLinenumberEnd: 247
    functionName: mm256_maddubs_epi16
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - _mm_maddubs_epi16
    linkageType: ''
    returnType: mm256i_emu
    signature: mm256i_emu mm256_maddubs_epi16(mm256i_emu a, mm256i_emu b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 248
    functionDepth: 0
    functionLinenumber: 248
    functionLinenumberEnd: 249
    functionName: _mm256_maddubs_epi16
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _mm256_maddubs_epi16(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm256_cvtepi32_ps
      Src: /src/opus/dnn/vec_avx.h:264,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - a
    argTypes:
    - mm256i_emu
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 261
    functionDepth: 1
    functionLinenumber: 261
    functionLinenumberEnd: 265
    functionName: mm256_cvtepi32_ps
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 1
    functionsReached:
    - _mm256_cvtepi32_ps
    linkageType: ''
    returnType: __m256
    signature: __m256 mm256_cvtepi32_ps(mm256i_emu a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 267
      start: 266
    functionDepth: 0
    functionLinenumber: 266
    functionLinenumberEnd: 267
    functionName: _mm256_cvtepi32_ps
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _mm256_cvtepi32_ps(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm256_cvtps_epi32
      Src: /src/opus/dnn/vec_avx.h:270,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - a
    argTypes:
    - __m256
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 268
    functionDepth: 1
    functionLinenumber: 268
    functionLinenumberEnd: 272
    functionName: mm256_cvtps_epi32
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 1
    functionsReached:
    - _mm256_cvtps_epi32
    linkageType: ''
    returnType: mm256i_emu
    signature: mm256i_emu mm256_cvtps_epi32(__m256 a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 273
    functionDepth: 0
    functionLinenumber: 273
    functionLinenumberEnd: 274
    functionName: _mm256_cvtps_epi32
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _mm256_cvtps_epi32(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_cvtepi32_ps
      Src: /src/opus/dnn/vec_avx.h:280,1
    - Dst: _mm_cvtepi32_ps
      Src: /src/opus/dnn/vec_avx.h:281,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - a
    argTypes:
    - mm256i_emu
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 278
    functionDepth: 0
    functionLinenumber: 278
    functionLinenumberEnd: 283
    functionName: mm256_cvtepi32_ps
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 1
    functionsReached:
    - _mm_cvtepi32_ps
    linkageType: ''
    returnType: mm256_emu
    signature: mm256_emu mm256_cvtepi32_ps(mm256i_emu a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 285
      start: 284
    functionDepth: 0
    functionLinenumber: 284
    functionLinenumberEnd: 285
    functionName: _mm256_cvtepi32_ps
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _mm256_cvtepi32_ps(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_cvtps_epi32
      Src: /src/opus/dnn/vec_avx.h:288,1
    - Dst: _mm_cvtps_epi32
      Src: /src/opus/dnn/vec_avx.h:289,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - a
    argTypes:
    - mm256_emu
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 286
    functionDepth: 0
    functionLinenumber: 286
    functionLinenumberEnd: 291
    functionName: mm256_cvtps_epi32
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 1
    functionsReached:
    - _mm_cvtps_epi32
    linkageType: ''
    returnType: mm256i_emu
    signature: mm256i_emu mm256_cvtps_epi32(mm256_emu a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 292
    functionDepth: 0
    functionLinenumber: 292
    functionLinenumberEnd: 293
    functionName: _mm256_cvtps_epi32
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _mm256_cvtps_epi32(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 302
      start: 301
    functionDepth: 0
    functionLinenumber: 301
    functionLinenumberEnd: 302
    functionName: _mm256_fmadd_ps
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _mm256_fmadd_ps(a,b,c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 302
    functionDepth: 0
    functionLinenumber: 302
    functionLinenumberEnd: 303
    functionName: _mm_fmadd_ps
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _mm_fmadd_ps(a,b,c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm256_set1_ps
      Src: /src/opus/dnn/vec_avx.h:308,1
    - Dst: _mm256_set1_ps
      Src: /src/opus/dnn/vec_avx.h:309,1
    - Dst: _mm256_set1_ps
      Src: /src/opus/dnn/vec_avx.h:310,1
    - Dst: _mm256_set1_ps
      Src: /src/opus/dnn/vec_avx.h:311,1
    - Dst: _mm256_set1_ps
      Src: /src/opus/dnn/vec_avx.h:312,1
    - Dst: _mm256_set1_ps
      Src: /src/opus/dnn/vec_avx.h:313,1
    - Dst: _mm256_set1_ps
      Src: /src/opus/dnn/vec_avx.h:314,1
    - Dst: _mm256_mul_ps
      Src: /src/opus/dnn/vec_avx.h:317,1
    - Dst: _mm256_max_ps
      Src: /src/opus/dnn/vec_avx.h:318,1
    - Dst: _mm256_min_ps
      Src: /src/opus/dnn/vec_avx.h:318,1
    - Dst: _mm256_floor_ps
      Src: /src/opus/dnn/vec_avx.h:319,1
    - Dst: _mm256_cvtps_epi32
      Src: /src/opus/dnn/vec_avx.h:320,1
    - Dst: _mm256_sub_ps
      Src: /src/opus/dnn/vec_avx.h:321,1
    - Dst: _mm256_fmadd_ps
      Src: /src/opus/dnn/vec_avx.h:322,1
    - Dst: _mm256_fmadd_ps
      Src: /src/opus/dnn/vec_avx.h:322,1
    - Dst: _mm256_fmadd_ps
      Src: /src/opus/dnn/vec_avx.h:322,1
    - Dst: _mm256_slli_epi32
      Src: /src/opus/dnn/vec_avx.h:323,1
    - Dst: _mm256_castsi256_ps
      Src: /src/opus/dnn/vec_avx.h:324,1
    - Dst: _mm256_add_epi32
      Src: /src/opus/dnn/vec_avx.h:324,1
    - Dst: _mm256_castps_si256
      Src: /src/opus/dnn/vec_avx.h:324,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - X
    argTypes:
    - __m256
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 326
      start: 306
    functionDepth: 1
    functionLinenumber: 306
    functionLinenumberEnd: 326
    functionName: exp8_approx
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - _mm256_fmadd_ps
    - _mm256_castsi256_ps
    - _mm256_sub_ps
    - _mm256_add_epi32
    - _mm256_min_ps
    - _mm256_set1_ps
    - _mm256_mul_ps
    - _mm256_slli_epi32
    - _mm256_castps_si256
    - _mm256_floor_ps
    - _mm256_cvtps_epi32
    - _mm256_max_ps
    linkageType: ''
    returnType: __m256
    signature: __m256 exp8_approx(__m256 X)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm256_set1_ps
      Src: /src/opus/dnn/vec_avx.h:330,1
    - Dst: _mm256_loadu_ps
      Src: /src/opus/dnn/vec_avx.h:334,1
    - Dst: _mm256_fmadd_ps
      Src: /src/opus/dnn/vec_avx.h:335,1
    - Dst: _mm256_cvtps_epi32
      Src: /src/opus/dnn/vec_avx.h:336,1
    - Dst: _mm256_packus_epi32
      Src: /src/opus/dnn/vec_avx.h:337,1
    - Dst: _mm256_setzero_si256
      Src: /src/opus/dnn/vec_avx.h:337,1
    - Dst: _mm256_permute4x64_epi64
      Src: /src/opus/dnn/vec_avx.h:338,1
    - Dst: _mm256_packus_epi16
      Src: /src/opus/dnn/vec_avx.h:339,1
    - Dst: _mm256_setzero_si256
      Src: /src/opus/dnn/vec_avx.h:339,1
    - Dst: _mm256_permutevar8x32_epi32
      Src: /src/opus/dnn/vec_avx.h:340,1
    - Dst: _mm256_setr_epi32
      Src: /src/opus/dnn/vec_avx.h:340,1
    - Dst: _mm256_storeu_si256
      Src: /src/opus/dnn/vec_avx.h:341,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 3
    argNames:
    - x
    - _x
    - len
    argTypes:
    - unsigned char*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 328
    functionDepth: 1
    functionLinenumber: 328
    functionLinenumberEnd: 343
    functionName: vector_ps_to_epi8
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - _mm256_fmadd_ps
    - _mm256_permute4x64_epi64
    - _mm256_packus_epi32
    - _mm256_storeu_si256
    - _mm256_permutevar8x32_epi32
    - _mm256_setzero_si256
    - _mm256_cvtps_epi32
    - _mm256_packus_epi16
    - _mm256_set1_ps
    - _mm256_setr_epi32
    - _mm256_loadu_ps
    linkageType: ''
    returnType: void
    signature: void vector_ps_to_epi8(unsigned char *x, const float *_x, int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_set1_ps
      Src: /src/opus/dnn/vec_avx.h:348,1
    - Dst: _mm_set1_ps
      Src: /src/opus/dnn/vec_avx.h:349,1
    - Dst: _mm_set1_ps
      Src: /src/opus/dnn/vec_avx.h:350,1
    - Dst: _mm_set1_ps
      Src: /src/opus/dnn/vec_avx.h:351,1
    - Dst: _mm_set1_ps
      Src: /src/opus/dnn/vec_avx.h:352,1
    - Dst: _mm_set1_ps
      Src: /src/opus/dnn/vec_avx.h:353,1
    - Dst: _mm_set1_ps
      Src: /src/opus/dnn/vec_avx.h:354,1
    - Dst: _mm_set1_epi32
      Src: /src/opus/dnn/vec_avx.h:355,1
    - Dst: _mm_mul_ps
      Src: /src/opus/dnn/vec_avx.h:358,1
    - Dst: _mm_max_ps
      Src: /src/opus/dnn/vec_avx.h:359,1
    - Dst: _mm_min_ps
      Src: /src/opus/dnn/vec_avx.h:359,1
    - Dst: _mm_floor_ps
      Src: /src/opus/dnn/vec_avx.h:360,1
    - Dst: _mm_cvtps_epi32
      Src: /src/opus/dnn/vec_avx.h:361,1
    - Dst: _mm_sub_ps
      Src: /src/opus/dnn/vec_avx.h:362,1
    - Dst: _mm_fmadd_ps
      Src: /src/opus/dnn/vec_avx.h:363,1
    - Dst: _mm_fmadd_ps
      Src: /src/opus/dnn/vec_avx.h:363,1
    - Dst: _mm_fmadd_ps
      Src: /src/opus/dnn/vec_avx.h:363,1
    - Dst: _mm_slli_epi32
      Src: /src/opus/dnn/vec_avx.h:364,1
    - Dst: _mm_castsi128_ps
      Src: /src/opus/dnn/vec_avx.h:365,1
    - Dst: _mm_and_si128
      Src: /src/opus/dnn/vec_avx.h:365,1
    - Dst: _mm_add_epi32
      Src: /src/opus/dnn/vec_avx.h:365,1
    - Dst: _mm_castps_si128
      Src: /src/opus/dnn/vec_avx.h:365,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 1
    argNames:
    - X
    argTypes:
    - __m128
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 367
      start: 346
    functionDepth: 1
    functionLinenumber: 346
    functionLinenumberEnd: 367
    functionName: exp4_approx
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 2
    functionsReached:
    - _mm_mul_ps
    - _mm_max_ps
    - _mm_castsi128_ps
    - _mm_and_si128
    - _mm_min_ps
    - _mm_set1_epi32
    - _mm_add_epi32
    - _mm_slli_epi32
    - _mm_cvtps_epi32
    - _mm_set1_ps
    - _mm_castps_si128
    - _mm_floor_ps
    - _mm_sub_ps
    - _mm_fmadd_ps
    linkageType: ''
    returnType: __m128
    signature: __m128 exp4_approx(__m128 X)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm256_extractf128_ps
      Src: /src/opus/dnn/vec_avx.h:372,1
    - Dst: _mm256_extractf128_ps
      Src: /src/opus/dnn/vec_avx.h:373,1
    - Dst: exp4_approx
      Src: /src/opus/dnn/vec_avx.h:374,1
    - Dst: exp4_approx
      Src: /src/opus/dnn/vec_avx.h:375,1
    - Dst: _mm256_insertf128_ps
      Src: /src/opus/dnn/vec_avx.h:376,1
    - Dst: _mm256_setzero_ps
      Src: /src/opus/dnn/vec_avx.h:376,1
    - Dst: _mm256_insertf128_ps
      Src: /src/opus/dnn/vec_avx.h:377,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - X
    argTypes:
    - __m256
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 368
    functionDepth: 1
    functionLinenumber: 368
    functionLinenumberEnd: 379
    functionName: exp8_approx
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - _mm256_insertf128_ps
    - _mm256_setzero_ps
    - _mm256_extractf128_ps
    - exp4_approx
    linkageType: ''
    returnType: __m256
    signature: __m256 exp8_approx(__m256 X)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: floor
      Src: /src/opus/dnn/vec_avx.h:383,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 3
    argNames:
    - x
    - _x
    - len
    argTypes:
    - unsigned char*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 381
    functionDepth: 0
    functionLinenumber: 381
    functionLinenumberEnd: 384
    functionName: vector_ps_to_epi8
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - floor
    linkageType: ''
    returnType: void
    signature: void vector_ps_to_epi8(unsigned char *x, const float *_x, int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm256_set1_ps
      Src: /src/opus/dnn/vec_avx.h:402,1
    - Dst: _mm256_set1_ps
      Src: /src/opus/dnn/vec_avx.h:403,1
    - Dst: _mm256_set1_ps
      Src: /src/opus/dnn/vec_avx.h:404,1
    - Dst: _mm256_set1_ps
      Src: /src/opus/dnn/vec_avx.h:405,1
    - Dst: _mm256_set1_ps
      Src: /src/opus/dnn/vec_avx.h:406,1
    - Dst: _mm256_set1_ps
      Src: /src/opus/dnn/vec_avx.h:407,1
    - Dst: _mm256_set1_ps
      Src: /src/opus/dnn/vec_avx.h:408,1
    - Dst: _mm256_set1_ps
      Src: /src/opus/dnn/vec_avx.h:409,1
    - Dst: _mm256_mul_ps
      Src: /src/opus/dnn/vec_avx.h:411,1
    - Dst: _mm256_fmadd_ps
      Src: /src/opus/dnn/vec_avx.h:412,1
    - Dst: _mm256_fmadd_ps
      Src: /src/opus/dnn/vec_avx.h:412,1
    - Dst: _mm256_fmadd_ps
      Src: /src/opus/dnn/vec_avx.h:413,1
    - Dst: _mm256_fmadd_ps
      Src: /src/opus/dnn/vec_avx.h:413,1
    - Dst: _mm256_mul_ps
      Src: /src/opus/dnn/vec_avx.h:414,1
    - Dst: _mm256_rcp_ps
      Src: /src/opus/dnn/vec_avx.h:415,1
    - Dst: _mm256_mul_ps
      Src: /src/opus/dnn/vec_avx.h:416,1
    - Dst: _mm256_max_ps
      Src: /src/opus/dnn/vec_avx.h:417,1
    - Dst: _mm256_min_ps
      Src: /src/opus/dnn/vec_avx.h:417,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - X
    argTypes:
    - __m256
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 400
    functionDepth: 1
    functionLinenumber: 400
    functionLinenumberEnd: 418
    functionName: tanh8_approx
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - _mm256_fmadd_ps
    - _mm256_rcp_ps
    - _mm256_min_ps
    - _mm256_set1_ps
    - _mm256_mul_ps
    - _mm256_max_ps
    linkageType: ''
    returnType: __m256
    signature: __m256 tanh8_approx(__m256 X)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm256_set1_ps
      Src: /src/opus/dnn/vec_avx.h:430,1
    - Dst: _mm256_set1_ps
      Src: /src/opus/dnn/vec_avx.h:431,1
    - Dst: _mm256_set1_ps
      Src: /src/opus/dnn/vec_avx.h:432,1
    - Dst: _mm256_set1_ps
      Src: /src/opus/dnn/vec_avx.h:433,1
    - Dst: _mm256_set1_ps
      Src: /src/opus/dnn/vec_avx.h:434,1
    - Dst: _mm256_set1_ps
      Src: /src/opus/dnn/vec_avx.h:435,1
    - Dst: _mm256_set1_ps
      Src: /src/opus/dnn/vec_avx.h:436,1
    - Dst: _mm256_set1_ps
      Src: /src/opus/dnn/vec_avx.h:437,1
    - Dst: _mm256_set1_ps
      Src: /src/opus/dnn/vec_avx.h:438,1
    - Dst: _mm256_mul_ps
      Src: /src/opus/dnn/vec_avx.h:440,1
    - Dst: _mm256_fmadd_ps
      Src: /src/opus/dnn/vec_avx.h:441,1
    - Dst: _mm256_fmadd_ps
      Src: /src/opus/dnn/vec_avx.h:441,1
    - Dst: _mm256_fmadd_ps
      Src: /src/opus/dnn/vec_avx.h:442,1
    - Dst: _mm256_fmadd_ps
      Src: /src/opus/dnn/vec_avx.h:442,1
    - Dst: _mm256_mul_ps
      Src: /src/opus/dnn/vec_avx.h:443,1
    - Dst: _mm256_rcp_ps
      Src: /src/opus/dnn/vec_avx.h:444,1
    - Dst: _mm256_fmadd_ps
      Src: /src/opus/dnn/vec_avx.h:445,1
    - Dst: _mm256_max_ps
      Src: /src/opus/dnn/vec_avx.h:446,1
    - Dst: _mm256_min_ps
      Src: /src/opus/dnn/vec_avx.h:446,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - X
    argTypes:
    - __m256
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 447
      start: 428
    functionDepth: 1
    functionLinenumber: 428
    functionLinenumberEnd: 447
    functionName: sigmoid8_approx
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - _mm256_fmadd_ps
    - _mm256_rcp_ps
    - _mm256_min_ps
    - _mm256_set1_ps
    - _mm256_mul_ps
    - _mm256_max_ps
    linkageType: ''
    returnType: __m256
    signature: __m256 sigmoid8_approx(__m256 X)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm256_set1_ps
      Src: /src/opus/dnn/vec_avx.h:453,1
    - Dst: tanh8_approx
      Src: /src/opus/dnn/vec_avx.h:454,1
    - Dst: _mm256_storeu_ps
      Src: /src/opus/dnn/vec_avx.h:455,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 457
      start: 449
    functionDepth: 2
    functionLinenumber: 449
    functionLinenumberEnd: 457
    functionName: tanh_approx
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 2
    functionsReached:
    - _mm256_set1_ps
    - tanh8_approx
    - _mm256_storeu_ps
    linkageType: ''
    returnType: float
    signature: float tanh_approx(float x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm256_set1_ps
      Src: /src/opus/dnn/vec_avx.h:463,1
    - Dst: sigmoid8_approx
      Src: /src/opus/dnn/vec_avx.h:464,1
    - Dst: _mm256_storeu_ps
      Src: /src/opus/dnn/vec_avx.h:465,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 467
      start: 459
    functionDepth: 2
    functionLinenumber: 459
    functionLinenumberEnd: 467
    functionName: sigmoid_approx
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 3
    functionsReached:
    - _mm256_set1_ps
    - _mm256_storeu_ps
    - sigmoid8_approx
    linkageType: ''
    returnType: float
    signature: float sigmoid_approx(float x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_set1_ps
      Src: /src/opus/dnn/vec_avx.h:473,1
    - Dst: _mm_set1_ps
      Src: /src/opus/dnn/vec_avx.h:474,1
    - Dst: _mm_set1_ps
      Src: /src/opus/dnn/vec_avx.h:475,1
    - Dst: _mm_set1_ps
      Src: /src/opus/dnn/vec_avx.h:476,1
    - Dst: _mm_set1_ps
      Src: /src/opus/dnn/vec_avx.h:477,1
    - Dst: _mm_set1_ps
      Src: /src/opus/dnn/vec_avx.h:478,1
    - Dst: _mm_set1_ps
      Src: /src/opus/dnn/vec_avx.h:479,1
    - Dst: _mm_set1_ps
      Src: /src/opus/dnn/vec_avx.h:480,1
    - Dst: _mm_mul_ps
      Src: /src/opus/dnn/vec_avx.h:482,1
    - Dst: _mm_fmadd_ps
      Src: /src/opus/dnn/vec_avx.h:483,1
    - Dst: _mm_fmadd_ps
      Src: /src/opus/dnn/vec_avx.h:483,1
    - Dst: _mm_fmadd_ps
      Src: /src/opus/dnn/vec_avx.h:484,1
    - Dst: _mm_fmadd_ps
      Src: /src/opus/dnn/vec_avx.h:484,1
    - Dst: _mm_mul_ps
      Src: /src/opus/dnn/vec_avx.h:485,1
    - Dst: _mm_rcp_ps
      Src: /src/opus/dnn/vec_avx.h:486,1
    - Dst: _mm_mul_ps
      Src: /src/opus/dnn/vec_avx.h:487,1
    - Dst: _mm_max_ps
      Src: /src/opus/dnn/vec_avx.h:488,1
    - Dst: _mm_min_ps
      Src: /src/opus/dnn/vec_avx.h:488,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - X
    argTypes:
    - __m128
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 489
      start: 471
    functionDepth: 1
    functionLinenumber: 471
    functionLinenumberEnd: 489
    functionName: tanh4_approx
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 2
    functionsReached:
    - _mm_mul_ps
    - _mm_max_ps
    - _mm_min_ps
    - _mm_set1_ps
    - _mm_rcp_ps
    - _mm_fmadd_ps
    linkageType: ''
    returnType: __m128
    signature: __m128 tanh4_approx(__m128 X)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_set1_ps
      Src: /src/opus/dnn/vec_avx.h:493,1
    - Dst: _mm_set1_ps
      Src: /src/opus/dnn/vec_avx.h:494,1
    - Dst: _mm_set1_ps
      Src: /src/opus/dnn/vec_avx.h:495,1
    - Dst: _mm_set1_ps
      Src: /src/opus/dnn/vec_avx.h:496,1
    - Dst: _mm_set1_ps
      Src: /src/opus/dnn/vec_avx.h:497,1
    - Dst: _mm_set1_ps
      Src: /src/opus/dnn/vec_avx.h:498,1
    - Dst: _mm_set1_ps
      Src: /src/opus/dnn/vec_avx.h:499,1
    - Dst: _mm_set1_ps
      Src: /src/opus/dnn/vec_avx.h:500,1
    - Dst: _mm_set1_ps
      Src: /src/opus/dnn/vec_avx.h:501,1
    - Dst: _mm_mul_ps
      Src: /src/opus/dnn/vec_avx.h:503,1
    - Dst: _mm_fmadd_ps
      Src: /src/opus/dnn/vec_avx.h:504,1
    - Dst: _mm_fmadd_ps
      Src: /src/opus/dnn/vec_avx.h:504,1
    - Dst: _mm_fmadd_ps
      Src: /src/opus/dnn/vec_avx.h:505,1
    - Dst: _mm_fmadd_ps
      Src: /src/opus/dnn/vec_avx.h:505,1
    - Dst: _mm_mul_ps
      Src: /src/opus/dnn/vec_avx.h:506,1
    - Dst: _mm_rcp_ps
      Src: /src/opus/dnn/vec_avx.h:507,1
    - Dst: _mm_fmadd_ps
      Src: /src/opus/dnn/vec_avx.h:508,1
    - Dst: _mm_max_ps
      Src: /src/opus/dnn/vec_avx.h:509,1
    - Dst: _mm_min_ps
      Src: /src/opus/dnn/vec_avx.h:509,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - X
    argTypes:
    - __m128
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 510
      start: 491
    functionDepth: 1
    functionLinenumber: 491
    functionLinenumberEnd: 510
    functionName: sigmoid4_approx
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 2
    functionsReached:
    - _mm_mul_ps
    - _mm_max_ps
    - _mm_min_ps
    - _mm_set1_ps
    - _mm_rcp_ps
    - _mm_fmadd_ps
    linkageType: ''
    returnType: __m128
    signature: __m128 sigmoid4_approx(__m128 X)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_set1_ps
      Src: /src/opus/dnn/vec_avx.h:516,1
    - Dst: tanh4_approx
      Src: /src/opus/dnn/vec_avx.h:517,1
    - Dst: _mm_storeu_ps
      Src: /src/opus/dnn/vec_avx.h:518,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 520
      start: 512
    functionDepth: 0
    functionLinenumber: 512
    functionLinenumberEnd: 520
    functionName: tanh_approx
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 2
    functionsReached:
    - _mm_storeu_ps
    - tanh4_approx
    - _mm_set1_ps
    linkageType: ''
    returnType: float
    signature: float tanh_approx(float x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_set1_ps
      Src: /src/opus/dnn/vec_avx.h:526,1
    - Dst: sigmoid4_approx
      Src: /src/opus/dnn/vec_avx.h:527,1
    - Dst: _mm_storeu_ps
      Src: /src/opus/dnn/vec_avx.h:528,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 530
      start: 522
    functionDepth: 0
    functionLinenumber: 522
    functionLinenumberEnd: 530
    functionName: sigmoid_approx
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 3
    functionsReached:
    - _mm_storeu_ps
    - sigmoid4_approx
    - _mm_set1_ps
    linkageType: ''
    returnType: float
    signature: float sigmoid_approx(float x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm256_set1_ps
      Src: /src/opus/dnn/vec_avx.h:538,1
    - Dst: exp8_approx
      Src: /src/opus/dnn/vec_avx.h:539,1
    - Dst: _mm256_storeu_ps
      Src: /src/opus/dnn/vec_avx.h:540,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 542
      start: 534
    functionDepth: 2
    functionLinenumber: 534
    functionLinenumberEnd: 542
    functionName: lpcnet_exp
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 4
    functionsReached:
    - exp8_approx
    - _mm256_set1_ps
    - _mm256_storeu_ps
    linkageType: ''
    returnType: float
    signature: float lpcnet_exp(float x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm256_loadu_ps
      Src: /src/opus/dnn/vec_avx.h:550,1
    - Dst: exp8_approx
      Src: /src/opus/dnn/vec_avx.h:551,1
    - Dst: _mm256_storeu_ps
      Src: /src/opus/dnn/vec_avx.h:552,1
    - Dst: lpcnet_exp
      Src: /src/opus/dnn/vec_avx.h:555,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - y
    - x
    - N
    argTypes:
    - float*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 556
      start: 544
    functionDepth: 2
    functionLinenumber: 544
    functionLinenumberEnd: 556
    functionName: softmax
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - exp8_approx
    - lpcnet_exp
    - _mm256_loadu_ps
    - _mm256_storeu_ps
    linkageType: ''
    returnType: void
    signature: void softmax(float *y, const float *x, int N)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm256_loadu_ps
      Src: /src/opus/dnn/vec_avx.h:565,1
    - Dst: tanh8_approx
      Src: /src/opus/dnn/vec_avx.h:566,1
    - Dst: _mm256_storeu_ps
      Src: /src/opus/dnn/vec_avx.h:567,1
    - Dst: tanh_approx
      Src: /src/opus/dnn/vec_avx.h:571,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - y
    - x
    - N
    argTypes:
    - float*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 573
      start: 559
    functionDepth: 2
    functionLinenumber: 559
    functionLinenumberEnd: 573
    functionName: vec_tanh
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - tanh_approx
    - _mm256_loadu_ps
    - tanh8_approx
    - _mm256_storeu_ps
    linkageType: ''
    returnType: void
    signature: void vec_tanh(float *y, const float *x, int N)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm256_loadu_ps
      Src: /src/opus/dnn/vec_avx.h:581,1
    - Dst: sigmoid8_approx
      Src: /src/opus/dnn/vec_avx.h:582,1
    - Dst: _mm256_storeu_ps
      Src: /src/opus/dnn/vec_avx.h:583,1
    - Dst: sigmoid_approx
      Src: /src/opus/dnn/vec_avx.h:587,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - y
    - x
    - N
    argTypes:
    - float*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 589
      start: 575
    functionDepth: 2
    functionLinenumber: 575
    functionLinenumberEnd: 589
    functionName: vec_sigmoid
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - sigmoid_approx
    - _mm256_loadu_ps
    - _mm256_storeu_ps
    - sigmoid8_approx
    linkageType: ''
    returnType: void
    signature: void vec_sigmoid(float *y, const float *x, int N)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_loadu_ps
      Src: /src/opus/dnn/vec_avx.h:597,1
    - Dst: tanh4_approx
      Src: /src/opus/dnn/vec_avx.h:598,1
    - Dst: _mm_storeu_ps
      Src: /src/opus/dnn/vec_avx.h:599,1
    - Dst: tanh_approx
      Src: /src/opus/dnn/vec_avx.h:603,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - y
    - x
    - N
    argTypes:
    - float*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 605
      start: 591
    functionDepth: 0
    functionLinenumber: 591
    functionLinenumberEnd: 605
    functionName: vec_tanh
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - _mm_storeu_ps
    - tanh4_approx
    - tanh_approx
    - _mm_loadu_ps
    linkageType: ''
    returnType: void
    signature: void vec_tanh(float *y, const float *x, int N)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_loadu_ps
      Src: /src/opus/dnn/vec_avx.h:613,1
    - Dst: sigmoid4_approx
      Src: /src/opus/dnn/vec_avx.h:614,1
    - Dst: _mm_storeu_ps
      Src: /src/opus/dnn/vec_avx.h:615,1
    - Dst: sigmoid_approx
      Src: /src/opus/dnn/vec_avx.h:619,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - y
    - x
    - N
    argTypes:
    - float*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 621
      start: 607
    functionDepth: 0
    functionLinenumber: 607
    functionLinenumberEnd: 621
    functionName: vec_sigmoid
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - _mm_storeu_ps
    - sigmoid_approx
    - sigmoid4_approx
    - _mm_loadu_ps
    linkageType: ''
    returnType: void
    signature: void vec_sigmoid(float *y, const float *x, int N)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - src
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 628
      start: 627
    functionDepth: 0
    functionLinenumber: 627
    functionLinenumberEnd: 628
    functionName: opus_mm256_dpbusds_epi32
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: opus_mm256_dpbusds_epi32(src, a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm256_set1_epi16
      Src: /src/opus/dnn/vec_avx.h:633,1
    - Dst: _mm256_maddubs_epi16
      Src: /src/opus/dnn/vec_avx.h:634,1
    - Dst: _mm256_madd_epi16
      Src: /src/opus/dnn/vec_avx.h:635,1
    - Dst: _mm256_add_epi32
      Src: /src/opus/dnn/vec_avx.h:636,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - src
    - a
    - b
    argTypes:
    - __m256i
    - __m256i
    - __m256i
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 637
      start: 631
    functionDepth: 1
    functionLinenumber: 631
    functionLinenumberEnd: 637
    functionName: opus_mm256_dpbusds_epi32
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - _mm256_add_epi32
    - _mm256_set1_epi16
    - _mm256_maddubs_epi16
    - _mm256_madd_epi16
    linkageType: ''
    returnType: __m256i
    signature: __m256i opus_mm256_dpbusds_epi32(__m256i src, __m256i a, __m256i b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm256_set1_epi16
      Src: /src/opus/dnn/vec_avx.h:643,1
    - Dst: _mm256_maddubs_epi16
      Src: /src/opus/dnn/vec_avx.h:644,1
    - Dst: _mm256_madd_epi16
      Src: /src/opus/dnn/vec_avx.h:645,1
    - Dst: _mm256_add_epi32
      Src: /src/opus/dnn/vec_avx.h:646,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - src
    - a
    - b
    argTypes:
    - mm256i_emu
    - mm256i_emu
    - mm256i_emu
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 647
      start: 641
    functionDepth: 1
    functionLinenumber: 641
    functionLinenumberEnd: 647
    functionName: opus_mm256_dpbusds_epi32
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - _mm256_add_epi32
    - _mm256_set1_epi16
    - _mm256_maddubs_epi16
    - _mm256_madd_epi16
    linkageType: ''
    returnType: mm256i_emu
    signature: mm256i_emu opus_mm256_dpbusds_epi32(mm256i_emu src, mm256i_emu a, mm256i_emu
      b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_srli_epi16
      Src: /src/opus/dnn/vec_avx.h:653,1
    - Dst: _mm_srai_epi16
      Src: /src/opus/dnn/vec_avx.h:654,1
    - Dst: _mm_srli_epi16
      Src: /src/opus/dnn/vec_avx.h:655,1
    - Dst: _mm_slli_epi16
      Src: /src/opus/dnn/vec_avx.h:655,1
    - Dst: _mm_srai_epi16
      Src: /src/opus/dnn/vec_avx.h:656,1
    - Dst: _mm_slli_epi16
      Src: /src/opus/dnn/vec_avx.h:656,1
    - Dst: _mm_add_epi32
      Src: /src/opus/dnn/vec_avx.h:657,1
    - Dst: _mm_madd_epi16
      Src: /src/opus/dnn/vec_avx.h:657,1
    - Dst: _mm_madd_epi16
      Src: /src/opus/dnn/vec_avx.h:657,1
    - Dst: _mm_add_epi32
      Src: /src/opus/dnn/vec_avx.h:658,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - src
    - a
    - b
    argTypes:
    - __m128i
    - __m128i
    - __m128i
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 659
      start: 651
    functionDepth: 0
    functionLinenumber: 651
    functionLinenumberEnd: 659
    functionName: mm_dpbusds_epi32
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - _mm_srli_epi16
    - _mm_add_epi32
    - _mm_slli_epi16
    - _mm_madd_epi16
    - _mm_srai_epi16
    linkageType: ''
    returnType: __m128i
    signature: __m128i mm_dpbusds_epi32(__m128i src, __m128i a, __m128i b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mm_dpbusds_epi32
      Src: /src/opus/dnn/vec_avx.h:663,1
    - Dst: mm_dpbusds_epi32
      Src: /src/opus/dnn/vec_avx.h:664,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - src
    - a
    - b
    argTypes:
    - mm256i_emu
    - mm256i_emu
    - mm256i_emu
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 666
      start: 661
    functionDepth: 1
    functionLinenumber: 661
    functionLinenumberEnd: 666
    functionName: opus_mm256_dpbusds_epi32
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - mm_dpbusds_epi32
    linkageType: ''
    returnType: mm256i_emu
    signature: mm256i_emu opus_mm256_dpbusds_epi32(mm256i_emu src, mm256i_emu a, mm256i_emu
      b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm256_setzero_ps
      Src: /src/opus/dnn/vec_avx.h:683,1
    - Dst: _mm256_setzero_ps
      Src: /src/opus/dnn/vec_avx.h:684,1
    - Dst: _mm256_broadcast_ss
      Src: /src/opus/dnn/vec_avx.h:689,1
    - Dst: _mm256_loadu_ps
      Src: /src/opus/dnn/vec_avx.h:691,1
    - Dst: _mm256_fmadd_ps
      Src: /src/opus/dnn/vec_avx.h:692,1
    - Dst: _mm256_loadu_ps
      Src: /src/opus/dnn/vec_avx.h:694,1
    - Dst: _mm256_fmadd_ps
      Src: /src/opus/dnn/vec_avx.h:695,1
    - Dst: _mm256_storeu_ps
      Src: /src/opus/dnn/vec_avx.h:697,1
    - Dst: _mm256_storeu_ps
      Src: /src/opus/dnn/vec_avx.h:698,1
    - Dst: _mm256_setzero_ps
      Src: /src/opus/dnn/vec_avx.h:705,1
    - Dst: _mm256_broadcast_ss
      Src: /src/opus/dnn/vec_avx.h:710,1
    - Dst: _mm256_loadu_ps
      Src: /src/opus/dnn/vec_avx.h:712,1
    - Dst: _mm256_fmadd_ps
      Src: /src/opus/dnn/vec_avx.h:713,1
    - Dst: _mm256_storeu_ps
      Src: /src/opus/dnn/vec_avx.h:715,1
    - Dst: _mm_setzero_ps
      Src: /src/opus/dnn/vec_avx.h:722,1
    - Dst: _mm_set1_ps
      Src: /src/opus/dnn/vec_avx.h:727,1
    - Dst: _mm_loadu_ps
      Src: /src/opus/dnn/vec_avx.h:729,1
    - Dst: _mm_fmadd_ps
      Src: /src/opus/dnn/vec_avx.h:730,1
    - Dst: _mm_storeu_ps
      Src: /src/opus/dnn/vec_avx.h:732,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 41
    argCount: 6
    argNames:
    - out
    - weights
    - rows
    - cols
    - col_stride
    - x
    argTypes:
    - float*
    - float*
    - int
    - int
    - int
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 739
      start: 674
    functionDepth: 1
    functionLinenumber: 674
    functionLinenumberEnd: 739
    functionName: sgemv
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - _mm256_fmadd_ps
    - _mm256_broadcast_ss
    - _mm_storeu_ps
    - _mm_setzero_ps
    - _mm_loadu_ps
    - _mm256_setzero_ps
    - _mm256_storeu_ps
    - _mm_set1_ps
    - _mm256_loadu_ps
    - _mm_fmadd_ps
    linkageType: ''
    returnType: void
    signature: void sgemv(float *out, const float *weights, int rows, int cols, int
      col_stride, const float *x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm256_setzero_ps
      Src: /src/opus/dnn/vec_avx.h:750,1
    - Dst: _mm256_broadcast_ss
      Src: /src/opus/dnn/vec_avx.h:758,1
    - Dst: _mm256_loadu_ps
      Src: /src/opus/dnn/vec_avx.h:759,1
    - Dst: _mm256_fmadd_ps
      Src: /src/opus/dnn/vec_avx.h:760,1
    - Dst: _mm256_broadcast_ss
      Src: /src/opus/dnn/vec_avx.h:762,1
    - Dst: _mm256_loadu_ps
      Src: /src/opus/dnn/vec_avx.h:763,1
    - Dst: _mm256_fmadd_ps
      Src: /src/opus/dnn/vec_avx.h:764,1
    - Dst: _mm256_broadcast_ss
      Src: /src/opus/dnn/vec_avx.h:766,1
    - Dst: _mm256_loadu_ps
      Src: /src/opus/dnn/vec_avx.h:767,1
    - Dst: _mm256_fmadd_ps
      Src: /src/opus/dnn/vec_avx.h:768,1
    - Dst: _mm256_broadcast_ss
      Src: /src/opus/dnn/vec_avx.h:770,1
    - Dst: _mm256_loadu_ps
      Src: /src/opus/dnn/vec_avx.h:771,1
    - Dst: _mm256_fmadd_ps
      Src: /src/opus/dnn/vec_avx.h:772,1
    - Dst: _mm256_storeu_ps
      Src: /src/opus/dnn/vec_avx.h:776,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 23
    argCount: 5
    argNames:
    - out
    - weights
    - idx
    - rows
    - x
    argTypes:
    - float*
    - float*
    - int*
    - int
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 778
      start: 741
    functionDepth: 1
    functionLinenumber: 741
    functionLinenumberEnd: 778
    functionName: sparse_sgemv8x4
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - _mm256_fmadd_ps
    - _mm256_broadcast_ss
    - _mm256_setzero_ps
    - _mm256_storeu_ps
    - _mm256_loadu_ps
    linkageType: ''
    returnType: void
    signature: void sparse_sgemv8x4(float *out, const float *weights, const int *idx,
      int rows, const float *x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vector_ps_to_epi8
      Src: /src/opus/dnn/vec_avx.h:785,1
    - Dst: _mm256_setzero_si256
      Src: /src/opus/dnn/vec_avx.h:792,1
    - Dst: _mm256_broadcastd_epi32
      Src: /src/opus/dnn/vec_avx.h:799,1
    - Dst: _mm_loadu_si32
      Src: /src/opus/dnn/vec_avx.h:799,1
    - Dst: _mm256_loadu_si256
      Src: /src/opus/dnn/vec_avx.h:800,1
    - Dst: opus_mm256_dpbusds_epi32
      Src: /src/opus/dnn/vec_avx.h:801,1
    - Dst: _mm256_broadcastd_epi32
      Src: /src/opus/dnn/vec_avx.h:803,1
    - Dst: _mm_loadu_si32
      Src: /src/opus/dnn/vec_avx.h:803,1
    - Dst: _mm256_loadu_si256
      Src: /src/opus/dnn/vec_avx.h:804,1
    - Dst: opus_mm256_dpbusds_epi32
      Src: /src/opus/dnn/vec_avx.h:805,1
    - Dst: _mm256_broadcastd_epi32
      Src: /src/opus/dnn/vec_avx.h:807,1
    - Dst: _mm_loadu_si32
      Src: /src/opus/dnn/vec_avx.h:807,1
    - Dst: _mm256_loadu_si256
      Src: /src/opus/dnn/vec_avx.h:808,1
    - Dst: opus_mm256_dpbusds_epi32
      Src: /src/opus/dnn/vec_avx.h:809,1
    - Dst: _mm256_broadcastd_epi32
      Src: /src/opus/dnn/vec_avx.h:811,1
    - Dst: _mm_loadu_si32
      Src: /src/opus/dnn/vec_avx.h:811,1
    - Dst: _mm256_loadu_si256
      Src: /src/opus/dnn/vec_avx.h:812,1
    - Dst: opus_mm256_dpbusds_epi32
      Src: /src/opus/dnn/vec_avx.h:813,1
    - Dst: _mm256_broadcastd_epi32
      Src: /src/opus/dnn/vec_avx.h:821,1
    - Dst: _mm_loadu_si32
      Src: /src/opus/dnn/vec_avx.h:821,1
    - Dst: _mm256_loadu_si256
      Src: /src/opus/dnn/vec_avx.h:822,1
    - Dst: opus_mm256_dpbusds_epi32
      Src: /src/opus/dnn/vec_avx.h:823,1
    - Dst: _mm256_cvtepi32_ps
      Src: /src/opus/dnn/vec_avx.h:826,1
    - Dst: _mm256_mul_ps
      Src: /src/opus/dnn/vec_avx.h:827,1
    - Dst: _mm256_loadu_ps
      Src: /src/opus/dnn/vec_avx.h:827,1
    - Dst: _mm256_storeu_ps
      Src: /src/opus/dnn/vec_avx.h:828,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 34
    argCount: 7
    argNames:
    - _out
    - w
    - idx
    - scale
    - rows
    - cols
    - _x
    argTypes:
    - float*
    - opus_int8*
    - int*
    - float*
    - int
    - int
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 830
      start: 780
    functionDepth: 2
    functionLinenumber: 780
    functionLinenumberEnd: 830
    functionName: sparse_cgemv8x4
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - _mm256_setzero_si256
    - opus_mm256_dpbusds_epi32
    - _mm256_cvtepi32_ps
    - _mm_loadu_si32
    - _mm256_mul_ps
    - _mm256_loadu_si256
    - _mm256_storeu_ps
    - vector_ps_to_epi8
    - _mm256_broadcastd_epi32
    - _mm256_loadu_ps
    linkageType: ''
    returnType: void
    signature: void sparse_cgemv8x4(float *_out, const opus_int8 *w, const int *idx,
      const float *scale, int rows, int cols, const float *_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vector_ps_to_epi8
      Src: /src/opus/dnn/vec_avx.h:836,1
    - Dst: _mm256_setzero_si256
      Src: /src/opus/dnn/vec_avx.h:841,1
    - Dst: _mm256_broadcastd_epi32
      Src: /src/opus/dnn/vec_avx.h:848,1
    - Dst: _mm_loadu_si32
      Src: /src/opus/dnn/vec_avx.h:848,1
    - Dst: _mm256_loadu_si256
      Src: /src/opus/dnn/vec_avx.h:849,1
    - Dst: opus_mm256_dpbusds_epi32
      Src: /src/opus/dnn/vec_avx.h:850,1
    - Dst: _mm256_broadcastd_epi32
      Src: /src/opus/dnn/vec_avx.h:852,1
    - Dst: _mm_loadu_si32
      Src: /src/opus/dnn/vec_avx.h:852,1
    - Dst: _mm256_loadu_si256
      Src: /src/opus/dnn/vec_avx.h:853,1
    - Dst: opus_mm256_dpbusds_epi32
      Src: /src/opus/dnn/vec_avx.h:854,1
    - Dst: _mm256_broadcastd_epi32
      Src: /src/opus/dnn/vec_avx.h:856,1
    - Dst: _mm_loadu_si32
      Src: /src/opus/dnn/vec_avx.h:856,1
    - Dst: _mm256_loadu_si256
      Src: /src/opus/dnn/vec_avx.h:857,1
    - Dst: opus_mm256_dpbusds_epi32
      Src: /src/opus/dnn/vec_avx.h:858,1
    - Dst: _mm256_broadcastd_epi32
      Src: /src/opus/dnn/vec_avx.h:860,1
    - Dst: _mm_loadu_si32
      Src: /src/opus/dnn/vec_avx.h:860,1
    - Dst: _mm256_loadu_si256
      Src: /src/opus/dnn/vec_avx.h:861,1
    - Dst: opus_mm256_dpbusds_epi32
      Src: /src/opus/dnn/vec_avx.h:862,1
    - Dst: _mm256_broadcastd_epi32
      Src: /src/opus/dnn/vec_avx.h:870,1
    - Dst: _mm_loadu_si32
      Src: /src/opus/dnn/vec_avx.h:870,1
    - Dst: _mm256_loadu_si256
      Src: /src/opus/dnn/vec_avx.h:871,1
    - Dst: opus_mm256_dpbusds_epi32
      Src: /src/opus/dnn/vec_avx.h:872,1
    - Dst: _mm256_cvtepi32_ps
      Src: /src/opus/dnn/vec_avx.h:875,1
    - Dst: _mm256_mul_ps
      Src: /src/opus/dnn/vec_avx.h:876,1
    - Dst: _mm256_loadu_ps
      Src: /src/opus/dnn/vec_avx.h:876,1
    - Dst: _mm256_storeu_ps
      Src: /src/opus/dnn/vec_avx.h:877,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 33
    argCount: 6
    argNames:
    - _out
    - w
    - scale
    - rows
    - cols
    - _x
    argTypes:
    - float*
    - opus_int8*
    - float*
    - int
    - int
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 879
      start: 831
    functionDepth: 2
    functionLinenumber: 831
    functionLinenumberEnd: 879
    functionName: cgemv8x4
    functionSourceFile: /src/opus/dnn/vec_avx.h
    functionUses: 0
    functionsReached:
    - _mm256_setzero_si256
    - opus_mm256_dpbusds_epi32
    - _mm256_cvtepi32_ps
    - _mm_loadu_si32
    - _mm256_mul_ps
    - _mm256_loadu_si256
    - _mm256_storeu_ps
    - vector_ps_to_epi8
    - _mm256_broadcastd_epi32
    - _mm256_loadu_ps
    linkageType: ''
    returnType: void
    signature: void cgemv8x4(float *_out, const opus_int8 *w, const float *scale,
      int rows, int cols, const float *_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/opus/dnn/dred_encoder.c:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - enc_state
    argTypes:
    - RDOVAEEncState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionName: DRED_rdovae_init_encoder
    functionSourceFile: /src/opus/dnn/dred_encoder.c
    functionUses: 0
    functionsReached:
    - memset
    linkageType: ''
    returnType: void
    signature: void DRED_rdovae_init_encoder(RDOVAEEncState *enc_state)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: parse_weights
      Src: /src/opus/dnn/dred_encoder.c:59,1
    - Dst: init_rdovaeenc
      Src: /src/opus/dnn/dred_encoder.c:60,1
    - Dst: opus_free
      Src: /src/opus/dnn/dred_encoder.c:61,1
    - Dst: lpcnet_encoder_load_model
      Src: /src/opus/dnn/dred_encoder.c:63,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 3
    argNames:
    - enc
    - data
    - len
    argTypes:
    - DREDEnc*
    - void*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 67
    functionName: dred_encoder_load_model
    functionSourceFile: /src/opus/dnn/dred_encoder.c
    functionUses: 1
    functionsReached:
    - parse_weights
    - init_rdovaeenc
    - opus_free
    - lpcnet_encoder_load_model
    linkageType: ''
    returnType: int
    signature: int dred_encoder_load_model(DREDEnc* enc, const void *data, int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/dred_encoder.c:71,1
    - Dst: lpcnet_encoder_init
      Src: /src/opus/dnn/dred_encoder.c:75,1
    - Dst: DRED_rdovae_init_encoder
      Src: /src/opus/dnn/dred_encoder.c:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - enc
    argTypes:
    - DREDEnc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 77
    functionName: dred_encoder_reset
    functionSourceFile: /src/opus/dnn/dred_encoder.c
    functionUses: 1
    functionsReached:
    - DRED_rdovae_init_encoder
    - lpcnet_encoder_init
    - OPUS_CLEAR
    linkageType: ''
    returnType: void
    signature: void dred_encoder_reset(DREDEnc* enc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: init_rdovaeenc
      Src: /src/opus/dnn/dred_encoder.c:85,1
    - Dst: dred_encoder_reset
      Src: /src/opus/dnn/dred_encoder.c:87,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - enc
    - Fs
    - channels
    argTypes:
    - DREDEnc*
    - opus_int32
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 79
    functionDepth: 2
    functionLinenumber: 79
    functionLinenumberEnd: 88
    functionName: dred_encoder_init
    functionSourceFile: /src/opus/dnn/dred_encoder.c
    functionUses: 1
    functionsReached:
    - init_rdovaeenc
    - dred_encoder_reset
    linkageType: ''
    returnType: void
    signature: void dred_encoder_init(DREDEnc* enc, opus_int32 Fs, int channels)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/dnn/dred_encoder.c:95,1
    - Dst: OPUS_MOVE
      Src: /src/opus/dnn/dred_encoder.c:97,1
    - Dst: OPUS_MOVE
      Src: /src/opus/dnn/dred_encoder.c:98,1
    - Dst: lpcnet_compute_single_frame_features_float
      Src: /src/opus/dnn/dred_encoder.c:101,1
    - Dst: lpcnet_compute_single_frame_features_float
      Src: /src/opus/dnn/dred_encoder.c:102,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/dred_encoder.c:105,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/dred_encoder.c:106,1
    - Dst: dred_rdovae_encode_dframe
      Src: /src/opus/dnn/dred_encoder.c:109,1
    - Dst: IMIN
      Src: /src/opus/dnn/dred_encoder.c:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 2
    argNames:
    - enc
    - arch
    argTypes:
    - DREDEnc*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 111
    functionName: dred_process_frame
    functionSourceFile: /src/opus/dnn/dred_encoder.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - dred_rdovae_encode_dframe
    - IMIN
    - OPUS_COPY
    - OPUS_MOVE
    - lpcnet_compute_single_frame_features_float
    linkageType: ''
    returnType: void
    signature: void dred_process_frame(DREDEnc *enc, int arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 8
    argNames:
    - in
    - out
    - len
    - b0
    - b
    - a
    - order
    - mem
    argTypes:
    - float*
    - float*
    - int
    - float
    - float*
    - float*
    - int
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 129
    functionName: filter_df2t
    functionSourceFile: /src/opus/dnn/dred_encoder.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void filter_df2t(const float *in, float *out, int len, float b0, const
      float *b, const float *a, int order, float *mem)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/dnn/dred_encoder.c:141,1
    - Dst: celt_assert
      Src: /src/opus/dnn/dred_encoder.c:142,1
    - Dst: celt_assert
      Src: /src/opus/dnn/dred_encoder.c:165,1
    - Dst: celt_assert
      Src: /src/opus/dnn/dred_encoder.c:167,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/dred_encoder.c:168,1
    - Dst: FLOAT2INT16
      Src: /src/opus/dnn/dred_encoder.c:170,1
    - Dst: FLOAT2INT16
      Src: /src/opus/dnn/dred_encoder.c:172,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/dred_encoder.c:175,1
    - Dst: filter_df2t
      Src: /src/opus/dnn/dred_encoder.c:182,1
    - Dst: filter_df2t
      Src: /src/opus/dnn/dred_encoder.c:189,1
    - Dst: filter_df2t
      Src: /src/opus/dnn/dred_encoder.c:196,1
    - Dst: filter_df2t
      Src: /src/opus/dnn/dred_encoder.c:203,1
    - Dst: celt_assert
      Src: /src/opus/dnn/dred_encoder.c:207,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 57
    argCount: 5
    argNames:
    - enc
    - in
    - in_len
    - out
    - out_len
    argTypes:
    - DREDEnc*
    - float*
    - int
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 136
    functionDepth: 1
    functionLinenumber: 136
    functionLinenumberEnd: 209
    functionName: dred_convert_to_16k
    functionSourceFile: /src/opus/dnn/dred_encoder.c
    functionUses: 0
    functionsReached:
    - FLOAT2INT16
    - celt_assert
    - OPUS_CLEAR
    - OPUS_COPY
    - filter_df2t
    linkageType: ''
    returnType: void
    signature: void dred_convert_to_16k(DREDEnc *enc, const float *in, int in_len,
      float *out, int out_len)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/dnn/dred_encoder.c:215,1
    - Dst: floor
      Src: /src/opus/dnn/dred_encoder.c:217,1
    - Dst: IMIN
      Src: /src/opus/dnn/dred_encoder.c:222,1
    - Dst: dred_convert_to_16k
      Src: /src/opus/dnn/dred_encoder.c:224,1
    - Dst: dred_process_frame
      Src: /src/opus/dnn/dred_encoder.c:229,1
    - Dst: OPUS_MOVE
      Src: /src/opus/dnn/dred_encoder.c:231,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 5
    argNames:
    - enc
    - pcm
    - frame_size
    - extra_delay
    - arch
    argTypes:
    - DREDEnc*
    - float*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 211
    functionDepth: 2
    functionLinenumber: 211
    functionLinenumberEnd: 243
    functionName: dred_compute_latents
    functionSourceFile: /src/opus/dnn/dred_encoder.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - IMIN
    - dred_convert_to_16k
    - OPUS_MOVE
    - floor
    - dred_process_frame
    linkageType: ''
    returnType: void
    signature: void dred_compute_latents(DREDEnc *enc, const float *pcm, int frame_size,
      int extra_delay, int arch)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: IMAX
      Src: /src/opus/dnn/dred_encoder.c:247,1
    - Dst: IMAX
      Src: /src/opus/dnn/dred_encoder.c:248,1
    - Dst: IMAX
      Src: /src/opus/dnn/dred_encoder.c:249,1
    - Dst: IMAX
      Src: /src/opus/dnn/dred_encoder.c:250,1
    - Dst: compute_activation
      Src: /src/opus/dnn/dred_encoder.c:259,1
    - Dst: floor
      Src: /src/opus/dnn/dred_encoder.c:262,1
    - Dst: ec_laplace_encode_p0
      Src: /src/opus/dnn/dred_encoder.c:267,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 8
    argNames:
    - enc
    - x
    - scale
    - dzone
    - r
    - p0
    - dim
    - arch
    argTypes:
    - ec_enc*
    - float*
    - opus_uint8*
    - opus_uint8*
    - opus_uint8*
    - opus_uint8*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 245
    functionDepth: 1
    functionLinenumber: 245
    functionLinenumberEnd: 269
    functionName: dred_encode_latents
    functionSourceFile: /src/opus/dnn/dred_encoder.c
    functionUses: 0
    functionsReached:
    - compute_activation
    - IMAX
    - ec_laplace_encode_p0
    - floor
    linkageType: ''
    returnType: void
    signature: void dred_encode_latents(ec_enc *enc, const float *x, const opus_uint8
      *scale, const opus_uint8 *dzone, const opus_uint8 *r, const opus_uint8 *p0,
      int dim, int arch)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - activity_mem
    - offset
    argTypes:
    - unsigned char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 277
      start: 271
    functionDepth: 0
    functionLinenumber: 271
    functionLinenumberEnd: 277
    functionName: dred_voice_active
    functionSourceFile: /src/opus/dnn/dred_encoder.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int dred_voice_active(const unsigned char *activity_mem, int offset)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: dred_voice_active
      Src: /src/opus/dnn/dred_encoder.c:303,1
    - Dst: ec_enc_init
      Src: /src/opus/dnn/dred_encoder.c:310,1
    - Dst: ec_enc_uint
      Src: /src/opus/dnn/dred_encoder.c:311,1
    - Dst: ec_enc_uint
      Src: /src/opus/dnn/dred_encoder.c:312,1
    - Dst: celt_assert
      Src: /src/opus/dnn/dred_encoder.c:314,1
    - Dst: ec_enc_uint
      Src: /src/opus/dnn/dred_encoder.c:316,1
    - Dst: ec_enc_uint
      Src: /src/opus/dnn/dred_encoder.c:317,1
    - Dst: ec_enc_uint
      Src: /src/opus/dnn/dred_encoder.c:318,1
    - Dst: ec_enc_uint
      Src: /src/opus/dnn/dred_encoder.c:320,1
    - Dst: ec_enc_uint
      Src: /src/opus/dnn/dred_encoder.c:321,1
    - Dst: celt_assert
      Src: /src/opus/dnn/dred_encoder.c:323,1
    - Dst: celt_assert
      Src: /src/opus/dnn/dred_encoder.c:327,1
    - Dst: ec_encode
      Src: /src/opus/dnn/dred_encoder.c:329,1
    - Dst: dred_encode_latents
      Src: /src/opus/dnn/dred_encoder.c:333,1
    - Dst: ec_tell
      Src: /src/opus/dnn/dred_encoder.c:342,1
    - Dst: IMIN
      Src: /src/opus/dnn/dred_encoder.c:346,1
    - Dst: compute_quantizer
      Src: /src/opus/dnn/dred_encoder.c:349,1
    - Dst: dred_encode_latents
      Src: /src/opus/dnn/dred_encoder.c:352,1
    - Dst: ec_tell
      Src: /src/opus/dnn/dred_encoder.c:362,1
    - Dst: dred_voice_active
      Src: /src/opus/dnn/dred_encoder.c:367,1
    - Dst: ec_tell
      Src: /src/opus/dnn/dred_encoder.c:378,1
    - Dst: ec_enc_shrink
      Src: /src/opus/dnn/dred_encoder.c:379,1
    - Dst: ec_enc_done
      Src: /src/opus/dnn/dred_encoder.c:380,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 61
    argCount: 9
    argNames:
    - enc
    - buf
    - max_chunks
    - max_bytes
    - q0
    - dQ
    - qmax
    - activity_mem
    - arch
    argTypes:
    - DREDEnc*
    - unsigned char*
    - int
    - int
    - int
    - int
    - int
    - unsigned char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 382
      start: 279
    functionDepth: 2
    functionLinenumber: 279
    functionLinenumberEnd: 382
    functionName: dred_encode_silk_frame
    functionSourceFile: /src/opus/dnn/dred_encoder.c
    functionUses: 1
    functionsReached:
    - ec_enc_init
    - ec_enc_uint
    - celt_assert
    - ec_tell
    - IMIN
    - ec_enc_shrink
    - ec_enc_done
    - ec_encode
    - dred_encode_latents
    - compute_quantizer
    - dred_voice_active
    linkageType: ''
    returnType: int
    signature: int dred_encode_silk_frame(DREDEnc *enc, unsigned char *buf, int max_chunks,
      int max_bytes, int q0, int dQ, int qmax, unsigned char *activity_mem, int arch)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/opus/dnn/test_vec.c:58,1
    - Dst: sgemv_accum16
      Src: /src/opus/dnn/test_vec.c:71,1
    - Dst: sgemv_accum16_fast
      Src: /src/opus/dnn/test_vec.c:72,1
    - Dst: printf
      Src: /src/opus/dnn/test_vec.c:76,1
    - Dst: printf
      Src: /src/opus/dnn/test_vec.c:78,1
    - Dst: printf
      Src: /src/opus/dnn/test_vec.c:85,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 87
    functionName: test_sgemv_accum16
    functionSourceFile: /src/opus/dnn/test_vec.c
    functionUses: 0
    functionsReached:
    - sgemv_accum16_fast
    - sgemv_accum16
    - printf
    linkageType: ''
    returnType: int
    signature: int test_sgemv_accum16()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/opus/dnn/test_vec.c:98,1
    - Dst: sparse_sgemv_accum16
      Src: /src/opus/dnn/test_vec.c:105,1
    - Dst: sparse_sgemv_accum16_fast
      Src: /src/opus/dnn/test_vec.c:106,1
    - Dst: printf
      Src: /src/opus/dnn/test_vec.c:110,1
    - Dst: printf
      Src: /src/opus/dnn/test_vec.c:112,1
    - Dst: printf
      Src: /src/opus/dnn/test_vec.c:119,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 121
    functionName: test_sparse_sgemv_accum16
    functionSourceFile: /src/opus/dnn/test_vec.c
    functionUses: 0
    functionsReached:
    - sparse_sgemv_accum16_fast
    - sparse_sgemv_accum16
    - printf
    linkageType: ''
    returnType: int
    signature: int test_sparse_sgemv_accum16()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/opus/dnn/test_vec.c:124,1
    - Dst: test_sgemv_accum16
      Src: /src/opus/dnn/test_vec.c:125,1
    - Dst: test_sparse_sgemv_accum16
      Src: /src/opus/dnn/test_vec.c:126,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 123
    functionDepth: 1
    functionLinenumber: 123
    functionLinenumberEnd: 128
    functionName: main
    functionSourceFile: /src/opus/dnn/test_vec.c
    functionUses: 0
    functionsReached:
    - test_sparse_sgemv_accum16
    - test_sgemv_accum16
    - printf
    linkageType: ''
    returnType: int
    signature: int main()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/opus/dnn/burg.c:66,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - data
    - dataSize
    argTypes:
    - float*
    - int
    assertStmts:
    - condition: ( result >= 0.0 )
      pos:
        line_end: 65
        line_start: 65
        source_file: /src/opus/dnn/burg.c
    constantsTouched: []
    func_position:
      end: 68
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 68
    functionName: silk_energy_FLP
    functionSourceFile: /src/opus/dnn/burg.c
    functionUses: 8
    functionsReached:
    - assert
    linkageType: ''
    returnType: double
    signature: "double silk_energy_FLP(\n    const float    *data,\n    int            dataSize\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - data1
    - data2
    - dataSize
    argTypes:
    - float*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 95
    functionName: silk_inner_product_FLP
    functionSourceFile: /src/opus/dnn/burg.c
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: double
    signature: "double silk_inner_product_FLP(\n    const float    *data1,\n    const
      float    *data2,\n    int            dataSize\n)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/opus/dnn/burg.c:115,1
    - Dst: silk_energy_FLP
      Src: /src/opus/dnn/burg.c:118,1
    - Dst: memset
      Src: /src/opus/dnn/burg.c:119,1
    - Dst: silk_inner_product_FLP
      Src: /src/opus/dnn/burg.c:123,1
    - Dst: memcpy
      Src: /src/opus/dnn/burg.c:126,1
    - Dst: assert
      Src: /src/opus/dnn/burg.c:173,1
    - Dst: assert
      Src: /src/opus/dnn/burg.c:174,1
    - Dst: assert
      Src: /src/opus/dnn/burg.c:178,1
    - Dst: sqrt
      Src: /src/opus/dnn/burg.c:184,1
    - Dst: silk_energy_FLP
      Src: /src/opus/dnn/burg.c:227,1
    - Dst: MAX32
      Src: /src/opus/dnn/burg.c:245,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 103
    argCount: 6
    argNames:
    - A
    - x
    - minInvGain
    - subfr_length
    - nb_subfr
    - D
    argTypes:
    - float[]
    - float[]
    - float
    - int
    - int
    - int
    assertStmts:
    - condition: ( subfr_length * nb_subfr <= MAX_FRAME_SIZE )
      pos:
        line_end: 114
        line_start: 114
        source_file: /src/opus/dnn/burg.c
    - condition: ( nrg_f > 0.0 )
      pos:
        line_end: 172
        line_start: 172
        source_file: /src/opus/dnn/burg.c
    - condition: ( nrg_b > 0.0 )
      pos:
        line_end: 173
        line_start: 173
        source_file: /src/opus/dnn/burg.c
    - condition: ( rc > -1.0 && rc < 1.0 )
      pos:
        line_end: 177
        line_start: 177
        source_file: /src/opus/dnn/burg.c
    constantsTouched: []
    func_position:
      end: 246
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 246
    functionName: silk_burg_analysis
    functionSourceFile: /src/opus/dnn/burg.c
    functionUses: 0
    functionsReached:
    - memcpy
    - silk_inner_product_FLP
    - silk_energy_FLP
    - memset
    - assert
    - MAX32
    - sqrt
    linkageType: ''
    returnType: float
    signature: "float silk_burg_analysis(              /* O    returns residual energy
      \                                    */\n    float          A[],                /*
      O    prediction coefficients (length order)                      */\n    const
      float    x[],                /* I    input signal, length: nb_subfr*(D+L_sub)
      \                   */\n    const float    minInvGain,         /* I    minimum
      inverse prediction gain                             */\n    const int      subfr_length,
      \      /* I    input signal subframe length (incl. D preceding samples)    */\n
      \   const int      nb_subfr,           /* I    number of subframes stacked in
      x                            */\n    const int      D                   /* I
      \   order                                                       */\n)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/pitchdnn.c:32,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/pitchdnn.c:33,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/pitchdnn.c:35,1
    - Dst: compute_conv2d
      Src: /src/opus/dnn/pitchdnn.c:36,1
    - Dst: compute_conv2d
      Src: /src/opus/dnn/pitchdnn.c:37,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/pitchdnn.c:39,1
    - Dst: compute_generic_gru
      Src: /src/opus/dnn/pitchdnn.c:40,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/pitchdnn.c:41,1
    - Dst: IMAX
      Src: /src/opus/dnn/pitchdnn.c:48,1
    - Dst: IMIN
      Src: /src/opus/dnn/pitchdnn.c:48,1
    - Dst: exp
      Src: /src/opus/dnn/pitchdnn.c:49,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 4
    argNames:
    - st
    - if_features
    - xcorr_features
    - arch
    argTypes:
    - PitchDNNState*
    - float*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 12
    functionDepth: 1
    functionLinenumber: 12
    functionLinenumberEnd: 56
    functionName: compute_pitchdnn
    functionSourceFile: /src/opus/dnn/pitchdnn.c
    functionUses: 0
    functionsReached:
    - IMIN
    - compute_conv2d
    - OPUS_COPY
    - exp
    - IMAX
    - compute_generic_dense
    - compute_generic_gru
    linkageType: ''
    returnType: float
    signature: "float compute_pitchdnn(\n    PitchDNNState *st,\n    const float *if_features,\n
      \   const float *xcorr_features,\n    int arch\n    )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/pitchdnn.c:62,1
    - Dst: init_pitchdnn
      Src: /src/opus/dnn/pitchdnn.c:64,1
    - Dst: celt_assert
      Src: /src/opus/dnn/pitchdnn.c:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - st
    argTypes:
    - PitchDNNState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 69
    functionName: pitchdnn_init
    functionSourceFile: /src/opus/dnn/pitchdnn.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - OPUS_CLEAR
    - init_pitchdnn
    linkageType: ''
    returnType: void
    signature: void pitchdnn_init(PitchDNNState *st)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: parse_weights
      Src: /src/opus/dnn/pitchdnn.c:74,1
    - Dst: init_pitchdnn
      Src: /src/opus/dnn/pitchdnn.c:75,1
    - Dst: opus_free
      Src: /src/opus/dnn/pitchdnn.c:76,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - st
    - data
    - len
    argTypes:
    - PitchDNNState*
    - void*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 79
    functionName: pitchdnn_load_model
    functionSourceFile: /src/opus/dnn/pitchdnn.c
    functionUses: 0
    functionsReached:
    - parse_weights
    - init_pitchdnn
    - opus_free
    linkageType: ''
    returnType: int
    signature: int pitchdnn_load_model(PitchDNNState *st, const void *data, int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/dnn/fargan.c:50,1
    - Dst: celt_assert
      Src: /src/opus/dnn/fargan.c:51,1
    - Dst: celt_assert
      Src: /src/opus/dnn/fargan.c:52,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/fargan.c:53,1
    - Dst: IMAX
      Src: /src/opus/dnn/fargan.c:53,1
    - Dst: IMIN
      Src: /src/opus/dnn/fargan.c:53,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/fargan.c:54,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/fargan.c:56,1
    - Dst: compute_generic_conv1d
      Src: /src/opus/dnn/fargan.c:57,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/fargan.c:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 4
    argNames:
    - st
    - cond
    - features
    - period
    argTypes:
    - FARGANState*
    - float*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 59
    functionName: compute_fargan_cond
    functionSourceFile: /src/opus/dnn/fargan.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - IMIN
    - OPUS_COPY
    - compute_generic_conv1d
    - IMAX
    - compute_generic_dense
    linkageType: ''
    returnType: void
    signature: void compute_fargan_cond(FARGANState *st, float *cond, const float
      *features, int period)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - pcm
    - deemph_mem
    argTypes:
    - float*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 67
    functionName: fargan_deemphasis
    functionSourceFile: /src/opus/dnn/fargan.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void fargan_deemphasis(float *pcm, float *deemph_mem)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/dnn/fargan.c:85,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/fargan.c:88,1
    - Dst: exp
      Src: /src/opus/dnn/fargan.c:89,1
    - Dst: MIN32
      Src: /src/opus/dnn/fargan.c:94,1
    - Dst: MAX32
      Src: /src/opus/dnn/fargan.c:94,1
    - Dst: IMAX
      Src: /src/opus/dnn/fargan.c:94,1
    - Dst: MAX32
      Src: /src/opus/dnn/fargan.c:98,1
    - Dst: MIN16
      Src: /src/opus/dnn/fargan.c:98,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/fargan.c:100,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/fargan.c:101,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/fargan.c:102,1
    - Dst: compute_generic_conv1d
      Src: /src/opus/dnn/fargan.c:104,1
    - Dst: celt_assert
      Src: /src/opus/dnn/fargan.c:105,1
    - Dst: compute_glu
      Src: /src/opus/dnn/fargan.c:106,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/fargan.c:108,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/fargan.c:111,1
    - Dst: compute_generic_gru
      Src: /src/opus/dnn/fargan.c:112,1
    - Dst: compute_glu
      Src: /src/opus/dnn/fargan.c:113,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/fargan.c:116,1
    - Dst: compute_generic_gru
      Src: /src/opus/dnn/fargan.c:117,1
    - Dst: compute_glu
      Src: /src/opus/dnn/fargan.c:118,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/fargan.c:121,1
    - Dst: compute_generic_gru
      Src: /src/opus/dnn/fargan.c:122,1
    - Dst: compute_glu
      Src: /src/opus/dnn/fargan.c:123,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/fargan.c:125,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/fargan.c:126,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/fargan.c:127,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/fargan.c:129,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/fargan.c:131,1
    - Dst: compute_glu
      Src: /src/opus/dnn/fargan.c:132,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/fargan.c:134,1
    - Dst: OPUS_MOVE
      Src: /src/opus/dnn/fargan.c:137,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/fargan.c:138,1
    - Dst: fargan_deemphasis
      Src: /src/opus/dnn/fargan.c:139,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 51
    argCount: 4
    argNames:
    - st
    - pcm
    - cond
    - period
    argTypes:
    - FARGANState*
    - float*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 140
    functionName: run_fargan_subframe
    functionSourceFile: /src/opus/dnn/fargan.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - MIN32
    - OPUS_COPY
    - fargan_deemphasis
    - compute_generic_gru
    - OPUS_MOVE
    - compute_generic_conv1d
    - exp
    - MIN16
    - MAX32
    - IMAX
    - compute_generic_dense
    - compute_glu
    linkageType: ''
    returnType: void
    signature: void run_fargan_subframe(FARGANState *st, float *pcm, const float *cond,
      int period)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: floor
      Src: /src/opus/dnn/fargan.c:154,1
    - Dst: pow
      Src: /src/opus/dnn/fargan.c:154,1
    - Dst: compute_fargan_cond
      Src: /src/opus/dnn/fargan.c:155,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/fargan.c:163,1
    - Dst: run_fargan_subframe
      Src: /src/opus/dnn/fargan.c:167,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/fargan.c:168,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 3
    argNames:
    - st
    - pcm0
    - features0
    argTypes:
    - FARGANState*
    - float*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 142
    functionDepth: 2
    functionLinenumber: 142
    functionLinenumberEnd: 171
    functionName: fargan_cont
    functionSourceFile: /src/opus/dnn/fargan.c
    functionUses: 0
    functionsReached:
    - OPUS_COPY
    - floor
    - compute_fargan_cond
    - run_fargan_subframe
    - pow
    linkageType: ''
    returnType: void
    signature: void fargan_cont(FARGANState *st, const float *pcm0, const float *features0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/fargan.c:177,1
    - Dst: opus_select_arch
      Src: /src/opus/dnn/fargan.c:178,1
    - Dst: init_fargan
      Src: /src/opus/dnn/fargan.c:180,1
    - Dst: celt_assert
      Src: /src/opus/dnn/fargan.c:184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - st
    argTypes:
    - FARGANState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 174
    functionDepth: 1
    functionLinenumber: 174
    functionLinenumberEnd: 185
    functionName: fargan_init
    functionSourceFile: /src/opus/dnn/fargan.c
    functionUses: 0
    functionsReached:
    - init_fargan
    - celt_assert
    - OPUS_CLEAR
    - opus_select_arch
    linkageType: ''
    returnType: void
    signature: void fargan_init(FARGANState *st)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: parse_weights
      Src: /src/opus/dnn/fargan.c:190,1
    - Dst: init_fargan
      Src: /src/opus/dnn/fargan.c:191,1
    - Dst: opus_free
      Src: /src/opus/dnn/fargan.c:192,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - st
    - data
    - len
    argTypes:
    - FARGANState*
    - void*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 187
    functionDepth: 1
    functionLinenumber: 187
    functionLinenumberEnd: 195
    functionName: fargan_load_model
    functionSourceFile: /src/opus/dnn/fargan.c
    functionUses: 0
    functionsReached:
    - parse_weights
    - init_fargan
    - opus_free
    linkageType: ''
    returnType: int
    signature: int fargan_load_model(FARGANState *st, const void *data, int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/dnn/fargan.c:202,1
    - Dst: floor
      Src: /src/opus/dnn/fargan.c:204,1
    - Dst: pow
      Src: /src/opus/dnn/fargan.c:204,1
    - Dst: compute_fargan_cond
      Src: /src/opus/dnn/fargan.c:205,1
    - Dst: run_fargan_subframe
      Src: /src/opus/dnn/fargan.c:209,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - st
    - pcm
    - features
    argTypes:
    - FARGANState*
    - float*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 197
    functionDepth: 2
    functionLinenumber: 197
    functionLinenumberEnd: 212
    functionName: fargan_synthesize_impl
    functionSourceFile: /src/opus/dnn/fargan.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - floor
    - compute_fargan_cond
    - run_fargan_subframe
    - pow
    linkageType: ''
    returnType: void
    signature: void fargan_synthesize_impl(FARGANState *st, float *pcm, const float
      *features)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fargan_synthesize_impl
      Src: /src/opus/dnn/fargan.c:216,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - st
    - pcm
    - features
    argTypes:
    - FARGANState*
    - float*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 214
    functionDepth: 3
    functionLinenumber: 214
    functionLinenumberEnd: 217
    functionName: fargan_synthesize
    functionSourceFile: /src/opus/dnn/fargan.c
    functionUses: 0
    functionsReached:
    - fargan_synthesize_impl
    linkageType: ''
    returnType: void
    signature: void fargan_synthesize(FARGANState *st, float *pcm, const float *features)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fargan_synthesize
      Src: /src/opus/dnn/fargan.c:223,1
    - Dst: floor
      Src: /src/opus/dnn/fargan.c:224,1
    - Dst: MIN32
      Src: /src/opus/dnn/fargan.c:224,1
    - Dst: MAX32
      Src: /src/opus/dnn/fargan.c:224,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - st
    - pcm
    - features
    argTypes:
    - FARGANState*
    - opus_int16*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 219
    functionDepth: 4
    functionLinenumber: 219
    functionLinenumberEnd: 225
    functionName: fargan_synthesize_int
    functionSourceFile: /src/opus/dnn/fargan.c
    functionUses: 0
    functionsReached:
    - floor
    - MIN32
    - MAX32
    - fargan_synthesize
    linkageType: ''
    returnType: void
    signature: void fargan_synthesize_int(FARGANState *st, opus_int16 *pcm, const
      float *features)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 3
    argNames:
    - data
    - len
    - array
    argTypes:
    - void**
    - int*
    - WeightArray*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 53
    functionName: parse_record
    functionSourceFile: /src/opus/dnn/parse_lpcnet_weights.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int parse_record(const void **data, int *len, WeightArray *array)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: opus_alloc
      Src: /src/opus/dnn/parse_lpcnet_weights.c:59,1
    - Dst: parse_record
      Src: /src/opus/dnn/parse_lpcnet_weights.c:63,1
    - Dst: opus_realloc
      Src: /src/opus/dnn/parse_lpcnet_weights.c:68,1
    - Dst: opus_free
      Src: /src/opus/dnn/parse_lpcnet_weights.c:72,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 3
    argNames:
    - list
    - data
    - len
    argTypes:
    - WeightArray**
    - void*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 79
    functionName: parse_weights
    functionSourceFile: /src/opus/dnn/parse_lpcnet_weights.c
    functionUses: 6
    functionsReached:
    - opus_free
    - opus_alloc
    - parse_record
    - opus_realloc
    linkageType: ''
    returnType: int
    signature: int parse_weights(WeightArray **list, const void *data, int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/opus/dnn/parse_lpcnet_weights.c:82,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - arrays
    - name
    argTypes:
    - WeightArray*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: find_array_entry
    functionSourceFile: /src/opus/dnn/parse_lpcnet_weights.c
    functionUses: 0
    functionsReached:
    - strcmp
    linkageType: ''
    returnType: WeightArray
    signature: WeightArray *find_array_entry(const WeightArray *arrays, const char
      *name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: find_array_entry
      Src: /src/opus/dnn/parse_lpcnet_weights.c:87,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - arrays
    - name
    - size
    argTypes:
    - WeightArray*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 90
    functionName: find_array_check
    functionSourceFile: /src/opus/dnn/parse_lpcnet_weights.c
    functionUses: 0
    functionsReached:
    - find_array_entry
    linkageType: ''
    returnType: void
    signature: void *find_array_check(const WeightArray *arrays, const char *name,
      int size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: find_array_entry
      Src: /src/opus/dnn/parse_lpcnet_weights.c:93,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 4
    argNames:
    - arrays
    - name
    - size
    - error
    argTypes:
    - WeightArray*
    - char*
    - int
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 97
    functionName: opt_array_check
    functionSourceFile: /src/opus/dnn/parse_lpcnet_weights.c
    functionUses: 0
    functionsReached:
    - find_array_entry
    linkageType: ''
    returnType: void
    signature: void *opt_array_check(const WeightArray *arrays, const char *name,
      int size, int *error)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: find_array_entry
      Src: /src/opus/dnn/parse_lpcnet_weights.c:102,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 5
    argNames:
    - arrays
    - name
    - nb_in
    - nb_out
    - total_blocks
    argTypes:
    - WeightArray*
    - char*
    - int
    - int
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 122
    functionName: find_idx_check
    functionSourceFile: /src/opus/dnn/parse_lpcnet_weights.c
    functionUses: 0
    functionsReached:
    - find_array_entry
    linkageType: ''
    returnType: void
    signature: void *find_idx_check(const WeightArray *arrays, const char *name, int
      nb_in, int nb_out, int *total_blocks)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: find_array_check
      Src: /src/opus/dnn/parse_lpcnet_weights.c:144,1
    - Dst: find_array_check
      Src: /src/opus/dnn/parse_lpcnet_weights.c:147,1
    - Dst: find_idx_check
      Src: /src/opus/dnn/parse_lpcnet_weights.c:151,1
    - Dst: find_array_check
      Src: /src/opus/dnn/parse_lpcnet_weights.c:153,1
    - Dst: opt_array_check
      Src: /src/opus/dnn/parse_lpcnet_weights.c:156,1
    - Dst: find_array_check
      Src: /src/opus/dnn/parse_lpcnet_weights.c:161,1
    - Dst: opt_array_check
      Src: /src/opus/dnn/parse_lpcnet_weights.c:164,1
    - Dst: find_array_check
      Src: /src/opus/dnn/parse_lpcnet_weights.c:169,1
    - Dst: find_array_check
      Src: /src/opus/dnn/parse_lpcnet_weights.c:172,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 50
    argCount: 11
    argNames:
    - layer
    - arrays
    - bias
    - subias
    - weights
    - float_weights
    - weights_idx
    - diag
    - scale
    - nb_inputs
    - nb_outputs
    argTypes:
    - LinearLayer*
    - WeightArray*
    - char*
    - char*
    - char*
    - char*
    - char*
    - char*
    - char*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 124
    functionDepth: 2
    functionLinenumber: 124
    functionLinenumberEnd: 177
    functionName: linear_init
    functionSourceFile: /src/opus/dnn/parse_lpcnet_weights.c
    functionUses: 0
    functionsReached:
    - find_idx_check
    - find_array_check
    - opt_array_check
    linkageType: ''
    returnType: int
    signature: "int linear_init(LinearLayer *layer, const WeightArray *arrays,\n  const
      char *bias,\n  const char *subias,\n  const char *weights,\n  const char *float_weights,\n
      \ const char *weights_idx,\n  const char *diag,\n  const char *scale,\n  int
      nb_inputs,\n  int nb_outputs)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: find_array_check
      Src: /src/opus/dnn/parse_lpcnet_weights.c:191,1
    - Dst: opt_array_check
      Src: /src/opus/dnn/parse_lpcnet_weights.c:194,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 8
    argNames:
    - layer
    - arrays
    - bias
    - float_weights
    - in_channels
    - out_channels
    - ktime
    - kheight
    argTypes:
    - Conv2dLayer*
    - WeightArray*
    - char*
    - char*
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 179
    functionDepth: 2
    functionLinenumber: 179
    functionLinenumberEnd: 202
    functionName: conv2d_init
    functionSourceFile: /src/opus/dnn/parse_lpcnet_weights.c
    functionUses: 0
    functionsReached:
    - opt_array_check
    - find_array_check
    linkageType: ''
    returnType: int
    signature: "int conv2d_init(Conv2dLayer *layer, const WeightArray *arrays,\n  const
      char *bias,\n  const char *float_weights,\n  int in_channels,\n  int out_channels,\n
      \ int ktime,\n  int kheight)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: stat
      Src: /src/opus/dnn/parse_lpcnet_weights.c:223,1
    - Dst: open
      Src: /src/opus/dnn/parse_lpcnet_weights.c:225,1
    - Dst: mmap
      Src: /src/opus/dnn/parse_lpcnet_weights.c:226,1
    - Dst: printf
      Src: /src/opus/dnn/parse_lpcnet_weights.c:227,1
    - Dst: parse_weights
      Src: /src/opus/dnn/parse_lpcnet_weights.c:228,1
    - Dst: printf
      Src: /src/opus/dnn/parse_lpcnet_weights.c:230,1
    - Dst: printf
      Src: /src/opus/dnn/parse_lpcnet_weights.c:232,1
    - Dst: opus_free
      Src: /src/opus/dnn/parse_lpcnet_weights.c:233,1
    - Dst: munmap
      Src: /src/opus/dnn/parse_lpcnet_weights.c:234,1
    - Dst: close
      Src: /src/opus/dnn/parse_lpcnet_weights.c:235,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 213
    functionDepth: 2
    functionLinenumber: 213
    functionLinenumberEnd: 237
    functionName: main
    functionSourceFile: /src/opus/dnn/parse_lpcnet_weights.c
    functionUses: 0
    functionsReached:
    - parse_weights
    - close
    - munmap
    - opus_free
    - mmap
    - stat
    - open
    - printf
    linkageType: ''
    returnType: int
    signature: int main()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 35
    functionName: MAX
    functionSourceFile: /src/opus/dnn/dred_compare.c
    functionUses: 23
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAX(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 38
    functionName: OPUS_COSF
    functionSourceFile: /src/opus/dnn/dred_compare.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_COSF(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 39
    functionName: OPUS_SINF
    functionSourceFile: /src/opus/dnn/dred_compare.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_SINF(_x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/dnn/dred_compare.c:42,1
    - Dst: exit
      Src: /src/opus/dnn/dred_compare.c:43,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - _ptr
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 46
    functionName: check_alloc
    functionSourceFile: /src/opus/dnn/dred_compare.c
    functionUses: 4
    functionsReached:
    - exit
    - fprintf
    linkageType: ''
    returnType: void
    signature: void *check_alloc(void *_ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: check_alloc
      Src: /src/opus/dnn/dred_compare.c:49,1
    - Dst: malloc
      Src: /src/opus/dnn/dred_compare.c:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _size
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: opus_malloc
    functionSourceFile: /src/opus/dnn/dred_compare.c
    functionUses: 3
    functionsReached:
    - malloc
    - check_alloc
    linkageType: ''
    returnType: void
    signature: void *opus_malloc(size_t _size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: check_alloc
      Src: /src/opus/dnn/dred_compare.c:53,1
    - Dst: realloc
      Src: /src/opus/dnn/dred_compare.c:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - _ptr
    - _size
    argTypes:
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionName: opus_realloc
    functionSourceFile: /src/opus/dnn/dred_compare.c
    functionUses: 3
    functionsReached:
    - check_alloc
    - realloc
    linkageType: ''
    returnType: void
    signature: void *opus_realloc(void *_ptr,size_t _size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 6
    argNames:
    - y
    - mem
    - x
    - b
    - a
    - N
    argTypes:
    - float*
    - float[]
    - float*
    - float*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 82
    functionName: biquad
    functionSourceFile: /src/opus/dnn/dred_compare.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void biquad(float *y, float mem[2], const float *x,\n                   const
      float *b, const float *a, int N)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - buf
    - x
    - len
    argTypes:
    - unsigned char*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 94
    functionName: buf_to_float
    functionSourceFile: /src/opus/dnn/dred_compare.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void buf_to_float(const unsigned char *buf, float *x, int len)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: fread
      Src: /src/opus/dnn/dred_compare.c:112,1
    - Dst: opus_realloc
      Src: /src/opus/dnn/dred_compare.c:117,1
    - Dst: exit
      Src: /src/opus/dnn/dred_compare.c:155,1
    - Dst: opus_realloc
      Src: /src/opus/dnn/dred_compare.c:159,1
    - Dst: biquad
      Src: /src/opus/dnn/dred_compare.c:161,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 45
    argCount: 4
    argNames:
    - _samples
    - _fin
    - _nchannels
    - format
    argTypes:
    - float**
    - FILE*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 163
    functionName: read_pcm
    functionSourceFile: /src/opus/dnn/dred_compare.c
    functionUses: 1
    functionsReached:
    - exit
    - opus_realloc
    - fread
    - biquad
    linkageType: ''
    returnType: size_t
    signature: "size_t read_pcm(float **_samples,FILE *_fin,int _nchannels,\n                       int
      format)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cos
      Src: /src/opus/dnn/dred_compare.c:179,1
    - Dst: cos
      Src: /src/opus/dnn/dred_compare.c:180,1
    - Dst: cos
      Src: /src/opus/dnn/dred_compare.c:180,1
    - Dst: mini_kiss_fftr_alloc
      Src: /src/opus/dnn/dred_compare.c:182,1
    - Dst: mini_kiss_fftr
      Src: /src/opus/dnn/dred_compare.c:191,1
    - Dst: free
      Src: /src/opus/dnn/dred_compare.c:207,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 9
    argNames:
    - _ps
    - _bands
    - _nbands
    - _in
    - _nchannels
    - _nframes
    - _window_sz
    - _step
    - _downsample
    argTypes:
    - float*
    - int*
    - int
    - float*
    - int
    - size_t
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 165
    functionDepth: 1
    functionLinenumber: 165
    functionLinenumberEnd: 208
    functionName: spectrum
    functionSourceFile: /src/opus/dnn/dred_compare.c
    functionUses: 0
    functionsReached:
    - free
    - mini_kiss_fftr_alloc
    - cos
    - mini_kiss_fftr
    linkageType: ''
    returnType: void
    signature: "void spectrum(float *_ps,const int *_bands, int _nbands,\n                     const
      float *_in,int _nchannels, size_t _nframes,\n                     int _window_sz,
      int _step, int _downsample)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/dnn/dred_compare.c:219,1
    - Dst: fprintf
      Src: /src/opus/dnn/dred_compare.c:222,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - _argv0
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 218
    functionDepth: 0
    functionLinenumber: 218
    functionLinenumberEnd: 226
    functionName: usage
    functionSourceFile: /src/opus/dnn/dred_compare.c
    functionUses: 4
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void usage(const char *_argv0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pow
      Src: /src/opus/dnn/dred_compare.c:244,1
    - Dst: pow
      Src: /src/opus/dnn/dred_compare.c:246,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - decayL
    - decayR
    - len
    - Fs
    argTypes:
    - float*
    - float*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 249
    functionName: psydecay_init
    functionSourceFile: /src/opus/dnn/dred_compare.c
    functionUses: 0
    functionsReached:
    - pow
    linkageType: ''
    returnType: void
    signature: void psydecay_init(float *decayL, float *decayR, int len, int Fs)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - x
    - y
    - len
    argTypes:
    - float*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 255
    functionDepth: 0
    functionLinenumber: 255
    functionLinenumberEnd: 260
    functionName: inner_prod
    functionSourceFile: /src/opus/dnn/dred_compare.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: float
    signature: float inner_prod(const float *x, const float *y, int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: inner_prod
      Src: /src/opus/dnn/dred_compare.c:269,1
    - Dst: inner_prod
      Src: /src/opus/dnn/dred_compare.c:273,1
    - Dst: inner_prod
      Src: /src/opus/dnn/dred_compare.c:275,1
    - Dst: sqrt
      Src: /src/opus/dnn/dred_compare.c:277,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - x
    - xcorr
    argTypes:
    - float*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 262
    functionDepth: 1
    functionLinenumber: 262
    functionLinenumberEnd: 279
    functionName: compute_xcorr
    functionSourceFile: /src/opus/dnn/dred_compare.c
    functionUses: 0
    functionsReached:
    - inner_prod
    - sqrt
    linkageType: ''
    returnType: void
    signature: void compute_xcorr(const float *x, float *xcorr)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: psydecay_init
      Src: /src/opus/dnn/dred_compare.c:316,1
    - Dst: usage
      Src: /src/opus/dnn/dred_compare.c:318,1
    - Dst: strcmp
      Src: /src/opus/dnn/dred_compare.c:329,1
    - Dst: strcmp
      Src: /src/opus/dnn/dred_compare.c:333,1
    - Dst: strcmp
      Src: /src/opus/dnn/dred_compare.c:337,1
    - Dst: strcmp
      Src: /src/opus/dnn/dred_compare.c:341,1
    - Dst: atoi
      Src: /src/opus/dnn/dred_compare.c:342,1
    - Dst: strcmp
      Src: /src/opus/dnn/dred_compare.c:345,1
    - Dst: usage
      Src: /src/opus/dnn/dred_compare.c:347,1
    - Dst: atof
      Src: /src/opus/dnn/dred_compare.c:350,1
    - Dst: atof
      Src: /src/opus/dnn/dred_compare.c:351,1
    - Dst: atof
      Src: /src/opus/dnn/dred_compare.c:352,1
    - Dst: usage
      Src: /src/opus/dnn/dred_compare.c:357,1
    - Dst: usage
      Src: /src/opus/dnn/dred_compare.c:362,1
    - Dst: fopen
      Src: /src/opus/dnn/dred_compare.c:367,1
    - Dst: fprintf
      Src: /src/opus/dnn/dred_compare.c:369,1
    - Dst: fopen
      Src: /src/opus/dnn/dred_compare.c:372,1
    - Dst: fprintf
      Src: /src/opus/dnn/dred_compare.c:374,1
    - Dst: fclose
      Src: /src/opus/dnn/dred_compare.c:375,1
    - Dst: read_pcm
      Src: /src/opus/dnn/dred_compare.c:379,1
    - Dst: fclose
      Src: /src/opus/dnn/dred_compare.c:380,1
    - Dst: read_pcm
      Src: /src/opus/dnn/dred_compare.c:381,1
    - Dst: fclose
      Src: /src/opus/dnn/dred_compare.c:382,1
    - Dst: fprintf
      Src: /src/opus/dnn/dred_compare.c:388,1
    - Dst: fprintf
      Src: /src/opus/dnn/dred_compare.c:393,1
    - Dst: opus_malloc
      Src: /src/opus/dnn/dred_compare.c:398,1
    - Dst: opus_malloc
      Src: /src/opus/dnn/dred_compare.c:399,1
    - Dst: compute_xcorr
      Src: /src/opus/dnn/dred_compare.c:406,1
    - Dst: compute_xcorr
      Src: /src/opus/dnn/dred_compare.c:407,1
    - Dst: fabs
      Src: /src/opus/dnn/dred_compare.c:415,1
    - Dst: spectrum
      Src: /src/opus/dnn/dred_compare.c:423,1
    - Dst: free
      Src: /src/opus/dnn/dred_compare.c:425,1
    - Dst: spectrum
      Src: /src/opus/dnn/dred_compare.c:426,1
    - Dst: free
      Src: /src/opus/dnn/dred_compare.c:428,1
    - Dst: MAX
      Src: /src/opus/dnn/dred_compare.c:456,1
    - Dst: MAX
      Src: /src/opus/dnn/dred_compare.c:460,1
    - Dst: MAX
      Src: /src/opus/dnn/dred_compare.c:461,1
    - Dst: pow
      Src: /src/opus/dnn/dred_compare.c:503,1
    - Dst: pow
      Src: /src/opus/dnn/dred_compare.c:504,1
    - Dst: pow
      Src: /src/opus/dnn/dred_compare.c:506,1
    - Dst: pow
      Src: /src/opus/dnn/dred_compare.c:513,1
    - Dst: pow
      Src: /src/opus/dnn/dred_compare.c:514,1
    - Dst: free
      Src: /src/opus/dnn/dred_compare.c:536,1
    - Dst: free
      Src: /src/opus/dnn/dred_compare.c:537,1
    - Dst: pow
      Src: /src/opus/dnn/dred_compare.c:538,1
    - Dst: sqrt
      Src: /src/opus/dnn/dred_compare.c:538,1
    - Dst: pow
      Src: /src/opus/dnn/dred_compare.c:539,1
    - Dst: sqrt
      Src: /src/opus/dnn/dred_compare.c:539,1
    - Dst: fprintf
      Src: /src/opus/dnn/dred_compare.c:540,1
    - Dst: fprintf
      Src: /src/opus/dnn/dred_compare.c:544,1
    - Dst: fprintf
      Src: /src/opus/dnn/dred_compare.c:546,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 205
    argCount: 3
    argNames:
    - _argc
    - _argv
    - argv0
    argTypes:
    - int
    - char**
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 552
      start: 282
    functionDepth: 2
    functionLinenumber: 282
    functionLinenumberEnd: 552
    functionName: compare_audio
    functionSourceFile: /src/opus/dnn/dred_compare.c
    functionUses: 0
    functionsReached:
    - MAX
    - spectrum
    - fabs
    - atoi
    - strcmp
    - usage
    - fclose
    - psydecay_init
    - compute_xcorr
    - atof
    - read_pcm
    - pow
    - fprintf
    - opus_malloc
    - fopen
    - sqrt
    - free
    linkageType: ''
    returnType: int
    signature: int compare_audio(int _argc,const char **_argv, const char *argv0)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: strcmp
      Src: /src/opus/dnn/dred_compare.c:567,1
    - Dst: usage
      Src: /src/opus/dnn/dred_compare.c:569,1
    - Dst: atof
      Src: /src/opus/dnn/dred_compare.c:572,1
    - Dst: atof
      Src: /src/opus/dnn/dred_compare.c:573,1
    - Dst: atof
      Src: /src/opus/dnn/dred_compare.c:574,1
    - Dst: usage
      Src: /src/opus/dnn/dred_compare.c:580,1
    - Dst: fopen
      Src: /src/opus/dnn/dred_compare.c:583,1
    - Dst: fprintf
      Src: /src/opus/dnn/dred_compare.c:585,1
    - Dst: fopen
      Src: /src/opus/dnn/dred_compare.c:588,1
    - Dst: fprintf
      Src: /src/opus/dnn/dred_compare.c:590,1
    - Dst: fclose
      Src: /src/opus/dnn/dred_compare.c:591,1
    - Dst: fread
      Src: /src/opus/dnn/dred_compare.c:598,1
    - Dst: buf_to_float
      Src: /src/opus/dnn/dred_compare.c:600,1
    - Dst: fread
      Src: /src/opus/dnn/dred_compare.c:601,1
    - Dst: fprintf
      Src: /src/opus/dnn/dred_compare.c:603,1
    - Dst: buf_to_float
      Src: /src/opus/dnn/dred_compare.c:606,1
    - Dst: fabs
      Src: /src/opus/dnn/dred_compare.c:612,1
    - Dst: MAX
      Src: /src/opus/dnn/dred_compare.c:622,1
    - Dst: sqrt
      Src: /src/opus/dnn/dred_compare.c:625,1
    - Dst: sqrt
      Src: /src/opus/dnn/dred_compare.c:626,1
    - Dst: fprintf
      Src: /src/opus/dnn/dred_compare.c:627,1
    - Dst: fprintf
      Src: /src/opus/dnn/dred_compare.c:630,1
    - Dst: fprintf
      Src: /src/opus/dnn/dred_compare.c:632,1
    - Dst: fclose
      Src: /src/opus/dnn/dred_compare.c:637,1
    - Dst: fclose
      Src: /src/opus/dnn/dred_compare.c:638,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 72
    argCount: 3
    argNames:
    - _argc
    - _argv
    - argv0
    argTypes:
    - int
    - char**
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 640
      start: 556
    functionDepth: 1
    functionLinenumber: 556
    functionLinenumberEnd: 640
    functionName: compare_features
    functionSourceFile: /src/opus/dnn/dred_compare.c
    functionUses: 0
    functionsReached:
    - MAX
    - fabs
    - strcmp
    - usage
    - fclose
    - atof
    - buf_to_float
    - fread
    - fprintf
    - sqrt
    - fopen
    linkageType: ''
    returnType: int
    signature: int compare_features(int _argc,const char **_argv, const char *argv0)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: usage
      Src: /src/opus/dnn/dred_compare.c:644,1
    - Dst: strcmp
      Src: /src/opus/dnn/dred_compare.c:645,1
    - Dst: compare_audio
      Src: /src/opus/dnn/dred_compare.c:646,1
    - Dst: strcmp
      Src: /src/opus/dnn/dred_compare.c:647,1
    - Dst: compare_features
      Src: /src/opus/dnn/dred_compare.c:648,1
    - Dst: fprintf
      Src: /src/opus/dnn/dred_compare.c:650,1
    - Dst: usage
      Src: /src/opus/dnn/dred_compare.c:651,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - _argc
    - _argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 654
      start: 642
    functionDepth: 3
    functionLinenumber: 642
    functionLinenumberEnd: 654
    functionName: main
    functionSourceFile: /src/opus/dnn/dred_compare.c
    functionUses: 0
    functionsReached:
    - compare_features
    - strcmp
    - usage
    - compare_audio
    - fprintf
    linkageType: ''
    returnType: int
    signature: int main(int _argc,const char **_argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/dred_rdovae_dec.c:40,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - mem
    - len
    - dilation
    - init
    argTypes:
    - float*
    - int
    - int
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 43
    functionName: conv1_cond_init
    functionSourceFile: /src/opus/dnn/dred_rdovae_dec.c
    functionUses: 0
    functionsReached:
    - OPUS_CLEAR
    linkageType: ''
    returnType: void
    signature: void conv1_cond_init(float *mem, int len, int dilation, int *init)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/opus/dnn/dred_rdovae_dec.c:49,1
    - Dst: dred_rdovae_dec_init_states
      Src: /src/opus/dnn/dred_rdovae_dec.c:50,1
    - Dst: dred_rdovae_decode_qframe
      Src: /src/opus/dnn/dred_rdovae_dec.c:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 6
    argNames:
    - model
    - features
    - state
    - latents
    - nb_latents
    - arch
    argTypes:
    - RDOVAEDec*
    - float*
    - float*
    - float*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 60
    functionName: DRED_rdovae_decode_all
    functionSourceFile: /src/opus/dnn/dred_rdovae_dec.c
    functionUses: 1
    functionsReached:
    - dred_rdovae_decode_qframe
    - dred_rdovae_dec_init_states
    - memset
    linkageType: ''
    returnType: void
    signature: void DRED_rdovae_decode_all(const RDOVAEDec *model, float *features,
      const float *state, const float *latents, int nb_latents, int arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/dred_rdovae_dec.c:72,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/dred_rdovae_dec.c:73,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/dred_rdovae_dec.c:74,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/dred_rdovae_dec.c:76,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/dred_rdovae_dec.c:78,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/dred_rdovae_dec.c:80,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/dred_rdovae_dec.c:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 4
    argNames:
    - h
    - model
    - initial_state
    - arch
    argTypes:
    - RDOVAEDecState*
    - RDOVAEDec*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 84
    functionName: dred_rdovae_dec_init_states
    functionSourceFile: /src/opus/dnn/dred_rdovae_dec.c
    functionUses: 1
    functionsReached:
    - compute_generic_dense
    - OPUS_COPY
    linkageType: ''
    returnType: void
    signature: "void dred_rdovae_dec_init_states(\n    RDOVAEDecState *h,            /*
      io: state buffer handle */\n    const RDOVAEDec *model,\n    const float *initial_state,
      \ /* i: initial state */\n    int arch\n    )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/dred_rdovae_dec.c:101,1
    - Dst: compute_generic_gru
      Src: /src/opus/dnn/dred_rdovae_dec.c:104,1
    - Dst: compute_glu
      Src: /src/opus/dnn/dred_rdovae_dec.c:105,1
    - Dst: conv1_cond_init
      Src: /src/opus/dnn/dred_rdovae_dec.c:107,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/dred_rdovae_dec.c:108,1
    - Dst: compute_generic_conv1d
      Src: /src/opus/dnn/dred_rdovae_dec.c:109,1
    - Dst: compute_generic_gru
      Src: /src/opus/dnn/dred_rdovae_dec.c:112,1
    - Dst: compute_glu
      Src: /src/opus/dnn/dred_rdovae_dec.c:113,1
    - Dst: conv1_cond_init
      Src: /src/opus/dnn/dred_rdovae_dec.c:115,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/dred_rdovae_dec.c:116,1
    - Dst: compute_generic_conv1d
      Src: /src/opus/dnn/dred_rdovae_dec.c:117,1
    - Dst: compute_generic_gru
      Src: /src/opus/dnn/dred_rdovae_dec.c:120,1
    - Dst: compute_glu
      Src: /src/opus/dnn/dred_rdovae_dec.c:121,1
    - Dst: conv1_cond_init
      Src: /src/opus/dnn/dred_rdovae_dec.c:123,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/dred_rdovae_dec.c:124,1
    - Dst: compute_generic_conv1d
      Src: /src/opus/dnn/dred_rdovae_dec.c:125,1
    - Dst: compute_generic_gru
      Src: /src/opus/dnn/dred_rdovae_dec.c:128,1
    - Dst: compute_glu
      Src: /src/opus/dnn/dred_rdovae_dec.c:129,1
    - Dst: conv1_cond_init
      Src: /src/opus/dnn/dred_rdovae_dec.c:131,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/dred_rdovae_dec.c:132,1
    - Dst: compute_generic_conv1d
      Src: /src/opus/dnn/dred_rdovae_dec.c:133,1
    - Dst: compute_generic_gru
      Src: /src/opus/dnn/dred_rdovae_dec.c:136,1
    - Dst: compute_glu
      Src: /src/opus/dnn/dred_rdovae_dec.c:137,1
    - Dst: conv1_cond_init
      Src: /src/opus/dnn/dred_rdovae_dec.c:139,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/dred_rdovae_dec.c:140,1
    - Dst: compute_generic_conv1d
      Src: /src/opus/dnn/dred_rdovae_dec.c:141,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/dred_rdovae_dec.c:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 39
    argCount: 5
    argNames:
    - dec_state
    - model
    - qframe
    - input
    - arch
    argTypes:
    - RDOVAEDecState*
    - RDOVAEDec*
    - float*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 145
    functionName: dred_rdovae_decode_qframe
    functionSourceFile: /src/opus/dnn/dred_rdovae_dec.c
    functionUses: 1
    functionsReached:
    - compute_generic_gru
    - compute_generic_conv1d
    - conv1_cond_init
    - compute_generic_dense
    - compute_glu
    linkageType: ''
    returnType: void
    signature: "void dred_rdovae_decode_qframe(\n    RDOVAEDecState *dec_state,       /*
      io: state buffer handle */\n    const RDOVAEDec *model,\n    float *qframe,
      \             /* o: quadruple feature frame (four concatenated frames in reverse
      order) */\n    const float *input,          /* i: latent vector */\n    int
      arch\n    )"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/opus/dnn/write_lpcnet_weights.c:60,1
    - Dst: printf
      Src: /src/opus/dnn/write_lpcnet_weights.c:61,1
    - Dst: memcpy
      Src: /src/opus/dnn/write_lpcnet_weights.c:63,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/write_lpcnet_weights.c:68,1
    - Dst: strncpy
      Src: /src/opus/dnn/write_lpcnet_weights.c:69,1
    - Dst: celt_assert
      Src: /src/opus/dnn/write_lpcnet_weights.c:71,1
    - Dst: fwrite
      Src: /src/opus/dnn/write_lpcnet_weights.c:72,1
    - Dst: fwrite
      Src: /src/opus/dnn/write_lpcnet_weights.c:73,1
    - Dst: fwrite
      Src: /src/opus/dnn/write_lpcnet_weights.c:74,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 2
    argNames:
    - list
    - fout
    argTypes:
    - WeightArray*
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 77
    functionName: write_weights
    functionSourceFile: /src/opus/dnn/write_lpcnet_weights.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - OPUS_CLEAR
    - strncpy
    - memcpy
    - fwrite
    - strlen
    - printf
    linkageType: ''
    returnType: void
    signature: void write_weights(const WeightArray *list, FILE *fout)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fopen
      Src: /src/opus/dnn/write_lpcnet_weights.c:81,1
    - Dst: write_weights
      Src: /src/opus/dnn/write_lpcnet_weights.c:82,1
    - Dst: write_weights
      Src: /src/opus/dnn/write_lpcnet_weights.c:83,1
    - Dst: write_weights
      Src: /src/opus/dnn/write_lpcnet_weights.c:84,1
    - Dst: write_weights
      Src: /src/opus/dnn/write_lpcnet_weights.c:85,1
    - Dst: write_weights
      Src: /src/opus/dnn/write_lpcnet_weights.c:86,1
    - Dst: write_weights
      Src: /src/opus/dnn/write_lpcnet_weights.c:89,1
    - Dst: write_weights
      Src: /src/opus/dnn/write_lpcnet_weights.c:92,1
    - Dst: fclose
      Src: /src/opus/dnn/write_lpcnet_weights.c:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 79
    functionDepth: 2
    functionLinenumber: 79
    functionLinenumberEnd: 97
    functionName: main
    functionSourceFile: /src/opus/dnn/write_lpcnet_weights.c
    functionUses: 0
    functionsReached:
    - write_weights
    - fopen
    - fclose
    linkageType: ''
    returnType: int
    signature: int main(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fopen
      Src: /src/opus/dnn/dump_lpcnet_tables.c:45,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_lpcnet_tables.c:46,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_lpcnet_tables.c:47,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_lpcnet_tables.c:48,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_lpcnet_tables.c:49,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_lpcnet_tables.c:51,1
    - Dst: opus_fft_alloc_twiddles
      Src: /src/opus/dnn/dump_lpcnet_tables.c:53,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_lpcnet_tables.c:55,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_lpcnet_tables.c:57,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_lpcnet_tables.c:59,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_lpcnet_tables.c:60,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_lpcnet_tables.c:62,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_lpcnet_tables.c:64,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_lpcnet_tables.c:65,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_lpcnet_tables.c:68,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_lpcnet_tables.c:69,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_lpcnet_tables.c:70,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_lpcnet_tables.c:71,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_lpcnet_tables.c:72,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_lpcnet_tables.c:74,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_lpcnet_tables.c:76,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_lpcnet_tables.c:77,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_lpcnet_tables.c:78,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_lpcnet_tables.c:79,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_lpcnet_tables.c:81,1
    - Dst: sin
      Src: /src/opus/dnn/dump_lpcnet_tables.c:84,1
    - Dst: sin
      Src: /src/opus/dnn/dump_lpcnet_tables.c:84,1
    - Dst: sin
      Src: /src/opus/dnn/dump_lpcnet_tables.c:84,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_lpcnet_tables.c:85,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_lpcnet_tables.c:87,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_lpcnet_tables.c:88,1
    - Dst: cos
      Src: /src/opus/dnn/dump_lpcnet_tables.c:93,1
    - Dst: sqrt
      Src: /src/opus/dnn/dump_lpcnet_tables.c:94,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_lpcnet_tables.c:97,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_lpcnet_tables.c:99,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_lpcnet_tables.c:100,1
    - Dst: fclose
      Src: /src/opus/dnn/dump_lpcnet_tables.c:102,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 49
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 104
    functionName: main
    functionSourceFile: /src/opus/dnn/dump_lpcnet_tables.c
    functionUses: 0
    functionsReached:
    - opus_fft_alloc_twiddles
    - fclose
    - sin
    - sqrt
    - fprintf
    - fopen
    - cos
    linkageType: ''
    returnType: int
    signature: int main(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 12
    functionDepth: 0
    functionLinenumber: 12
    functionLinenumberEnd: 27
    functionName: log2_approx
    functionSourceFile: /src/opus/dnn/common.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE log2_approx(float x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 30
    functionName: log_approx
    functionSourceFile: /src/opus/dnn/common.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: log_approx(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fabs
      Src: /src/opus/dnn/common.h:37,1
    - Dst: exp
      Src: /src/opus/dnn/common.h:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - u
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 39
    functionName: ulaw2lin
    functionSourceFile: /src/opus/dnn/common.h
    functionUses: 0
    functionsReached:
    - exp
    - fabs
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE ulaw2lin(float u)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fabs
      Src: /src/opus/dnn/common.h:46,1
    - Dst: log_approx
      Src: /src/opus/dnn/common.h:47,1
    - Dst: floor
      Src: /src/opus/dnn/common.h:51,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - x
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 52
    functionName: lin2ulaw
    functionSourceFile: /src/opus/dnn/common.h
    functionUses: 0
    functionsReached:
    - floor
    - fabs
    - log_approx
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE lin2ulaw(float x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - q0
    - dQ
    - qmax
    - i
    argTypes:
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 44
    functionName: compute_quantizer
    functionSourceFile: /src/opus/dnn/dred_coding.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int compute_quantizer(int q0, int dQ, int qmax, int i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/dnn/bwe_demo.c:46,1
    - Dst: exit
      Src: /src/opus/dnn/bwe_demo.c:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 48
    functionName: usage
    functionSourceFile: /src/opus/dnn/bwe_demo.c
    functionUses: 7
    functionsReached:
    - exit
    - fprintf
    linkageType: ''
    returnType: void
    signature: void usage(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: opus_select_arch
      Src: /src/opus/dnn/bwe_demo.c:59,1
    - Dst: calloc
      Src: /src/opus/dnn/bwe_demo.c:60,1
    - Dst: calloc
      Src: /src/opus/dnn/bwe_demo.c:61,1
    - Dst: osce_load_models
      Src: /src/opus/dnn/bwe_demo.c:62,1
    - Dst: osce_bwe_reset
      Src: /src/opus/dnn/bwe_demo.c:63,1
    - Dst: usage
      Src: /src/opus/dnn/bwe_demo.c:65,1
    - Dst: fopen
      Src: /src/opus/dnn/bwe_demo.c:66,1
    - Dst: fprintf
      Src: /src/opus/dnn/bwe_demo.c:68,1
    - Dst: exit
      Src: /src/opus/dnn/bwe_demo.c:69,1
    - Dst: fopen
      Src: /src/opus/dnn/bwe_demo.c:72,1
    - Dst: fprintf
      Src: /src/opus/dnn/bwe_demo.c:74,1
    - Dst: exit
      Src: /src/opus/dnn/bwe_demo.c:75,1
    - Dst: fread
      Src: /src/opus/dnn/bwe_demo.c:82,1
    - Dst: osce_bwe
      Src: /src/opus/dnn/bwe_demo.c:83,1
    - Dst: fwrite
      Src: /src/opus/dnn/bwe_demo.c:92,1
    - Dst: free
      Src: /src/opus/dnn/bwe_demo.c:95,1
    - Dst: free
      Src: /src/opus/dnn/bwe_demo.c:96,1
    - Dst: fclose
      Src: /src/opus/dnn/bwe_demo.c:98,1
    - Dst: fclose
      Src: /src/opus/dnn/bwe_demo.c:99,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 52
    functionDepth: 4
    functionLinenumber: 52
    functionLinenumberEnd: 102
    functionName: main
    functionSourceFile: /src/opus/dnn/bwe_demo.c
    functionUses: 0
    functionsReached:
    - osce_bwe
    - exit
    - opus_select_arch
    - calloc
    - usage
    - fclose
    - osce_load_models
    - osce_bwe_reset
    - fread
    - fprintf
    - fwrite
    - fopen
    - free
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: kiss99_rand
      Src: /src/opus/dnn/kiss99.c:43,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 24
    argCount: 3
    argNames:
    - _this
    - _data
    - _ndata
    argTypes:
    - kiss99_ctx*
    - unsigned char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 57
    functionName: kiss99_srand
    functionSourceFile: /src/opus/dnn/kiss99.c
    functionUses: 0
    functionsReached:
    - kiss99_rand
    linkageType: ''
    returnType: void
    signature: void kiss99_srand(kiss99_ctx *_this,const unsigned char *_data,int
      _ndata)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 1
    argNames:
    - _this
    argTypes:
    - kiss99_ctx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 81
    functionName: kiss99_rand
    functionSourceFile: /src/opus/dnn/kiss99.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: uint32_t
    signature: uint32_t kiss99_rand(kiss99_ctx *_this)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - linear
    - ','
    - out
    - ','
    - in
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 147
    functionName: compute_linear
    functionSourceFile: /src/opus/dnn/nnet.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: compute_linear(linear, out, in, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - output
    - ','
    - input
    - ','
    - N
    - ','
    - activation
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 151
    functionName: compute_activation
    functionSourceFile: /src/opus/dnn/nnet.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: compute_activation(output, input, N, activation, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 17
    argNames:
    - (
    - conv
    - ','
    - out
    - ','
    - mem
    - ','
    - in
    - ','
    - height
    - ','
    - hstride
    - ','
    - activation
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 155
    functionName: compute_conv2d
    functionSourceFile: /src/opus/dnn/nnet.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: compute_conv2d(conv, out, mem, in, height, hstride, activation, arch)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: init_adaconv_state
      Src: /src/opus/dnn/adaconvtest.c:45,1
    - Dst: compute_overlap_window
      Src: /src/opus/dnn/adaconvtest.c:46,1
    - Dst: strcpy
      Src: /src/opus/dnn/adaconvtest.c:50,1
    - Dst: strcat
      Src: /src/opus/dnn/adaconvtest.c:51,1
    - Dst: fopen
      Src: /src/opus/dnn/adaconvtest.c:52,1
    - Dst: sprintf
      Src: /src/opus/dnn/adaconvtest.c:55,1
    - Dst: perror
      Src: /src/opus/dnn/adaconvtest.c:56,1
    - Dst: exit
      Src: /src/opus/dnn/adaconvtest.c:57,1
    - Dst: strcpy
      Src: /src/opus/dnn/adaconvtest.c:60,1
    - Dst: strcat
      Src: /src/opus/dnn/adaconvtest.c:61,1
    - Dst: fopen
      Src: /src/opus/dnn/adaconvtest.c:62,1
    - Dst: sprintf
      Src: /src/opus/dnn/adaconvtest.c:65,1
    - Dst: perror
      Src: /src/opus/dnn/adaconvtest.c:66,1
    - Dst: exit
      Src: /src/opus/dnn/adaconvtest.c:67,1
    - Dst: strcpy
      Src: /src/opus/dnn/adaconvtest.c:70,1
    - Dst: strcat
      Src: /src/opus/dnn/adaconvtest.c:71,1
    - Dst: fopen
      Src: /src/opus/dnn/adaconvtest.c:72,1
    - Dst: sprintf
      Src: /src/opus/dnn/adaconvtest.c:75,1
    - Dst: perror
      Src: /src/opus/dnn/adaconvtest.c:76,1
    - Dst: exit
      Src: /src/opus/dnn/adaconvtest.c:77,1
    - Dst: fread
      Src: /src/opus/dnn/adaconvtest.c:82,1
    - Dst: fprintf
      Src: /src/opus/dnn/adaconvtest.c:84,1
    - Dst: exit
      Src: /src/opus/dnn/adaconvtest.c:85,1
    - Dst: fread
      Src: /src/opus/dnn/adaconvtest.c:88,1
    - Dst: fprintf
      Src: /src/opus/dnn/adaconvtest.c:90,1
    - Dst: exit
      Src: /src/opus/dnn/adaconvtest.c:91,1
    - Dst: fread
      Src: /src/opus/dnn/adaconvtest.c:94,1
    - Dst: fprintf
      Src: /src/opus/dnn/adaconvtest.c:96,1
    - Dst: exit
      Src: /src/opus/dnn/adaconvtest.c:97,1
    - Dst: adaconv_process_frame
      Src: /src/opus/dnn/adaconvtest.c:100,1
    - Dst: pow
      Src: /src/opus/dnn/adaconvtest.c:107,1
    - Dst: sqrt
      Src: /src/opus/dnn/adaconvtest.c:109,1
    - Dst: printf
      Src: /src/opus/dnn/adaconvtest.c:110,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 48
    argCount: 15
    argNames:
    - prefix
    - num_frames
    - hAdaConv
    - kernel_layer
    - gain_layer
    - feature_dim
    - frame_size
    - overlap_size
    - in_channels
    - out_channels
    - kernel_size
    - left_padding
    - filter_gain_a
    - filter_gain_b
    - shape_gain
    argTypes:
    - char*
    - int
    - AdaConvState*
    - LinearLayer*
    - LinearLayer*
    - int
    - int
    - int
    - int
    - int
    - int
    - int
    - float
    - float
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 15
    functionDepth: 3
    functionLinenumber: 15
    functionLinenumberEnd: 113
    functionName: adaconv_compare
    functionSourceFile: /src/opus/dnn/adaconvtest.c
    functionUses: 0
    functionsReached:
    - adaconv_process_frame
    - exit
    - perror
    - strcat
    - sprintf
    - init_adaconv_state
    - strcpy
    - fread
    - fprintf
    - pow
    - fopen
    - sqrt
    - compute_overlap_window
    - printf
    linkageType: ''
    returnType: void
    signature: "void adaconv_compare(\n    const char * prefix,\n    int num_frames,\n
      \   AdaConvState* hAdaConv,\n    LinearLayer *kernel_layer,\n    LinearLayer
      *gain_layer,\n    int feature_dim,\n    int frame_size,\n    int overlap_size,\n
      \   int in_channels,\n    int out_channels,\n    int kernel_size,\n    int left_padding,\n
      \   float filter_gain_a,\n    float filter_gain_b,\n    float shape_gain\n)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: init_adacomb_state
      Src: /src/opus/dnn/adaconvtest.c:147,1
    - Dst: compute_overlap_window
      Src: /src/opus/dnn/adaconvtest.c:148,1
    - Dst: strcpy
      Src: /src/opus/dnn/adaconvtest.c:152,1
    - Dst: strcat
      Src: /src/opus/dnn/adaconvtest.c:153,1
    - Dst: fopen
      Src: /src/opus/dnn/adaconvtest.c:154,1
    - Dst: sprintf
      Src: /src/opus/dnn/adaconvtest.c:157,1
    - Dst: perror
      Src: /src/opus/dnn/adaconvtest.c:158,1
    - Dst: exit
      Src: /src/opus/dnn/adaconvtest.c:159,1
    - Dst: strcpy
      Src: /src/opus/dnn/adaconvtest.c:162,1
    - Dst: strcat
      Src: /src/opus/dnn/adaconvtest.c:163,1
    - Dst: fopen
      Src: /src/opus/dnn/adaconvtest.c:164,1
    - Dst: sprintf
      Src: /src/opus/dnn/adaconvtest.c:167,1
    - Dst: perror
      Src: /src/opus/dnn/adaconvtest.c:168,1
    - Dst: exit
      Src: /src/opus/dnn/adaconvtest.c:169,1
    - Dst: strcpy
      Src: /src/opus/dnn/adaconvtest.c:172,1
    - Dst: strcat
      Src: /src/opus/dnn/adaconvtest.c:173,1
    - Dst: fopen
      Src: /src/opus/dnn/adaconvtest.c:174,1
    - Dst: sprintf
      Src: /src/opus/dnn/adaconvtest.c:177,1
    - Dst: perror
      Src: /src/opus/dnn/adaconvtest.c:178,1
    - Dst: exit
      Src: /src/opus/dnn/adaconvtest.c:179,1
    - Dst: strcpy
      Src: /src/opus/dnn/adaconvtest.c:182,1
    - Dst: strcat
      Src: /src/opus/dnn/adaconvtest.c:183,1
    - Dst: fopen
      Src: /src/opus/dnn/adaconvtest.c:184,1
    - Dst: sprintf
      Src: /src/opus/dnn/adaconvtest.c:187,1
    - Dst: perror
      Src: /src/opus/dnn/adaconvtest.c:188,1
    - Dst: exit
      Src: /src/opus/dnn/adaconvtest.c:189,1
    - Dst: fread
      Src: /src/opus/dnn/adaconvtest.c:194,1
    - Dst: fprintf
      Src: /src/opus/dnn/adaconvtest.c:196,1
    - Dst: exit
      Src: /src/opus/dnn/adaconvtest.c:197,1
    - Dst: fread
      Src: /src/opus/dnn/adaconvtest.c:200,1
    - Dst: fprintf
      Src: /src/opus/dnn/adaconvtest.c:202,1
    - Dst: exit
      Src: /src/opus/dnn/adaconvtest.c:203,1
    - Dst: fread
      Src: /src/opus/dnn/adaconvtest.c:206,1
    - Dst: fprintf
      Src: /src/opus/dnn/adaconvtest.c:208,1
    - Dst: exit
      Src: /src/opus/dnn/adaconvtest.c:209,1
    - Dst: fread
      Src: /src/opus/dnn/adaconvtest.c:212,1
    - Dst: fprintf
      Src: /src/opus/dnn/adaconvtest.c:214,1
    - Dst: exit
      Src: /src/opus/dnn/adaconvtest.c:215,1
    - Dst: adacomb_process_frame
      Src: /src/opus/dnn/adaconvtest.c:218,1
    - Dst: pow
      Src: /src/opus/dnn/adaconvtest.c:225,1
    - Dst: sqrt
      Src: /src/opus/dnn/adaconvtest.c:227,1
    - Dst: printf
      Src: /src/opus/dnn/adaconvtest.c:228,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 60
    argCount: 14
    argNames:
    - prefix
    - num_frames
    - hAdaComb
    - kernel_layer
    - gain_layer
    - global_gain_layer
    - feature_dim
    - frame_size
    - overlap_size
    - kernel_size
    - left_padding
    - filter_gain_a
    - filter_gain_b
    - log_gain_limit
    argTypes:
    - char*
    - int
    - AdaCombState*
    - LinearLayer*
    - LinearLayer*
    - LinearLayer*
    - int
    - int
    - int
    - int
    - int
    - float
    - float
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 116
    functionDepth: 3
    functionLinenumber: 116
    functionLinenumberEnd: 231
    functionName: adacomb_compare
    functionSourceFile: /src/opus/dnn/adaconvtest.c
    functionUses: 0
    functionsReached:
    - adacomb_process_frame
    - exit
    - perror
    - strcat
    - sprintf
    - init_adacomb_state
    - strcpy
    - fread
    - fprintf
    - pow
    - fopen
    - sqrt
    - compute_overlap_window
    - printf
    linkageType: ''
    returnType: void
    signature: "void adacomb_compare(\n    const char * prefix,\n    int num_frames,\n
      \   AdaCombState* hAdaComb,\n    LinearLayer *kernel_layer,\n    LinearLayer
      *gain_layer,\n    LinearLayer *global_gain_layer,\n    int feature_dim,\n    int
      frame_size,\n    int overlap_size,\n    int kernel_size,\n    int left_padding,\n
      \   float filter_gain_a,\n    float filter_gain_b,\n    float log_gain_limit\n)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: init_adashape_state
      Src: /src/opus/dnn/adaconvtest.c:255,1
    - Dst: strcpy
      Src: /src/opus/dnn/adaconvtest.c:259,1
    - Dst: strcat
      Src: /src/opus/dnn/adaconvtest.c:260,1
    - Dst: fopen
      Src: /src/opus/dnn/adaconvtest.c:261,1
    - Dst: sprintf
      Src: /src/opus/dnn/adaconvtest.c:264,1
    - Dst: perror
      Src: /src/opus/dnn/adaconvtest.c:265,1
    - Dst: exit
      Src: /src/opus/dnn/adaconvtest.c:266,1
    - Dst: strcpy
      Src: /src/opus/dnn/adaconvtest.c:269,1
    - Dst: strcat
      Src: /src/opus/dnn/adaconvtest.c:270,1
    - Dst: fopen
      Src: /src/opus/dnn/adaconvtest.c:271,1
    - Dst: sprintf
      Src: /src/opus/dnn/adaconvtest.c:274,1
    - Dst: perror
      Src: /src/opus/dnn/adaconvtest.c:275,1
    - Dst: exit
      Src: /src/opus/dnn/adaconvtest.c:276,1
    - Dst: strcpy
      Src: /src/opus/dnn/adaconvtest.c:279,1
    - Dst: strcat
      Src: /src/opus/dnn/adaconvtest.c:280,1
    - Dst: fopen
      Src: /src/opus/dnn/adaconvtest.c:281,1
    - Dst: sprintf
      Src: /src/opus/dnn/adaconvtest.c:284,1
    - Dst: perror
      Src: /src/opus/dnn/adaconvtest.c:285,1
    - Dst: exit
      Src: /src/opus/dnn/adaconvtest.c:286,1
    - Dst: fread
      Src: /src/opus/dnn/adaconvtest.c:291,1
    - Dst: fprintf
      Src: /src/opus/dnn/adaconvtest.c:293,1
    - Dst: exit
      Src: /src/opus/dnn/adaconvtest.c:294,1
    - Dst: fread
      Src: /src/opus/dnn/adaconvtest.c:297,1
    - Dst: fprintf
      Src: /src/opus/dnn/adaconvtest.c:299,1
    - Dst: exit
      Src: /src/opus/dnn/adaconvtest.c:300,1
    - Dst: fread
      Src: /src/opus/dnn/adaconvtest.c:303,1
    - Dst: fprintf
      Src: /src/opus/dnn/adaconvtest.c:305,1
    - Dst: exit
      Src: /src/opus/dnn/adaconvtest.c:306,1
    - Dst: adashape_process_frame
      Src: /src/opus/dnn/adaconvtest.c:309,1
    - Dst: pow
      Src: /src/opus/dnn/adaconvtest.c:315,1
    - Dst: sqrt
      Src: /src/opus/dnn/adaconvtest.c:317,1
    - Dst: printf
      Src: /src/opus/dnn/adaconvtest.c:318,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 47
    argCount: 8
    argNames:
    - prefix
    - num_frames
    - hAdaShape
    - alpha1
    - alpha2
    - feature_dim
    - frame_size
    - avg_pool_k
    argTypes:
    - char*
    - int
    - AdaShapeState*
    - LinearLayer*
    - LinearLayer*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 233
    functionDepth: 2
    functionLinenumber: 233
    functionLinenumberEnd: 321
    functionName: adashape_compare
    functionSourceFile: /src/opus/dnn/adaconvtest.c
    functionUses: 0
    functionsReached:
    - exit
    - fprintf
    - perror
    - strcat
    - sprintf
    - adashape_process_frame
    - strcpy
    - fread
    - init_adashape_state
    - pow
    - fopen
    - sqrt
    - printf
    linkageType: ''
    returnType: void
    signature: "void adashape_compare(\n    const char * prefix,\n    int num_frames,\n
      \   AdaShapeState* hAdaShape,\n    LinearLayer *alpha1,\n    LinearLayer *alpha2,\n
      \   int feature_dim,\n    int frame_size,\n    int avg_pool_k\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: init_adaconv_state
      Src: /src/opus/dnn/adaconvtest.c:333,1
    - Dst: init_lacelayers
      Src: /src/opus/dnn/adaconvtest.c:335,1
    - Dst: init_nolacelayers
      Src: /src/opus/dnn/adaconvtest.c:336,1
    - Dst: printf
      Src: /src/opus/dnn/adaconvtest.c:338,1
    - Dst: adaconv_compare
      Src: /src/opus/dnn/adaconvtest.c:339,1
    - Dst: printf
      Src: /src/opus/dnn/adaconvtest.c:358,1
    - Dst: adaconv_compare
      Src: /src/opus/dnn/adaconvtest.c:359,1
    - Dst: printf
      Src: /src/opus/dnn/adaconvtest.c:378,1
    - Dst: adaconv_compare
      Src: /src/opus/dnn/adaconvtest.c:379,1
    - Dst: printf
      Src: /src/opus/dnn/adaconvtest.c:397,1
    - Dst: adaconv_compare
      Src: /src/opus/dnn/adaconvtest.c:398,1
    - Dst: printf
      Src: /src/opus/dnn/adaconvtest.c:416,1
    - Dst: adacomb_compare
      Src: /src/opus/dnn/adaconvtest.c:417,1
    - Dst: printf
      Src: /src/opus/dnn/adaconvtest.c:434,1
    - Dst: adashape_compare
      Src: /src/opus/dnn/adaconvtest.c:435,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 447
      start: 324
    functionDepth: 4
    functionLinenumber: 324
    functionLinenumberEnd: 447
    functionName: main
    functionSourceFile: /src/opus/dnn/adaconvtest.c
    functionUses: 0
    functionsReached:
    - adaconv_compare
    - init_nolacelayers
    - init_lacelayers
    - adashape_compare
    - adacomb_compare
    - init_adaconv_state
    - printf
    linkageType: ''
    returnType: int
    signature: int main()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cos
      Src: /src/opus/dnn/fwgan.c:53,1
    - Dst: sin
      Src: /src/opus/dnn/fwgan.c:54,1
    - Dst: sqrt
      Src: /src/opus/dnn/fwgan.c:68,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 3
    argNames:
    - pembed
    - phase
    - w0
    argTypes:
    - float*
    - float*
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 72
    functionName: pitch_embeddings
    functionSourceFile: /src/opus/dnn/fwgan.c
    functionUses: 0
    functionsReached:
    - sin
    - cos
    - sqrt
    linkageType: ''
    returnType: void
    signature: void pitch_embeddings(float *pembed, float *phase, double w0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lpc_from_cepstrum
      Src: /src/opus/dnn/fwgan.c:77,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - lpc
    - features
    argTypes:
    - float[]
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 83
    functionName: compute_wlpc
    functionSourceFile: /src/opus/dnn/fwgan.c
    functionUses: 0
    functionsReached:
    - lpc_from_cepstrum
    linkageType: ''
    returnType: void
    signature: void compute_wlpc(float lpc[LPC_ORDER], const float *features)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/dnn/fwgan.c:89,1
    - Dst: celt_assert
      Src: /src/opus/dnn/fwgan.c:90,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/fwgan.c:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 3
    argNames:
    - st
    - cond
    - features
    argTypes:
    - FWGANState*
    - float*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 85
    functionDepth: 1
    functionLinenumber: 85
    functionLinenumberEnd: 92
    functionName: run_fwgan_upsampler
    functionSourceFile: /src/opus/dnn/fwgan.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - compute_generic_dense
    linkageType: ''
    returnType: void
    signature: void run_fwgan_upsampler(FWGANState *st, float *cond, const float *features)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: compute_wlpc
      Src: /src/opus/dnn/fwgan.c:108,1
    - Dst: celt_inner_prod
      Src: /src/opus/dnn/fwgan.c:129,1
    - Dst: sqrt
      Src: /src/opus/dnn/fwgan.c:130,1
    - Dst: log
      Src: /src/opus/dnn/fwgan.c:132,1
    - Dst: sqrt
      Src: /src/opus/dnn/fwgan.c:132,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/fwgan.c:135,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/fwgan.c:136,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/fwgan.c:137,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/fwgan.c:138,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/fwgan.c:139,1
    - Dst: celt_assert
      Src: /src/opus/dnn/fwgan.c:140,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/fwgan.c:141,1
    - Dst: celt_assert
      Src: /src/opus/dnn/fwgan.c:144,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/fwgan.c:145,1
    - Dst: celt_assert
      Src: /src/opus/dnn/fwgan.c:147,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/fwgan.c:148,1
    - Dst: celt_assert
      Src: /src/opus/dnn/fwgan.c:149,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/fwgan.c:150,1
    - Dst: celt_assert
      Src: /src/opus/dnn/fwgan.c:151,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/fwgan.c:152,1
    - Dst: celt_assert
      Src: /src/opus/dnn/fwgan.c:153,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/fwgan.c:154,1
    - Dst: celt_assert
      Src: /src/opus/dnn/fwgan.c:155,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/fwgan.c:156,1
    - Dst: celt_assert
      Src: /src/opus/dnn/fwgan.c:157,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/fwgan.c:158,1
    - Dst: celt_assert
      Src: /src/opus/dnn/fwgan.c:159,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/fwgan.c:160,1
    - Dst: fwgan_synthesize_impl
      Src: /src/opus/dnn/fwgan.c:165,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/fwgan.c:166,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 46
    argCount: 3
    argNames:
    - st
    - pcm0
    - features0
    argTypes:
    - FWGANState*
    - float*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 95
    functionDepth: 2
    functionLinenumber: 95
    functionLinenumberEnd: 167
    functionName: fwgan_cont
    functionSourceFile: /src/opus/dnn/fwgan.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - celt_inner_prod
    - OPUS_COPY
    - fwgan_synthesize_impl
    - sqrt
    - log
    - compute_generic_dense
    - compute_wlpc
    linkageType: ''
    returnType: void
    signature: void fwgan_cont(FWGANState *st, const float *pcm0, const float *features0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pow
      Src: /src/opus/dnn/fwgan.c:171,1
    - Dst: sqrt
      Src: /src/opus/dnn/fwgan.c:171,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - pcm
    - c0
    - last_gain
    argTypes:
    - float*
    - float
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 174
    functionName: apply_gain
    functionSourceFile: /src/opus/dnn/fwgan.c
    functionUses: 0
    functionsReached:
    - sqrt
    - pow
    linkageType: ''
    returnType: void
    signature: void apply_gain(float *pcm, float c0, float *last_gain)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_MOVE
      Src: /src/opus/dnn/fwgan.c:181,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/fwgan.c:184,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 4
    argNames:
    - pcm
    - mem
    - lpc
    - last_lpc
    argTypes:
    - float*
    - float*
    - float*
    - float[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 176
    functionDepth: 1
    functionLinenumber: 176
    functionLinenumberEnd: 185
    functionName: fwgan_lpc_syn
    functionSourceFile: /src/opus/dnn/fwgan.c
    functionUses: 0
    functionsReached:
    - OPUS_MOVE
    - OPUS_COPY
    linkageType: ''
    returnType: void
    signature: void fwgan_lpc_syn(float *pcm, float *mem, const float *lpc, float
      last_lpc[LPC_ORDER])
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - pcm
    - preemph_mem
    argTypes:
    - float*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 194
    functionName: fwgan_preemphasis
    functionSourceFile: /src/opus/dnn/fwgan.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void fwgan_preemphasis(float *pcm, float *preemph_mem)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - pcm
    - deemph_mem
    argTypes:
    - float*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 202
    functionName: fwgan_deemphasis
    functionSourceFile: /src/opus/dnn/fwgan.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void fwgan_deemphasis(float *pcm, float *deemph_mem)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: IMAX
      Src: /src/opus/dnn/fwgan.c:207,1
    - Dst: pitch_embeddings
      Src: /src/opus/dnn/fwgan.c:214,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/fwgan.c:216,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/fwgan.c:217,1
    - Dst: compute_generic_conv1d
      Src: /src/opus/dnn/fwgan.c:219,1
    - Dst: celt_assert
      Src: /src/opus/dnn/fwgan.c:220,1
    - Dst: compute_gated_activation
      Src: /src/opus/dnn/fwgan.c:221,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/fwgan.c:226,1
    - Dst: apply_gain
      Src: /src/opus/dnn/fwgan.c:228,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/fwgan.c:229,1
    - Dst: compute_generic_gru
      Src: /src/opus/dnn/fwgan.c:233,1
    - Dst: celt_assert
      Src: /src/opus/dnn/fwgan.c:234,1
    - Dst: IMAX
      Src: /src/opus/dnn/fwgan.c:234,1
    - Dst: compute_gated_activation
      Src: /src/opus/dnn/fwgan.c:235,1
    - Dst: compute_generic_conv1d
      Src: /src/opus/dnn/fwgan.c:237,1
    - Dst: compute_gated_activation
      Src: /src/opus/dnn/fwgan.c:238,1
    - Dst: compute_generic_conv1d
      Src: /src/opus/dnn/fwgan.c:240,1
    - Dst: compute_gated_activation
      Src: /src/opus/dnn/fwgan.c:241,1
    - Dst: compute_generic_conv1d
      Src: /src/opus/dnn/fwgan.c:243,1
    - Dst: compute_gated_activation
      Src: /src/opus/dnn/fwgan.c:244,1
    - Dst: compute_generic_conv1d
      Src: /src/opus/dnn/fwgan.c:246,1
    - Dst: compute_gated_activation
      Src: /src/opus/dnn/fwgan.c:247,1
    - Dst: compute_generic_conv1d
      Src: /src/opus/dnn/fwgan.c:249,1
    - Dst: compute_gated_activation
      Src: /src/opus/dnn/fwgan.c:250,1
    - Dst: compute_generic_conv1d
      Src: /src/opus/dnn/fwgan.c:252,1
    - Dst: compute_gated_activation
      Src: /src/opus/dnn/fwgan.c:253,1
    - Dst: compute_generic_conv1d
      Src: /src/opus/dnn/fwgan.c:255,1
    - Dst: compute_gated_activation
      Src: /src/opus/dnn/fwgan.c:256,1
    - Dst: apply_gain
      Src: /src/opus/dnn/fwgan.c:258,1
    - Dst: fwgan_preemphasis
      Src: /src/opus/dnn/fwgan.c:259,1
    - Dst: fwgan_lpc_syn
      Src: /src/opus/dnn/fwgan.c:260,1
    - Dst: fwgan_deemphasis
      Src: /src/opus/dnn/fwgan.c:261,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 36
    argCount: 6
    argNames:
    - st
    - pcm
    - cond
    - w0
    - lpc
    - c0
    argTypes:
    - FWGANState*
    - float*
    - float*
    - double
    - float*
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 204
    functionDepth: 2
    functionLinenumber: 204
    functionLinenumberEnd: 262
    functionName: run_fwgan_subframe
    functionSourceFile: /src/opus/dnn/fwgan.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - OPUS_CLEAR
    - OPUS_COPY
    - fwgan_lpc_syn
    - fwgan_preemphasis
    - compute_generic_conv1d
    - compute_gated_activation
    - fwgan_deemphasis
    - pitch_embeddings
    - IMAX
    - apply_gain
    - compute_generic_gru
    linkageType: ''
    returnType: void
    signature: void run_fwgan_subframe(FWGANState *st, float *pcm, const float *cond,
      double w0, const float *lpc, float c0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/fwgan.c:267,1
    - Dst: init_fwgan
      Src: /src/opus/dnn/fwgan.c:268,1
    - Dst: celt_assert
      Src: /src/opus/dnn/fwgan.c:269,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - st
    argTypes:
    - FWGANState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 264
    functionDepth: 1
    functionLinenumber: 264
    functionLinenumberEnd: 271
    functionName: fwgan_init
    functionSourceFile: /src/opus/dnn/fwgan.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - init_fwgan
    - OPUS_CLEAR
    linkageType: ''
    returnType: void
    signature: void fwgan_init(FWGANState *st)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: parse_weights
      Src: /src/opus/dnn/fwgan.c:276,1
    - Dst: init_fwgan
      Src: /src/opus/dnn/fwgan.c:277,1
    - Dst: opus_free
      Src: /src/opus/dnn/fwgan.c:278,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - st
    - data
    - len
    argTypes:
    - FWGANState*
    - unsigned char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 273
    functionDepth: 2
    functionLinenumber: 273
    functionLinenumberEnd: 281
    functionName: fwgan_load_model
    functionSourceFile: /src/opus/dnn/fwgan.c
    functionUses: 0
    functionsReached:
    - parse_weights
    - init_fwgan
    - opus_free
    linkageType: ''
    returnType: int
    signature: int fwgan_load_model(FWGANState *st, const unsigned char *data, int
      len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/dnn/fwgan.c:290,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/fwgan.c:291,1
    - Dst: floor
      Src: /src/opus/dnn/fwgan.c:294,1
    - Dst: run_fwgan_upsampler
      Src: /src/opus/dnn/fwgan.c:296,1
    - Dst: run_fwgan_subframe
      Src: /src/opus/dnn/fwgan.c:300,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 4
    argNames:
    - st
    - pcm
    - lpc
    - features
    argTypes:
    - FWGANState*
    - float*
    - float*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 302
      start: 283
    functionDepth: 3
    functionLinenumber: 283
    functionLinenumberEnd: 302
    functionName: fwgan_synthesize_impl
    functionSourceFile: /src/opus/dnn/fwgan.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - OPUS_COPY
    - run_fwgan_subframe
    - floor
    - run_fwgan_upsampler
    linkageType: ''
    returnType: void
    signature: void fwgan_synthesize_impl(FWGANState *st, float *pcm, const float
      *lpc, const float *features)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: compute_wlpc
      Src: /src/opus/dnn/fwgan.c:308,1
    - Dst: fwgan_synthesize_impl
      Src: /src/opus/dnn/fwgan.c:309,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/fwgan.c:311,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/fwgan.c:312,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/fwgan.c:313,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - st
    - pcm
    - features
    argTypes:
    - FWGANState*
    - float*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 304
    functionDepth: 4
    functionLinenumber: 304
    functionLinenumberEnd: 314
    functionName: fwgan_synthesize
    functionSourceFile: /src/opus/dnn/fwgan.c
    functionUses: 0
    functionsReached:
    - OPUS_COPY
    - fwgan_synthesize_impl
    - compute_wlpc
    linkageType: ''
    returnType: void
    signature: void fwgan_synthesize(FWGANState *st, float *pcm, const float *features)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fwgan_synthesize
      Src: /src/opus/dnn/fwgan.c:320,1
    - Dst: floor
      Src: /src/opus/dnn/fwgan.c:321,1
    - Dst: MIN32
      Src: /src/opus/dnn/fwgan.c:321,1
    - Dst: MAX32
      Src: /src/opus/dnn/fwgan.c:321,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - st
    - pcm
    - features
    argTypes:
    - FWGANState*
    - opus_int16*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 316
    functionDepth: 5
    functionLinenumber: 316
    functionLinenumberEnd: 322
    functionName: fwgan_synthesize_int
    functionSourceFile: /src/opus/dnn/fwgan.c
    functionUses: 0
    functionsReached:
    - MIN32
    - MAX32
    - fwgan_synthesize
    - floor
    linkageType: ''
    returnType: void
    signature: void fwgan_synthesize_int(FWGANState *st, opus_int16 *pcm, const float
      *features)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: stat
      Src: /src/opus/dnn/fargan_demo.c:59,1
    - Dst: open
      Src: /src/opus/dnn/fargan_demo.c:64,1
    - Dst: mmap
      Src: /src/opus/dnn/fargan_demo.c:69,1
    - Dst: close
      Src: /src/opus/dnn/fargan_demo.c:74,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - filename
    - len
    argTypes:
    - char*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 76
    functionName: load_blob
    functionSourceFile: /src/opus/dnn/fargan_demo.c
    functionUses: 1
    functionsReached:
    - close
    - open
    - mmap
    - stat
    linkageType: ''
    returnType: void
    signature: void *load_blob(const char *filename, int *len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: munmap
      Src: /src/opus/dnn/fargan_demo.c:78,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - blob
    - len
    argTypes:
    - void*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionName: free_blob
    functionSourceFile: /src/opus/dnn/fargan_demo.c
    functionUses: 1
    functionsReached:
    - munmap
    linkageType: ''
    returnType: void
    signature: void free_blob(void *blob, int len)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fopen
      Src: /src/opus/dnn/fargan_demo.c:84,1
    - Dst: perror
      Src: /src/opus/dnn/fargan_demo.c:87,1
    - Dst: fseek
      Src: /src/opus/dnn/fargan_demo.c:91,1
    - Dst: ftell
      Src: /src/opus/dnn/fargan_demo.c:92,1
    - Dst: fseek
      Src: /src/opus/dnn/fargan_demo.c:93,1
    - Dst: malloc
      Src: /src/opus/dnn/fargan_demo.c:98,1
    - Dst: fread
      Src: /src/opus/dnn/fargan_demo.c:103,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 2
    argNames:
    - filename
    - len
    argTypes:
    - char*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 105
    functionName: load_blob
    functionSourceFile: /src/opus/dnn/fargan_demo.c
    functionUses: 1
    functionsReached:
    - fseek
    - ftell
    - perror
    - malloc
    - fread
    - fopen
    linkageType: ''
    returnType: void
    signature: void *load_blob(const char *filename, int *len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: free
      Src: /src/opus/dnn/fargan_demo.c:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - blob
    - len
    argTypes:
    - void*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 109
    functionName: free_blob
    functionSourceFile: /src/opus/dnn/fargan_demo.c
    functionUses: 1
    functionsReached:
    - free
    linkageType: ''
    returnType: void
    signature: void free_blob(void *blob, int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/dnn/fargan_demo.c:124,1
    - Dst: fprintf
      Src: /src/opus/dnn/fargan_demo.c:125,1
    - Dst: fprintf
      Src: /src/opus/dnn/fargan_demo.c:126,1
    - Dst: fprintf
      Src: /src/opus/dnn/fargan_demo.c:127,1
    - Dst: fprintf
      Src: /src/opus/dnn/fargan_demo.c:128,1
    - Dst: fprintf
      Src: /src/opus/dnn/fargan_demo.c:129,1
    - Dst: exit
      Src: /src/opus/dnn/fargan_demo.c:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 131
    functionName: usage
    functionSourceFile: /src/opus/dnn/fargan_demo.c
    functionUses: 8
    functionsReached:
    - exit
    - fprintf
    linkageType: ''
    returnType: void
    signature: void usage(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ch
    argTypes:
    - unsigned char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 140
    functionName: char_to_int
    functionSourceFile: /src/opus/dnn/fargan_demo.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: opus_uint32
    signature: opus_uint32 char_to_int(unsigned char ch[4])
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: opus_select_arch
      Src: /src/opus/dnn/fargan_demo.c:152,1
    - Dst: usage
      Src: /src/opus/dnn/fargan_demo.c:153,1
    - Dst: strcmp
      Src: /src/opus/dnn/fargan_demo.c:154,1
    - Dst: strcmp
      Src: /src/opus/dnn/fargan_demo.c:155,1
    - Dst: strcmp
      Src: /src/opus/dnn/fargan_demo.c:156,1
    - Dst: usage
      Src: /src/opus/dnn/fargan_demo.c:159,1
    - Dst: usage
      Src: /src/opus/dnn/fargan_demo.c:161,1
    - Dst: fopen
      Src: /src/opus/dnn/fargan_demo.c:162,1
    - Dst: fprintf
      Src: /src/opus/dnn/fargan_demo.c:164,1
    - Dst: exit
      Src: /src/opus/dnn/fargan_demo.c:165,1
    - Dst: fopen
      Src: /src/opus/dnn/fargan_demo.c:168,1
    - Dst: fprintf
      Src: /src/opus/dnn/fargan_demo.c:170,1
    - Dst: exit
      Src: /src/opus/dnn/fargan_demo.c:171,1
    - Dst: load_blob
      Src: /src/opus/dnn/fargan_demo.c:174,1
    - Dst: fprintf
      Src: /src/opus/dnn/fargan_demo.c:176,1
    - Dst: exit
      Src: /src/opus/dnn/fargan_demo.c:177,1
    - Dst: lpcnet_encoder_create
      Src: /src/opus/dnn/fargan_demo.c:182,1
    - Dst: fread
      Src: /src/opus/dnn/fargan_demo.c:187,1
    - Dst: feof
      Src: /src/opus/dnn/fargan_demo.c:188,1
    - Dst: lpcnet_compute_single_frame_features
      Src: /src/opus/dnn/fargan_demo.c:189,1
    - Dst: fwrite
      Src: /src/opus/dnn/fargan_demo.c:190,1
    - Dst: lpcnet_encoder_destroy
      Src: /src/opus/dnn/fargan_demo.c:192,1
    - Dst: fargan_init
      Src: /src/opus/dnn/fargan_demo.c:200,1
    - Dst: fargan_load_model
      Src: /src/opus/dnn/fargan_demo.c:202,1
    - Dst: fread
      Src: /src/opus/dnn/fargan_demo.c:205,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/fargan_demo.c:207,1
    - Dst: fargan_cont
      Src: /src/opus/dnn/fargan_demo.c:209,1
    - Dst: fread
      Src: /src/opus/dnn/fargan_demo.c:214,1
    - Dst: feof
      Src: /src/opus/dnn/fargan_demo.c:215,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/fargan_demo.c:218,1
    - Dst: fargan_synthesize
      Src: /src/opus/dnn/fargan_demo.c:220,1
    - Dst: floor
      Src: /src/opus/dnn/fargan_demo.c:221,1
    - Dst: MIN32
      Src: /src/opus/dnn/fargan_demo.c:221,1
    - Dst: MAX32
      Src: /src/opus/dnn/fargan_demo.c:221,1
    - Dst: fwrite
      Src: /src/opus/dnn/fargan_demo.c:223,1
    - Dst: fwrite
      Src: /src/opus/dnn/fargan_demo.c:226,1
    - Dst: parse_weights
      Src: /src/opus/dnn/fargan_demo.c:243,1
    - Dst: init_rdovaedec
      Src: /src/opus/dnn/fargan_demo.c:245,1
    - Dst: fread
      Src: /src/opus/dnn/fargan_demo.c:251,1
    - Dst: feof
      Src: /src/opus/dnn/fargan_demo.c:252,1
    - Dst: char_to_int
      Src: /src/opus/dnn/fargan_demo.c:253,1
    - Dst: fread
      Src: /src/opus/dnn/fargan_demo.c:255,1
    - Dst: feof
      Src: /src/opus/dnn/fargan_demo.c:256,1
    - Dst: char_to_int
      Src: /src/opus/dnn/fargan_demo.c:257,1
    - Dst: fread
      Src: /src/opus/dnn/fargan_demo.c:258,1
    - Dst: feof
      Src: /src/opus/dnn/fargan_demo.c:259,1
    - Dst: char_to_int
      Src: /src/opus/dnn/fargan_demo.c:260,1
    - Dst: fprintf
      Src: /src/opus/dnn/fargan_demo.c:262,1
    - Dst: exit
      Src: /src/opus/dnn/fargan_demo.c:263,1
    - Dst: fread
      Src: /src/opus/dnn/fargan_demo.c:266,1
    - Dst: feof
      Src: /src/opus/dnn/fargan_demo.c:267,1
    - Dst: ec_dec_init
      Src: /src/opus/dnn/fargan_demo.c:269,1
    - Dst: memset
      Src: /src/opus/dnn/fargan_demo.c:270,1
    - Dst: dred_decode_latents
      Src: /src/opus/dnn/fargan_demo.c:271,1
    - Dst: dred_rdovae_dec_init_states
      Src: /src/opus/dnn/fargan_demo.c:279,1
    - Dst: dred_decode_latents
      Src: /src/opus/dnn/fargan_demo.c:285,1
    - Dst: dred_rdovae_decode_qframe
      Src: /src/opus/dnn/fargan_demo.c:295,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/fargan_demo.c:302,1
    - Dst: fwrite
      Src: /src/opus/dnn/fargan_demo.c:306,1
    - Dst: fwrite
      Src: /src/opus/dnn/fargan_demo.c:307,1
    - Dst: fprintf
      Src: /src/opus/dnn/fargan_demo.c:312,1
    - Dst: fclose
      Src: /src/opus/dnn/fargan_demo.c:314,1
    - Dst: fclose
      Src: /src/opus/dnn/fargan_demo.c:315,1
    - Dst: free_blob
      Src: /src/opus/dnn/fargan_demo.c:317,1
    CyclomaticComplexity: 40
    EdgeCount: 40
    ICount: 115
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 143
    functionDepth: 4
    functionLinenumber: 143
    functionLinenumberEnd: 320
    functionName: main
    functionSourceFile: /src/opus/dnn/fargan_demo.c
    functionUses: 0
    functionsReached:
    - exit
    - OPUS_COPY
    - fprintf
    - dred_decode_latents
    - fargan_synthesize
    - parse_weights
    - fargan_cont
    - dred_rdovae_decode_qframe
    - strcmp
    - usage
    - floor
    - char_to_int
    - memset
    - lpcnet_encoder_destroy
    - init_rdovaedec
    - fclose
    - fwrite
    - free_blob
    - fargan_load_model
    - opus_select_arch
    - load_blob
    - ec_dec_init
    - MAX32
    - feof
    - lpcnet_encoder_create
    - lpcnet_compute_single_frame_features
    - dred_rdovae_dec_init_states
    - MIN32
    - fargan_init
    - fread
    - fopen
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 44
    functionName: SQUARE
    functionSourceFile: /src/opus/dnn/freq.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SQUARE(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SQUARE
      Src: /src/opus/dnn/freq.c:66,1
    - Dst: SQUARE
      Src: /src/opus/dnn/freq.c:67,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - bandE
    - X
    argTypes:
    - float*
    - kiss_fft_cpx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 79
    functionName: compute_band_energy_inverse
    functionSourceFile: /src/opus/dnn/freq.c
    functionUses: 0
    functionsReached:
    - SQUARE
    linkageType: ''
    returnType: void
    signature: void compute_band_energy_inverse(float *bandE, const kiss_fft_cpx *X)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/freq.c:92,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/freq.c:93,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/dnn/freq.c:100,1
    - Dst: SHR32
      Src: /src/opus/dnn/freq.c:101,1
    - Dst: SHL32
      Src: /src/opus/dnn/freq.c:102,1
    - Dst: SHR32
      Src: /src/opus/dnn/freq.c:105,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/dnn/freq.c:111,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/dnn/freq.c:112,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/dnn/freq.c:115,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/dnn/freq.c:115,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 4
    argNames:
    - lpc
    - rc
    - ac
    - p
    argTypes:
    - opus_val16*
    - opus_val16*
    - opus_val32*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 122
    functionName: lpcn_lpc
    functionSourceFile: /src/opus/dnn/freq.c
    functionUses: 0
    functionsReached:
    - SHL32
    - OPUS_CLEAR
    - MULT32_32_Q31
    - SHR32
    linkageType: ''
    returnType: float
    signature: "float lpcn_lpc(\n      opus_val16 *lpc, /* out: [0...p-1] LPC coefficients
      \     */\n      opus_val16 *rc,\nconst opus_val32 *ac,  /* in:  [0...p] autocorrelation
      values  */\nint          p\n)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SQUARE
      Src: /src/opus/dnn/freq.c:137,1
    - Dst: SQUARE
      Src: /src/opus/dnn/freq.c:138,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 2
    argNames:
    - bandE
    - X
    argTypes:
    - float*
    - kiss_fft_cpx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 149
    functionName: lpcn_compute_band_energy
    functionSourceFile: /src/opus/dnn/freq.c
    functionUses: 0
    functionsReached:
    - SQUARE
    linkageType: ''
    returnType: void
    signature: void lpcn_compute_band_energy(float *bandE, const kiss_fft_cpx *X)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/opus/dnn/freq.c:162,1
    - Dst: assert
      Src: /src/opus/dnn/freq.c:163,1
    - Dst: silk_burg_analysis
      Src: /src/opus/dnn/freq.c:165,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/freq.c:167,1
    - Dst: pow
      Src: /src/opus/dnn/freq.c:169,1
    - Dst: forward_transform
      Src: /src/opus/dnn/freq.c:170,1
    - Dst: compute_band_energy_inverse
      Src: /src/opus/dnn/freq.c:171,1
    - Dst: log10
      Src: /src/opus/dnn/freq.c:174,1
    - Dst: MAX16
      Src: /src/opus/dnn/freq.c:175,1
    - Dst: MAX16
      Src: /src/opus/dnn/freq.c:175,1
    - Dst: MAX16
      Src: /src/opus/dnn/freq.c:176,1
    - Dst: MAX16
      Src: /src/opus/dnn/freq.c:177,1
    - Dst: dct
      Src: /src/opus/dnn/freq.c:179,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 4
    argNames:
    - pcm
    - burg_cepstrum
    - len
    - order
    argTypes:
    - float*
    - float*
    - int
    - int
    assertStmts:
    - condition: (order <= LPC_ORDER)
      pos:
        line_end: 161
        line_start: 161
        source_file: /src/opus/dnn/freq.c
    - condition: (len <= FRAME_SIZE)
      pos:
        line_end: 162
        line_start: 162
        source_file: /src/opus/dnn/freq.c
    constantsTouched: []
    func_position:
      end: 181
      start: 151
    functionDepth: 2
    functionLinenumber: 151
    functionLinenumberEnd: 181
    functionName: compute_burg_cepstrum
    functionSourceFile: /src/opus/dnn/freq.c
    functionUses: 0
    functionsReached:
    - OPUS_CLEAR
    - silk_burg_analysis
    - compute_band_energy_inverse
    - dct
    - forward_transform
    - assert
    - log10
    - pow
    - MAX16
    linkageType: ''
    returnType: void
    signature: void compute_burg_cepstrum(const float *pcm, float *burg_cepstrum,
      int len, int order)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: compute_burg_cepstrum
      Src: /src/opus/dnn/freq.c:185,1
    - Dst: compute_burg_cepstrum
      Src: /src/opus/dnn/freq.c:186,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ceps
    - x
    argTypes:
    - float*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 183
    functionDepth: 3
    functionLinenumber: 183
    functionLinenumberEnd: 194
    functionName: burg_cepstral_analysis
    functionSourceFile: /src/opus/dnn/freq.c
    functionUses: 0
    functionsReached:
    - compute_burg_cepstrum
    linkageType: ''
    returnType: void
    signature: void burg_cepstral_analysis(float *ceps, const float *x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/opus/dnn/freq.c:199,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - g
    - bandE
    argTypes:
    - float*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 210
    functionName: interp_band_gain
    functionSourceFile: /src/opus/dnn/freq.c
    functionUses: 0
    functionsReached:
    - memset
    linkageType: ''
    returnType: void
    signature: void interp_band_gain(float *g, const float *bandE)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sqrt
      Src: /src/opus/dnn/freq.c:221,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - out
    - in
    argTypes:
    - float*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 223
    functionName: dct
    functionSourceFile: /src/opus/dnn/freq.c
    functionUses: 2
    functionsReached:
    - sqrt
    linkageType: ''
    returnType: void
    signature: void dct(float *out, const float *in)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sqrt
      Src: /src/opus/dnn/freq.c:233,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - out
    - in
    argTypes:
    - float*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 235
    functionName: idct
    functionSourceFile: /src/opus/dnn/freq.c
    functionUses: 0
    functionsReached:
    - sqrt
    linkageType: ''
    returnType: void
    signature: void idct(float *out, const float *in)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_fft
      Src: /src/opus/dnn/freq.c:245,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - out
    - in
    argTypes:
    - kiss_fft_cpx*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 249
    functionName: forward_transform
    functionSourceFile: /src/opus/dnn/freq.c
    functionUses: 3
    functionsReached:
    - opus_fft
    linkageType: ''
    returnType: void
    signature: void forward_transform(kiss_fft_cpx *out, const float *in)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_fft
      Src: /src/opus/dnn/freq.c:262,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - out
    - in
    argTypes:
    - float*
    - kiss_fft_cpx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 251
    functionDepth: 0
    functionLinenumber: 251
    functionLinenumberEnd: 268
    functionName: inverse_transform
    functionSourceFile: /src/opus/dnn/freq.c
    functionUses: 0
    functionsReached:
    - opus_fft
    linkageType: ''
    returnType: void
    signature: void inverse_transform(float *out, const kiss_fft_cpx *in)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: interp_band_gain
      Src: /src/opus/dnn/freq.c:279,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/freq.c:281,1
    - Dst: inverse_transform
      Src: /src/opus/dnn/freq.c:283,1
    - Dst: lpcn_lpc
      Src: /src/opus/dnn/freq.c:290,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - lpc
    - Ex
    argTypes:
    - float*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 270
    functionDepth: 2
    functionLinenumber: 270
    functionLinenumberEnd: 292
    functionName: lpc_from_bands
    functionSourceFile: /src/opus/dnn/freq.c
    functionUses: 0
    functionsReached:
    - lpcn_lpc
    - interp_band_gain
    - inverse_transform
    - OPUS_CLEAR
    linkageType: ''
    returnType: float
    signature: float lpc_from_bands(float *lpc, const float *Ex)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - lpc
    - gamma
    argTypes:
    - float*
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 294
    functionDepth: 0
    functionLinenumber: 294
    functionLinenumberEnd: 303
    functionName: lpc_weighting
    functionSourceFile: /src/opus/dnn/freq.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void lpc_weighting(float *lpc, float gamma)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/freq.c:310,1
    - Dst: idct
      Src: /src/opus/dnn/freq.c:312,1
    - Dst: pow
      Src: /src/opus/dnn/freq.c:313,1
    - Dst: lpc_from_bands
      Src: /src/opus/dnn/freq.c:314,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - lpc
    - cepstrum
    argTypes:
    - float*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 305
    functionDepth: 3
    functionLinenumber: 305
    functionLinenumberEnd: 315
    functionName: lpc_from_cepstrum
    functionSourceFile: /src/opus/dnn/freq.c
    functionUses: 1
    functionsReached:
    - idct
    - lpc_from_bands
    - OPUS_COPY
    - pow
    linkageType: ''
    returnType: float
    signature: float lpc_from_cepstrum(float *lpc, const float *cepstrum)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 317
    functionDepth: 0
    functionLinenumber: 317
    functionLinenumberEnd: 323
    functionName: apply_window
    functionSourceFile: /src/opus/dnn/freq.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void apply_window(float *x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/lpcnet_plc.c:46,1
    - Dst: lpcnet_encoder_init
      Src: /src/opus/dnn/lpcnet_plc.c:49,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/lpcnet_plc.c:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - st
    argTypes:
    - LPCNetPLCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 56
    functionName: lpcnet_plc_reset
    functionSourceFile: /src/opus/dnn/lpcnet_plc.c
    functionUses: 1
    functionsReached:
    - lpcnet_encoder_init
    - OPUS_CLEAR
    linkageType: ''
    returnType: void
    signature: void lpcnet_plc_reset(LPCNetPLCState *st)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: opus_select_arch
      Src: /src/opus/dnn/lpcnet_plc.c:60,1
    - Dst: fargan_init
      Src: /src/opus/dnn/lpcnet_plc.c:61,1
    - Dst: lpcnet_encoder_init
      Src: /src/opus/dnn/lpcnet_plc.c:62,1
    - Dst: init_plcmodel
      Src: /src/opus/dnn/lpcnet_plc.c:65,1
    - Dst: celt_assert
      Src: /src/opus/dnn/lpcnet_plc.c:70,1
    - Dst: lpcnet_plc_reset
      Src: /src/opus/dnn/lpcnet_plc.c:71,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - st
    argTypes:
    - LPCNetPLCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 58
    functionDepth: 2
    functionLinenumber: 58
    functionLinenumberEnd: 73
    functionName: lpcnet_plc_init
    functionSourceFile: /src/opus/dnn/lpcnet_plc.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - opus_select_arch
    - init_plcmodel
    - lpcnet_encoder_init
    - fargan_init
    - lpcnet_plc_reset
    linkageType: ''
    returnType: int
    signature: int lpcnet_plc_init(LPCNetPLCState *st)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: parse_weights
      Src: /src/opus/dnn/lpcnet_plc.c:78,1
    - Dst: init_plcmodel
      Src: /src/opus/dnn/lpcnet_plc.c:79,1
    - Dst: opus_free
      Src: /src/opus/dnn/lpcnet_plc.c:80,1
    - Dst: lpcnet_encoder_load_model
      Src: /src/opus/dnn/lpcnet_plc.c:82,1
    - Dst: fargan_load_model
      Src: /src/opus/dnn/lpcnet_plc.c:85,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 3
    argNames:
    - st
    - data
    - len
    argTypes:
    - LPCNetPLCState*
    - void*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 75
    functionDepth: 2
    functionLinenumber: 75
    functionLinenumberEnd: 89
    functionName: lpcnet_plc_load_model
    functionSourceFile: /src/opus/dnn/lpcnet_plc.c
    functionUses: 1
    functionsReached:
    - parse_weights
    - fargan_load_model
    - lpcnet_encoder_load_model
    - init_plcmodel
    - opus_free
    linkageType: ''
    returnType: int
    signature: int lpcnet_plc_load_model(LPCNetPLCState *st, const void *data, int
      len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/dnn/lpcnet_plc.c:96,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/lpcnet_plc.c:97,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - st
    - features
    argTypes:
    - LPCNetPLCState*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 99
    functionName: lpcnet_plc_fec_add
    functionSourceFile: /src/opus/dnn/lpcnet_plc.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - OPUS_COPY
    linkageType: ''
    returnType: void
    signature: void lpcnet_plc_fec_add(LPCNetPLCState *st, const float *features)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - st
    argTypes:
    - LPCNetPLCState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionName: lpcnet_plc_fec_clear
    functionSourceFile: /src/opus/dnn/lpcnet_plc.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void lpcnet_plc_fec_clear(LPCNetPLCState *st)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/dnn/lpcnet_plc.c:110,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/lpcnet_plc.c:111,1
    - Dst: compute_generic_gru
      Src: /src/opus/dnn/lpcnet_plc.c:112,1
    - Dst: compute_generic_gru
      Src: /src/opus/dnn/lpcnet_plc.c:113,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/lpcnet_plc.c:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - st
    - out
    - in
    argTypes:
    - LPCNetPLCState*
    - float*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 115
    functionName: compute_plc_pred
    functionSourceFile: /src/opus/dnn/lpcnet_plc.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - compute_generic_dense
    - compute_generic_gru
    linkageType: ''
    returnType: void
    signature: void compute_plc_pred(LPCNetPLCState *st, float *out, const float *in)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/lpcnet_plc.c:121,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/lpcnet_plc.c:124,1
    - Dst: compute_plc_pred
      Src: /src/opus/dnn/lpcnet_plc.c:126,1
    - Dst: compute_plc_pred
      Src: /src/opus/dnn/lpcnet_plc.c:130,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - st
    - out
    argTypes:
    - LPCNetPLCState*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 117
    functionDepth: 2
    functionLinenumber: 117
    functionLinenumberEnd: 134
    functionName: get_fec_or_pred
    functionSourceFile: /src/opus/dnn/lpcnet_plc.c
    functionUses: 0
    functionsReached:
    - compute_plc_pred
    - OPUS_COPY
    linkageType: ''
    returnType: int
    signature: int get_fec_or_pred(LPCNetPLCState *st, float *out)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_MOVE
      Src: /src/opus/dnn/lpcnet_plc.c:137,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/lpcnet_plc.c:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - st
    - features
    argTypes:
    - LPCNetPLCState*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 136
    functionDepth: 1
    functionLinenumber: 136
    functionLinenumberEnd: 139
    functionName: queue_features
    functionSourceFile: /src/opus/dnn/lpcnet_plc.c
    functionUses: 0
    functionsReached:
    - OPUS_MOVE
    - OPUS_COPY
    linkageType: ''
    returnType: void
    signature: void queue_features(LPCNetPLCState *st, const float *features)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_MOVE
      Src: /src/opus/dnn/lpcnet_plc.c:149,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - st
    - pcm
    argTypes:
    - LPCNetPLCState*
    - opus_int16*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 144
    functionDepth: 1
    functionLinenumber: 144
    functionLinenumberEnd: 154
    functionName: lpcnet_plc_update
    functionSourceFile: /src/opus/dnn/lpcnet_plc.c
    functionUses: 2
    functionsReached:
    - OPUS_MOVE
    linkageType: ''
    returnType: int
    signature: int lpcnet_plc_update(LPCNetPLCState *st, opus_int16 *pcm)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/dnn/lpcnet_plc.c:159,1
    - Dst: celt_assert
      Src: /src/opus/dnn/lpcnet_plc.c:166,1
    - Dst: burg_cepstral_analysis
      Src: /src/opus/dnn/lpcnet_plc.c:168,1
    - Dst: lpcnet_compute_single_frame_features_float
      Src: /src/opus/dnn/lpcnet_plc.c:169,1
    - Dst: queue_features
      Src: /src/opus/dnn/lpcnet_plc.c:171,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/lpcnet_plc.c:172,1
    - Dst: compute_plc_pred
      Src: /src/opus/dnn/lpcnet_plc.c:176,1
    - Dst: get_fec_or_pred
      Src: /src/opus/dnn/lpcnet_plc.c:183,1
    - Dst: queue_features
      Src: /src/opus/dnn/lpcnet_plc.c:184,1
    - Dst: get_fec_or_pred
      Src: /src/opus/dnn/lpcnet_plc.c:187,1
    - Dst: queue_features
      Src: /src/opus/dnn/lpcnet_plc.c:188,1
    - Dst: fargan_cont
      Src: /src/opus/dnn/lpcnet_plc.c:189,1
    - Dst: get_fec_or_pred
      Src: /src/opus/dnn/lpcnet_plc.c:194,1
    - Dst: MAX16
      Src: /src/opus/dnn/lpcnet_plc.c:196,1
    - Dst: MAX16
      Src: /src/opus/dnn/lpcnet_plc.c:197,1
    - Dst: fargan_synthesize_int
      Src: /src/opus/dnn/lpcnet_plc.c:198,1
    - Dst: queue_features
      Src: /src/opus/dnn/lpcnet_plc.c:199,1
    - Dst: OPUS_MOVE
      Src: /src/opus/dnn/lpcnet_plc.c:203,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 51
    argCount: 2
    argNames:
    - st
    - pcm
    argTypes:
    - LPCNetPLCState*
    - opus_int16*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 157
    functionDepth: 5
    functionLinenumber: 157
    functionLinenumberEnd: 207
    functionName: lpcnet_plc_conceal
    functionSourceFile: /src/opus/dnn/lpcnet_plc.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - fargan_cont
    - OPUS_COPY
    - get_fec_or_pred
    - fargan_synthesize_int
    - OPUS_MOVE
    - queue_features
    - burg_cepstral_analysis
    - lpcnet_compute_single_frame_features_float
    - compute_plc_pred
    - MAX16
    linkageType: ''
    returnType: int
    signature: int lpcnet_plc_conceal(LPCNetPLCState *st, opus_int16 *pcm)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 37
    functionName: CAT_SUFFIX2
    functionSourceFile: /src/opus/dnn/nnet_arch.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CAT_SUFFIX2(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 38
    functionName: CAT_SUFFIX
    functionSourceFile: /src/opus/dnn/nnet_arch.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CAT_SUFFIX(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 40
    functionName: RTCD_SUF
    functionSourceFile: /src/opus/dnn/nnet_arch.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RTCD_SUF(name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/dnn/nnet_arch.h:56,1
    - Dst: vec_sigmoid
      Src: /src/opus/dnn/nnet_arch.h:57,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - y
    - x
    - N
    argTypes:
    - float*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 60
    functionName: vec_swish
    functionSourceFile: /src/opus/dnn/nnet_arch.h
    functionUses: 0
    functionsReached:
    - celt_assert
    - vec_sigmoid
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE vec_swish(float *y, const float *x, int N)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 65
    functionName: relu
    functionSourceFile: /src/opus/dnn/nnet_arch.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE relu(float x)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: exp
      Src: /src/opus/dnn/nnet_arch.h:76,1
    - Dst: vec_sigmoid
      Src: /src/opus/dnn/nnet_arch.h:79,1
    - Dst: tanh
      Src: /src/opus/dnn/nnet_arch.h:85,1
    - Dst: vec_tanh
      Src: /src/opus/dnn/nnet_arch.h:88,1
    - Dst: vec_swish
      Src: /src/opus/dnn/nnet_arch.h:91,1
    - Dst: relu
      Src: /src/opus/dnn/nnet_arch.h:94,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/nnet_arch.h:97,1
    - Dst: softmax
      Src: /src/opus/dnn/nnet_arch.h:102,1
    - Dst: softmax
      Src: /src/opus/dnn/nnet_arch.h:111,1
    - Dst: celt_assert
      Src: /src/opus/dnn/nnet_arch.h:113,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 39
    argCount: 4
    argNames:
    - output
    - input
    - N
    - activation
    argTypes:
    - float*
    - float*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 69
    functionDepth: 2
    functionLinenumber: 69
    functionLinenumberEnd: 119
    functionName: RTCD_SUF
    functionSourceFile: /src/opus/dnn/nnet_arch.h
    functionUses: 0
    functionsReached:
    - celt_assert
    - OPUS_COPY
    - softmax
    - exp
    - vec_swish
    - vec_sigmoid
    - relu
    - vec_tanh
    - tanh
    linkageType: ''
    returnType: void
    signature: void RTCD_SUF(compute_activation_)(float *output, const float *input,
      int N, int activation)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/dnn/nnet_arch.h:126,1
    - Dst: sparse_sgemv8x4
      Src: /src/opus/dnn/nnet_arch.h:131,1
    - Dst: sgemv
      Src: /src/opus/dnn/nnet_arch.h:132,1
    - Dst: sparse_cgemv8x4
      Src: /src/opus/dnn/nnet_arch.h:134,1
    - Dst: cgemv8x4
      Src: /src/opus/dnn/nnet_arch.h:135,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/nnet_arch.h:141,1
    - Dst: celt_assert
      Src: /src/opus/dnn/nnet_arch.h:147,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 3
    argNames:
    - linear
    - out
    - in
    argTypes:
    - LinearLayer*
    - float*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 154
    functionName: RTCD_SUF
    functionSourceFile: /src/opus/dnn/nnet_arch.h
    functionUses: 0
    functionsReached:
    - celt_assert
    - OPUS_CLEAR
    - sgemv
    - sparse_cgemv8x4
    - cgemv8x4
    - sparse_sgemv8x4
    linkageType: ''
    returnType: void
    signature: void RTCD_SUF(compute_linear_) (const LinearLayer *linear, float *out,
      const float *in)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/nnet_arch.h:168,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 9
    argNames:
    - out
    - weights
    - in_channels
    - out_channels
    - ktime
    - kheight
    - in
    - height
    - hstride
    argTypes:
    - float*
    - float*
    - int
    - int
    - int
    - int
    - float*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 161
    functionDepth: 1
    functionLinenumber: 161
    functionLinenumberEnd: 183
    functionName: conv2d_float
    functionSourceFile: /src/opus/dnn/nnet_arch.h
    functionUses: 0
    functionsReached:
    - OPUS_CLEAR
    linkageType: ''
    returnType: void
    signature: void conv2d_float(float *out, const float *weights, int in_channels,
      int out_channels, int ktime, int kheight, const float *in, int height, int hstride)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/nnet_arch.h:196,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 7
    argNames:
    - out
    - weights
    - in_channels
    - out_channels
    - in
    - height
    - hstride
    argTypes:
    - float*
    - float*
    - int
    - int
    - float*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 187
    functionDepth: 1
    functionLinenumber: 187
    functionLinenumberEnd: 213
    functionName: conv2d_3x3_float
    functionSourceFile: /src/opus/dnn/nnet_arch.h
    functionUses: 0
    functionsReached:
    - OPUS_CLEAR
    linkageType: ''
    returnType: void
    signature: void conv2d_3x3_float(float *out, const float *weights, int in_channels,
      int out_channels, const float *in, int height, int hstride)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/dnn/nnet_arch.h:223,1
    - Dst: celt_assert
      Src: /src/opus/dnn/nnet_arch.h:225,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/nnet_arch.h:226,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/nnet_arch.h:227,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/nnet_arch.h:228,1
    - Dst: conv2d_3x3_float
      Src: /src/opus/dnn/nnet_arch.h:231,1
    - Dst: conv2d_float
      Src: /src/opus/dnn/nnet_arch.h:233,1
    - Dst: RTCD_SUF
      Src: /src/opus/dnn/nnet_arch.h:241,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 7
    argNames:
    - conv
    - out
    - mem
    - in
    - height
    - hstride
    - activation
    argTypes:
    - Conv2dLayer*
    - float*
    - float*
    - float*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 217
    functionDepth: 2
    functionLinenumber: 217
    functionLinenumberEnd: 243
    functionName: RTCD_SUF
    functionSourceFile: /src/opus/dnn/nnet_arch.h
    functionUses: 1
    functionsReached:
    - celt_assert
    - OPUS_COPY
    - conv2d_float
    - RTCD_SUF
    - conv2d_3x3_float
    linkageType: ''
    returnType: void
    signature: void RTCD_SUF(compute_conv2d_)(const Conv2dLayer *conv, float *out,
      float *mem, const float *in, int height, int hstride, int activation)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/opus/dnn/lpcnet.c:52,1
    - Dst: printf
      Src: /src/opus/dnn/lpcnet.c:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - x
    - N
    argTypes:
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 54
    functionName: print_vector
    functionSourceFile: /src/opus/dnn/lpcnet.c
    functionUses: 0
    functionsReached:
    - printf
    linkageType: ''
    returnType: void
    signature: void print_vector(float *x, int N)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/lpcnet.c:63,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - lpc
    - rc
    argTypes:
    - float*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 79
    functionName: rc2lpc
    functionSourceFile: /src/opus/dnn/lpcnet.c
    functionUses: 0
    functionsReached:
    - OPUS_COPY
    linkageType: ''
    returnType: void
    signature: void rc2lpc(float *lpc, const float *rc)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: floor
      Src: /src/opus/dnn/lpcnet.c:94,1
    - Dst: IMIN
      Src: /src/opus/dnn/lpcnet.c:95,1
    - Dst: IMAX
      Src: /src/opus/dnn/lpcnet.c:95,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/lpcnet.c:97,1
    - Dst: compute_embedding
      Src: /src/opus/dnn/lpcnet.c:98,1
    - Dst: compute_conv1d
      Src: /src/opus/dnn/lpcnet.c:99,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/lpcnet.c:100,1
    - Dst: compute_conv1d
      Src: /src/opus/dnn/lpcnet.c:101,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/lpcnet.c:102,1
    - Dst: _lpcnet_compute_dense
      Src: /src/opus/dnn/lpcnet.c:103,1
    - Dst: _lpcnet_compute_dense
      Src: /src/opus/dnn/lpcnet.c:104,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/lpcnet.c:105,1
    - Dst: _lpcnet_compute_dense
      Src: /src/opus/dnn/lpcnet.c:106,1
    - Dst: _lpcnet_compute_dense
      Src: /src/opus/dnn/lpcnet.c:107,1
    - Dst: rc2lpc
      Src: /src/opus/dnn/lpcnet.c:109,1
    - Dst: memcpy
      Src: /src/opus/dnn/lpcnet.c:111,1
    - Dst: memmove
      Src: /src/opus/dnn/lpcnet.c:112,1
    - Dst: lpc_from_cepstrum
      Src: /src/opus/dnn/lpcnet.c:113,1
    - Dst: lpc_from_cepstrum
      Src: /src/opus/dnn/lpcnet.c:115,1
    - Dst: lpc_weighting
      Src: /src/opus/dnn/lpcnet.c:118,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 25
    argCount: 5
    argNames:
    - lpcnet
    - gru_a_condition
    - gru_b_condition
    - lpc
    - features
    argTypes:
    - LPCNetState*
    - float*
    - float*
    - float*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 83
    functionDepth: 4
    functionLinenumber: 83
    functionLinenumberEnd: 121
    functionName: run_frame_network
    functionSourceFile: /src/opus/dnn/lpcnet.c
    functionUses: 0
    functionsReached:
    - compute_embedding
    - OPUS_CLEAR
    - IMIN
    - OPUS_COPY
    - memcpy
    - memmove
    - lpc_from_cepstrum
    - floor
    - rc2lpc
    - compute_conv1d
    - _lpcnet_compute_dense
    - lpc_weighting
    - IMAX
    linkageType: ''
    returnType: void
    signature: void run_frame_network(LPCNetState *lpcnet, float *gru_a_condition,
      float *gru_b_condition, float *lpc, const float *features)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/dnn/lpcnet.c:126,1
    - Dst: OPUS_MOVE
      Src: /src/opus/dnn/lpcnet.c:128,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/lpcnet.c:132,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - lpcnet
    - features
    argTypes:
    - LPCNetState*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 123
    functionDepth: 1
    functionLinenumber: 123
    functionLinenumberEnd: 133
    functionName: run_frame_network_deferred
    functionSourceFile: /src/opus/dnn/lpcnet.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - OPUS_MOVE
    - OPUS_COPY
    linkageType: ''
    returnType: void
    signature: void run_frame_network_deferred(LPCNetState *lpcnet, const float *features)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: run_frame_network
      Src: /src/opus/dnn/lpcnet.c:142,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - lpcnet
    argTypes:
    - LPCNetState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 135
    functionDepth: 5
    functionLinenumber: 135
    functionLinenumberEnd: 145
    functionName: run_frame_network_flush
    functionSourceFile: /src/opus/dnn/lpcnet.c
    functionUses: 0
    functionsReached:
    - run_frame_network
    linkageType: ''
    returnType: void
    signature: void run_frame_network_flush(LPCNetState *lpcnet)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: compute_gru_a_input
      Src: /src/opus/dnn/lpcnet.c:155,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/lpcnet.c:157,1
    - Dst: accum_embedding
      Src: /src/opus/dnn/lpcnet.c:158,1
    - Dst: accum_embedding
      Src: /src/opus/dnn/lpcnet.c:159,1
    - Dst: accum_embedding
      Src: /src/opus/dnn/lpcnet.c:160,1
    - Dst: compute_sparse_gru
      Src: /src/opus/dnn/lpcnet.c:163,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/lpcnet.c:164,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/lpcnet.c:165,1
    - Dst: compute_gruB
      Src: /src/opus/dnn/lpcnet.c:166,1
    - Dst: sample_mdense
      Src: /src/opus/dnn/lpcnet.c:167,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 8
    argNames:
    - lpcnet
    - gru_a_condition
    - gru_b_condition
    - last_exc
    - last_sig
    - pred
    - sampling_logit_table
    - rng
    argTypes:
    - LPCNetState*
    - float*
    - float*
    - int
    - int
    - int
    - float*
    - kiss99_ctx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 147
    functionDepth: 1
    functionLinenumber: 147
    functionLinenumberEnd: 168
    functionName: run_sample_network
    functionSourceFile: /src/opus/dnn/lpcnet.c
    functionUses: 0
    functionsReached:
    - compute_gruB
    - accum_embedding
    - sample_mdense
    - OPUS_COPY
    - compute_gru_a_input
    - compute_sparse_gru
    linkageType: ''
    returnType: int
    signature: int run_sample_network(LPCNetState *lpcnet, const float *gru_a_condition,
      const float *gru_b_condition, int last_exc, int last_sig, int pred, const float
      *sampling_logit_table, kiss99_ctx *rng)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 173
    functionName: lpcnet_get_size
    functionSourceFile: /src/opus/dnn/lpcnet.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int lpcnet_get_size()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/lpcnet.c:178,1
    - Dst: lin2ulaw
      Src: /src/opus/dnn/lpcnet.c:181,1
    - Dst: kiss99_srand
      Src: /src/opus/dnn/lpcnet.c:182,1
    - Dst: strlen
      Src: /src/opus/dnn/lpcnet.c:182,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - lpcnet
    argTypes:
    - LPCNetState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 175
    functionDepth: 2
    functionLinenumber: 175
    functionLinenumberEnd: 183
    functionName: lpcnet_reset
    functionSourceFile: /src/opus/dnn/lpcnet.c
    functionUses: 0
    functionsReached:
    - lin2ulaw
    - strlen
    - OPUS_CLEAR
    - kiss99_srand
    linkageType: ''
    returnType: void
    signature: void lpcnet_reset(LPCNetState *lpcnet)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: log
      Src: /src/opus/dnn/lpcnet.c:191,1
    - Dst: init_lpcnet_model
      Src: /src/opus/dnn/lpcnet.c:194,1
    - Dst: lpcnet_reset
      Src: /src/opus/dnn/lpcnet.c:198,1
    - Dst: celt_assert
      Src: /src/opus/dnn/lpcnet.c:199,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - lpcnet
    argTypes:
    - LPCNetState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 185
    functionDepth: 3
    functionLinenumber: 185
    functionLinenumberEnd: 201
    functionName: lpcnet_init
    functionSourceFile: /src/opus/dnn/lpcnet.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - log
    - init_lpcnet_model
    - lpcnet_reset
    linkageType: ''
    returnType: int
    signature: int lpcnet_init(LPCNetState *lpcnet)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: parse_weights
      Src: /src/opus/dnn/lpcnet.c:206,1
    - Dst: init_lpcnet_model
      Src: /src/opus/dnn/lpcnet.c:207,1
    - Dst: opus_free
      Src: /src/opus/dnn/lpcnet.c:208,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 3
    argNames:
    - st
    - data
    - len
    argTypes:
    - LPCNetState*
    - unsigned char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 203
    functionDepth: 2
    functionLinenumber: 203
    functionLinenumberEnd: 211
    functionName: lpcnet_load_model
    functionSourceFile: /src/opus/dnn/lpcnet.c
    functionUses: 0
    functionsReached:
    - parse_weights
    - init_lpcnet_model
    - opus_free
    linkageType: ''
    returnType: int
    signature: int lpcnet_load_model(LPCNetState *st, const unsigned char *data, int
      len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_alloc
      Src: /src/opus/dnn/lpcnet.c:217,1
    - Dst: lpcnet_get_size
      Src: /src/opus/dnn/lpcnet.c:217,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/lpcnet.c:218,1
    - Dst: lpcnet_init
      Src: /src/opus/dnn/lpcnet.c:219,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 214
    functionDepth: 4
    functionLinenumber: 214
    functionLinenumberEnd: 221
    functionName: lpcnet_create
    functionSourceFile: /src/opus/dnn/lpcnet.c
    functionUses: 0
    functionsReached:
    - lpcnet_get_size
    - OPUS_CLEAR
    - lpcnet_init
    - opus_alloc
    linkageType: ''
    returnType: LPCNetState
    signature: LPCNetState *lpcnet_create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_free
      Src: /src/opus/dnn/lpcnet.c:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - lpcnet
    argTypes:
    - LPCNetState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 223
    functionDepth: 1
    functionLinenumber: 223
    functionLinenumberEnd: 226
    functionName: lpcnet_destroy
    functionSourceFile: /src/opus/dnn/lpcnet.c
    functionUses: 0
    functionsReached:
    - opus_free
    linkageType: ''
    returnType: void
    signature: void lpcnet_destroy(LPCNetState *lpcnet)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lin2ulaw
      Src: /src/opus/dnn/lpcnet.c:231,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/lpcnet.c:232,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/lpcnet.c:233,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/lpcnet.c:234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - lpcnet
    argTypes:
    - LPCNetState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 228
    functionDepth: 2
    functionLinenumber: 228
    functionLinenumberEnd: 235
    functionName: lpcnet_reset_signal
    functionSourceFile: /src/opus/dnn/lpcnet.c
    functionUses: 0
    functionsReached:
    - lin2ulaw
    - OPUS_CLEAR
    linkageType: ''
    returnType: void
    signature: void lpcnet_reset_signal(LPCNetState *lpcnet)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/lpcnet.c:243,1
    - Dst: lin2ulaw
      Src: /src/opus/dnn/lpcnet.c:255,1
    - Dst: lin2ulaw
      Src: /src/opus/dnn/lpcnet.c:256,1
    - Dst: run_sample_network
      Src: /src/opus/dnn/lpcnet.c:257,1
    - Dst: lin2ulaw
      Src: /src/opus/dnn/lpcnet.c:259,1
    - Dst: ulaw2lin
      Src: /src/opus/dnn/lpcnet.c:262,1
    - Dst: OPUS_MOVE
      Src: /src/opus/dnn/lpcnet.c:264,1
    - Dst: floor
      Src: /src/opus/dnn/lpcnet.c:271,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 29
    argCount: 4
    argNames:
    - lpcnet
    - output
    - N
    - preload
    argTypes:
    - LPCNetState*
    - opus_int16*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 237
    functionDepth: 2
    functionLinenumber: 237
    functionLinenumberEnd: 273
    functionName: lpcnet_synthesize_tail_impl
    functionSourceFile: /src/opus/dnn/lpcnet.c
    functionUses: 0
    functionsReached:
    - lin2ulaw
    - run_sample_network
    - OPUS_CLEAR
    - OPUS_MOVE
    - floor
    - ulaw2lin
    linkageType: ''
    returnType: void
    signature: void lpcnet_synthesize_tail_impl(LPCNetState *lpcnet, opus_int16 *output,
      int N, int preload)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: run_frame_network
      Src: /src/opus/dnn/lpcnet.c:277,1
    - Dst: lpcnet_synthesize_tail_impl
      Src: /src/opus/dnn/lpcnet.c:278,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - lpcnet
    - features
    - output
    - N
    - preload
    argTypes:
    - LPCNetState*
    - float*
    - opus_int16*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 275
    functionDepth: 5
    functionLinenumber: 275
    functionLinenumberEnd: 279
    functionName: lpcnet_synthesize_impl
    functionSourceFile: /src/opus/dnn/lpcnet.c
    functionUses: 0
    functionsReached:
    - lpcnet_synthesize_tail_impl
    - run_frame_network
    linkageType: ''
    returnType: void
    signature: void lpcnet_synthesize_impl(LPCNetState *lpcnet, const float *features,
      opus_int16 *output, int N, int preload)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lpcnet_synthesize_impl
      Src: /src/opus/dnn/lpcnet.c:282,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - lpcnet
    - features
    - output
    - N
    argTypes:
    - LPCNetState*
    - float*
    - opus_int16*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 281
    functionDepth: 6
    functionLinenumber: 281
    functionLinenumberEnd: 283
    functionName: lpcnet_synthesize
    functionSourceFile: /src/opus/dnn/lpcnet.c
    functionUses: 0
    functionsReached:
    - lpcnet_synthesize_impl
    linkageType: ''
    returnType: void
    signature: void lpcnet_synthesize(LPCNetState *lpcnet, const float *features,
      opus_int16 *output, int N)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: lpcnet_encoder_get_size
    functionSourceFile: /src/opus/dnn/lpcnet_enc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int lpcnet_encoder_get_size(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memset
      Src: /src/opus/dnn/lpcnet_enc.c:54,1
    - Dst: pitchdnn_init
      Src: /src/opus/dnn/lpcnet_enc.c:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - st
    argTypes:
    - LPCNetEncState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 53
    functionDepth: 2
    functionLinenumber: 53
    functionLinenumberEnd: 57
    functionName: lpcnet_encoder_init
    functionSourceFile: /src/opus/dnn/lpcnet_enc.c
    functionUses: 3
    functionsReached:
    - pitchdnn_init
    - memset
    linkageType: ''
    returnType: int
    signature: int lpcnet_encoder_init(LPCNetEncState *st)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pitchdnn_load_model
      Src: /src/opus/dnn/lpcnet_enc.c:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - st
    - data
    - len
    argTypes:
    - LPCNetEncState*
    - void*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 2
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: lpcnet_encoder_load_model
    functionSourceFile: /src/opus/dnn/lpcnet_enc.c
    functionUses: 2
    functionsReached:
    - pitchdnn_load_model
    linkageType: ''
    returnType: int
    signature: int lpcnet_encoder_load_model(LPCNetEncState *st, const void *data,
      int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_alloc
      Src: /src/opus/dnn/lpcnet_enc.c:65,1
    - Dst: lpcnet_encoder_get_size
      Src: /src/opus/dnn/lpcnet_enc.c:65,1
    - Dst: lpcnet_encoder_init
      Src: /src/opus/dnn/lpcnet_enc.c:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 63
    functionDepth: 3
    functionLinenumber: 63
    functionLinenumberEnd: 68
    functionName: lpcnet_encoder_create
    functionSourceFile: /src/opus/dnn/lpcnet_enc.c
    functionUses: 1
    functionsReached:
    - lpcnet_encoder_init
    - lpcnet_encoder_get_size
    - opus_alloc
    linkageType: ''
    returnType: LPCNetEncState
    signature: LPCNetEncState *lpcnet_encoder_create(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_free
      Src: /src/opus/dnn/lpcnet_enc.c:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - st
    argTypes:
    - LPCNetEncState*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 1
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: lpcnet_encoder_destroy
    functionSourceFile: /src/opus/dnn/lpcnet_enc.c
    functionUses: 1
    functionsReached:
    - opus_free
    linkageType: ''
    returnType: void
    signature: void lpcnet_encoder_destroy(LPCNetEncState *st)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/lpcnet_enc.c:76,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/lpcnet_enc.c:77,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/lpcnet_enc.c:78,1
    - Dst: apply_window
      Src: /src/opus/dnn/lpcnet_enc.c:79,1
    - Dst: forward_transform
      Src: /src/opus/dnn/lpcnet_enc.c:80,1
    - Dst: lpcn_compute_band_energy
      Src: /src/opus/dnn/lpcnet_enc.c:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - st
    - X
    - Ex
    - in
    argTypes:
    - LPCNetEncState*
    - kiss_fft_cpx*
    - float*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 74
    functionDepth: 2
    functionLinenumber: 74
    functionLinenumberEnd: 82
    functionName: frame_analysis
    functionSourceFile: /src/opus/dnn/lpcnet_enc.c
    functionUses: 0
    functionsReached:
    - forward_transform
    - apply_window
    - lpcn_compute_band_energy
    - OPUS_COPY
    linkageType: ''
    returnType: void
    signature: void frame_analysis(LPCNetEncState *st, kiss_fft_cpx *X, float *Ex,
      const float *in)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 6
    argNames:
    - y
    - mem
    - x
    - b
    - a
    - N
    argTypes:
    - float*
    - float[]
    - float*
    - float*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 105
    functionName: biquad
    functionSourceFile: /src/opus/dnn/lpcnet_enc.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void biquad(float *y, float mem[2], const float *x, const float *b,
      const float *a, int N)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 108
    functionName: celt_log10
    functionSourceFile: /src/opus/dnn/lpcnet_enc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_log10(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/lpcnet_enc.c:127,1
    - Dst: frame_analysis
      Src: /src/opus/dnn/lpcnet_enc.c:128,1
    - Dst: MAX16
      Src: /src/opus/dnn/lpcnet_enc.c:129,1
    - Dst: MIN16
      Src: /src/opus/dnn/lpcnet_enc.c:129,1
    - Dst: celt_log10
      Src: /src/opus/dnn/lpcnet_enc.c:129,1
    - Dst: C_MULC
      Src: /src/opus/dnn/lpcnet_enc.c:133,1
    - Dst: sqrt
      Src: /src/opus/dnn/lpcnet_enc.c:134,1
    - Dst: C_MULBYSCALAR
      Src: /src/opus/dnn/lpcnet_enc.c:135,1
    - Dst: MAX16
      Src: /src/opus/dnn/lpcnet_enc.c:138,1
    - Dst: MIN16
      Src: /src/opus/dnn/lpcnet_enc.c:138,1
    - Dst: celt_log10
      Src: /src/opus/dnn/lpcnet_enc.c:138,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/lpcnet_enc.c:140,1
    - Dst: celt_log10
      Src: /src/opus/dnn/lpcnet_enc.c:145,1
    - Dst: MAX16
      Src: /src/opus/dnn/lpcnet_enc.c:146,1
    - Dst: MAX16
      Src: /src/opus/dnn/lpcnet_enc.c:146,1
    - Dst: MAX16
      Src: /src/opus/dnn/lpcnet_enc.c:147,1
    - Dst: MAX16
      Src: /src/opus/dnn/lpcnet_enc.c:148,1
    - Dst: dct
      Src: /src/opus/dnn/lpcnet_enc.c:150,1
    - Dst: lpc_from_cepstrum
      Src: /src/opus/dnn/lpcnet_enc.c:152,1
    - Dst: OPUS_MOVE
      Src: /src/opus/dnn/lpcnet_enc.c:154,1
    - Dst: OPUS_MOVE
      Src: /src/opus/dnn/lpcnet_enc.c:155,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/lpcnet_enc.c:156,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/lpcnet_enc.c:157,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/lpcnet_enc.c:158,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/lpcnet_enc.c:159,1
    - Dst: celt_fir
      Src: /src/opus/dnn/lpcnet_enc.c:160,1
    - Dst: biquad
      Src: /src/opus/dnn/lpcnet_enc.c:166,1
    - Dst: celt_pitch_xcorr
      Src: /src/opus/dnn/lpcnet_enc.c:170,1
    - Dst: celt_inner_prod
      Src: /src/opus/dnn/lpcnet_enc.c:171,1
    - Dst: celt_inner_prod
      Src: /src/opus/dnn/lpcnet_enc.c:172,1
    - Dst: compute_pitchdnn
      Src: /src/opus/dnn/lpcnet_enc.c:187,1
    - Dst: floor
      Src: /src/opus/dnn/lpcnet_enc.c:188,1
    - Dst: pow
      Src: /src/opus/dnn/lpcnet_enc.c:188,1
    - Dst: celt_inner_prod
      Src: /src/opus/dnn/lpcnet_enc.c:189,1
    - Dst: celt_inner_prod
      Src: /src/opus/dnn/lpcnet_enc.c:190,1
    - Dst: celt_inner_prod
      Src: /src/opus/dnn/lpcnet_enc.c:191,1
    - Dst: sqrt
      Src: /src/opus/dnn/lpcnet_enc.c:193,1
    - Dst: log
      Src: /src/opus/dnn/lpcnet_enc.c:194,1
    - Dst: exp
      Src: /src/opus/dnn/lpcnet_enc.c:194,1
    - Dst: log
      Src: /src/opus/dnn/lpcnet_enc.c:194,1
    - Dst: exp
      Src: /src/opus/dnn/lpcnet_enc.c:194,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 60
    argCount: 3
    argNames:
    - st
    - in
    - arch
    argTypes:
    - LPCNetEncState*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 109
    functionDepth: 4
    functionLinenumber: 109
    functionLinenumberEnd: 197
    functionName: compute_frame_features
    functionSourceFile: /src/opus/dnn/lpcnet_enc.c
    functionUses: 0
    functionsReached:
    - OPUS_COPY
    - OPUS_MOVE
    - celt_log10
    - exp
    - MIN16
    - log
    - celt_fir
    - dct
    - floor
    - pow
    - MAX16
    - compute_pitchdnn
    - celt_pitch_xcorr
    - C_MULC
    - biquad
    - sqrt
    - celt_inner_prod
    - C_MULBYSCALAR
    - lpc_from_cepstrum
    - frame_analysis
    linkageType: ''
    returnType: void
    signature: void compute_frame_features(LPCNetEncState *st, const float *in, int
      arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 5
    argNames:
    - y
    - mem
    - x
    - coef
    - N
    argTypes:
    - float*
    - float*
    - float*
    - float
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 207
    functionName: preemphasis
    functionSourceFile: /src/opus/dnn/lpcnet_enc.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void preemphasis(float *y, float *mem, const float *x, float coef,
      int N)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: preemphasis
      Src: /src/opus/dnn/lpcnet_enc.c:210,1
    - Dst: compute_frame_features
      Src: /src/opus/dnn/lpcnet_enc.c:211,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/lpcnet_enc.c:212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - st
    - x
    - features
    - arch
    argTypes:
    - LPCNetEncState*
    - float*
    - float[]
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 209
    functionDepth: 5
    functionLinenumber: 209
    functionLinenumberEnd: 214
    functionName: lpcnet_compute_single_frame_features_impl
    functionSourceFile: /src/opus/dnn/lpcnet_enc.c
    functionUses: 0
    functionsReached:
    - compute_frame_features
    - preemphasis
    - OPUS_COPY
    linkageType: ''
    returnType: int
    signature: int lpcnet_compute_single_frame_features_impl(LPCNetEncState *st, float
      *x, float features[NB_TOTAL_FEATURES], int arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lpcnet_compute_single_frame_features_impl
      Src: /src/opus/dnn/lpcnet_enc.c:220,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - st
    - pcm
    - features
    - arch
    argTypes:
    - LPCNetEncState*
    - opus_int16*
    - float[]
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 216
    functionDepth: 6
    functionLinenumber: 216
    functionLinenumberEnd: 222
    functionName: lpcnet_compute_single_frame_features
    functionSourceFile: /src/opus/dnn/lpcnet_enc.c
    functionUses: 1
    functionsReached:
    - lpcnet_compute_single_frame_features_impl
    linkageType: ''
    returnType: int
    signature: int lpcnet_compute_single_frame_features(LPCNetEncState *st, const
      opus_int16 *pcm, float features[NB_TOTAL_FEATURES], int arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lpcnet_compute_single_frame_features_impl
      Src: /src/opus/dnn/lpcnet_enc.c:228,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - st
    - pcm
    - features
    - arch
    argTypes:
    - LPCNetEncState*
    - float*
    - float[]
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 224
    functionDepth: 6
    functionLinenumber: 224
    functionLinenumberEnd: 230
    functionName: lpcnet_compute_single_frame_features_float
    functionSourceFile: /src/opus/dnn/lpcnet_enc.c
    functionUses: 2
    functionsReached:
    - lpcnet_compute_single_frame_features_impl
    linkageType: ''
    returnType: int
    signature: int lpcnet_compute_single_frame_features_float(LPCNetEncState *st,
      const float *pcm, float features[NB_TOTAL_FEATURES], int arch)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/dred_rdovae_enc.c:43,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 4
    argNames:
    - mem
    - len
    - dilation
    - init
    argTypes:
    - float*
    - int
    - int
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 46
    functionName: conv1_cond_init
    functionSourceFile: /src/opus/dnn/dred_rdovae_enc.c
    functionUses: 1
    functionsReached:
    - OPUS_CLEAR
    linkageType: ''
    returnType: void
    signature: void conv1_cond_init(float *mem, int len, int dilation, int *init)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/dred_rdovae_enc.c:66,1
    - Dst: compute_generic_gru
      Src: /src/opus/dnn/dred_rdovae_enc.c:69,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/dred_rdovae_enc.c:70,1
    - Dst: conv1_cond_init
      Src: /src/opus/dnn/dred_rdovae_enc.c:72,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/dred_rdovae_enc.c:73,1
    - Dst: compute_generic_conv1d
      Src: /src/opus/dnn/dred_rdovae_enc.c:74,1
    - Dst: compute_generic_gru
      Src: /src/opus/dnn/dred_rdovae_enc.c:77,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/dred_rdovae_enc.c:78,1
    - Dst: conv1_cond_init
      Src: /src/opus/dnn/dred_rdovae_enc.c:80,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/dred_rdovae_enc.c:81,1
    - Dst: compute_generic_conv1d_dilation
      Src: /src/opus/dnn/dred_rdovae_enc.c:82,1
    - Dst: compute_generic_gru
      Src: /src/opus/dnn/dred_rdovae_enc.c:85,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/dred_rdovae_enc.c:86,1
    - Dst: conv1_cond_init
      Src: /src/opus/dnn/dred_rdovae_enc.c:88,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/dred_rdovae_enc.c:89,1
    - Dst: compute_generic_conv1d_dilation
      Src: /src/opus/dnn/dred_rdovae_enc.c:90,1
    - Dst: compute_generic_gru
      Src: /src/opus/dnn/dred_rdovae_enc.c:93,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/dred_rdovae_enc.c:94,1
    - Dst: conv1_cond_init
      Src: /src/opus/dnn/dred_rdovae_enc.c:96,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/dred_rdovae_enc.c:97,1
    - Dst: compute_generic_conv1d_dilation
      Src: /src/opus/dnn/dred_rdovae_enc.c:98,1
    - Dst: compute_generic_gru
      Src: /src/opus/dnn/dred_rdovae_enc.c:101,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/dred_rdovae_enc.c:102,1
    - Dst: conv1_cond_init
      Src: /src/opus/dnn/dred_rdovae_enc.c:104,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/dred_rdovae_enc.c:105,1
    - Dst: compute_generic_conv1d_dilation
      Src: /src/opus/dnn/dred_rdovae_enc.c:106,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/dred_rdovae_enc.c:109,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/dred_rdovae_enc.c:110,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/dred_rdovae_enc.c:113,1
    - Dst: compute_generic_dense
      Src: /src/opus/dnn/dred_rdovae_enc.c:114,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/dred_rdovae_enc.c:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 43
    argCount: 6
    argNames:
    - enc_state
    - model
    - latents
    - initial_state
    - input
    - arch
    argTypes:
    - RDOVAEEncState*
    - RDOVAEEnc*
    - float*
    - float*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 116
    functionName: dred_rdovae_encode_dframe
    functionSourceFile: /src/opus/dnn/dred_rdovae_enc.c
    functionUses: 1
    functionsReached:
    - OPUS_COPY
    - compute_generic_conv1d
    - compute_generic_conv1d_dilation
    - conv1_cond_init
    - compute_generic_dense
    - compute_generic_gru
    linkageType: ''
    returnType: void
    signature: "void dred_rdovae_encode_dframe(\n    RDOVAEEncState *enc_state,           /*
      io: encoder state */\n    const RDOVAEEnc *model,\n    float *latents,                 /*
      o: latent vector */\n    float *initial_state,           /* o: initial state
      */\n    const float *input,              /* i: double feature frame (concatenated)
      */\n    int arch\n    )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: compute_linear
      Src: /src/opus/dnn/nnet.c:62,1
    - Dst: compute_activation
      Src: /src/opus/dnn/nnet.c:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - layer
    - output
    - input
    - activation
    - arch
    argTypes:
    - LinearLayer*
    - float*
    - float*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 64
    functionName: compute_generic_dense
    functionSourceFile: /src/opus/dnn/nnet.c
    functionUses: 14
    functionsReached:
    - compute_linear
    - compute_activation
    linkageType: ''
    returnType: void
    signature: void compute_generic_dense(const LinearLayer *layer, float *output,
      const float *input, int activation, int arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/dnn/nnet.c:85,1
    - Dst: celt_assert
      Src: /src/opus/dnn/nnet.c:86,1
    - Dst: celt_assert
      Src: /src/opus/dnn/nnet.c:91,1
    - Dst: celt_assert
      Src: /src/opus/dnn/nnet.c:92,1
    - Dst: compute_linear
      Src: /src/opus/dnn/nnet.c:93,1
    - Dst: compute_linear
      Src: /src/opus/dnn/nnet.c:94,1
    - Dst: compute_activation
      Src: /src/opus/dnn/nnet.c:97,1
    - Dst: compute_activation
      Src: /src/opus/dnn/nnet.c:100,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 5
    argNames:
    - input_weights
    - recurrent_weights
    - state
    - in
    - arch
    argTypes:
    - LinearLayer*
    - LinearLayer*
    - float*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 105
    functionName: compute_generic_gru
    functionSourceFile: /src/opus/dnn/nnet.c
    functionUses: 9
    functionsReached:
    - celt_assert
    - compute_linear
    - compute_activation
    linkageType: ''
    returnType: void
    signature: void compute_generic_gru(const LinearLayer *input_weights, const LinearLayer
      *recurrent_weights, float *state, const float *in, int arch)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/dnn/nnet.c:111,1
    - Dst: compute_linear
      Src: /src/opus/dnn/nnet.c:112,1
    - Dst: compute_activation
      Src: /src/opus/dnn/nnet.c:113,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 4
    argNames:
    - layer
    - output
    - input
    - arch
    argTypes:
    - LinearLayer*
    - float*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 107
    functionDepth: 1
    functionLinenumber: 107
    functionLinenumberEnd: 120
    functionName: compute_glu
    functionSourceFile: /src/opus/dnn/nnet.c
    functionUses: 2
    functionsReached:
    - celt_assert
    - compute_linear
    - compute_activation
    linkageType: ''
    returnType: void
    signature: void compute_glu(const LinearLayer *layer, float *output, const float
      *input, int arch)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/dnn/nnet.c:127,1
    - Dst: celt_assert
      Src: /src/opus/dnn/nnet.c:128,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/nnet.c:129,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/nnet.c:130,1
    - Dst: compute_linear
      Src: /src/opus/dnn/nnet.c:131,1
    - Dst: compute_activation
      Src: /src/opus/dnn/nnet.c:132,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/nnet.c:133,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 7
    argNames:
    - layer
    - output
    - mem
    - input
    - input_size
    - activation
    - arch
    argTypes:
    - LinearLayer*
    - float*
    - float*
    - float*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 134
    functionName: compute_generic_conv1d
    functionSourceFile: /src/opus/dnn/nnet.c
    functionUses: 10
    functionsReached:
    - celt_assert
    - compute_linear
    - compute_activation
    - OPUS_COPY
    linkageType: ''
    returnType: void
    signature: void compute_generic_conv1d(const LinearLayer *layer, float *output,
      float *mem, const float *input, int input_size, int activation, int arch)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/dnn/nnet.c:141,1
    - Dst: celt_assert
      Src: /src/opus/dnn/nnet.c:142,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/nnet.c:143,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/nnet.c:144,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/nnet.c:145,1
    - Dst: compute_linear
      Src: /src/opus/dnn/nnet.c:146,1
    - Dst: compute_activation
      Src: /src/opus/dnn/nnet.c:147,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/nnet.c:148,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/nnet.c:150,1
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/nnet.c:151,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 8
    argNames:
    - layer
    - output
    - mem
    - input
    - input_size
    - dilation
    - activation
    - arch
    argTypes:
    - LinearLayer*
    - float*
    - float*
    - float*
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 136
    functionDepth: 1
    functionLinenumber: 136
    functionLinenumberEnd: 153
    functionName: compute_generic_conv1d_dilation
    functionSourceFile: /src/opus/dnn/nnet.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - compute_linear
    - compute_activation
    - OPUS_COPY
    linkageType: ''
    returnType: void
    signature: void compute_generic_conv1d_dilation(const LinearLayer *layer, float
      *output, float *mem, const float *input, int input_size, int dilation, int activation,
      int arch)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fopen
      Src: /src/opus/dnn/dump_data.c:79,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_data.c:81,1
    - Dst: strerror
      Src: /src/opus/dnn/dump_data.c:81,1
    - Dst: exit
      Src: /src/opus/dnn/dump_data.c:82,1
    - Dst: calloc
      Src: /src/opus/dnn/dump_data.c:84,1
    - Dst: calloc
      Src: /src/opus/dnn/dump_data.c:85,1
    - Dst: fread
      Src: /src/opus/dnn/dump_data.c:86,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/dump_data.c:91,1
    - Dst: mini_kiss_fft
      Src: /src/opus/dnn/dump_data.c:94,1
    - Dst: free
      Src: /src/opus/dnn/dump_data.c:95,1
    - Dst: fclose
      Src: /src/opus/dnn/dump_data.c:96,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 3
    argNames:
    - rir_file
    - fft
    - early
    argTypes:
    - char*
    - mini_kiss_fft_state*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 98
    functionName: load_rir
    functionSourceFile: /src/opus/dnn/dump_data.c
    functionUses: 0
    functionsReached:
    - mini_kiss_fft
    - OPUS_CLEAR
    - exit
    - calloc
    - fclose
    - strerror
    - fread
    - fprintf
    - fopen
    - free
    linkageType: ''
    returnType: mini_kiss_fft_cpx
    signature: mini_kiss_fft_cpx *load_rir(const char *rir_file, mini_kiss_fft_state
      *fft, int early)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fopen
      Src: /src/opus/dnn/dump_data.c:104,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_data.c:106,1
    - Dst: strerror
      Src: /src/opus/dnn/dump_data.c:106,1
    - Dst: exit
      Src: /src/opus/dnn/dump_data.c:107,1
    - Dst: mini_kiss_fft_alloc
      Src: /src/opus/dnn/dump_data.c:111,1
    - Dst: mini_kiss_fft_alloc
      Src: /src/opus/dnn/dump_data.c:112,1
    - Dst: malloc
      Src: /src/opus/dnn/dump_data.c:113,1
    - Dst: malloc
      Src: /src/opus/dnn/dump_data.c:114,1
    - Dst: fgets
      Src: /src/opus/dnn/dump_data.c:115,1
    - Dst: strcspn
      Src: /src/opus/dnn/dump_data.c:117,1
    - Dst: realloc
      Src: /src/opus/dnn/dump_data.c:120,1
    - Dst: realloc
      Src: /src/opus/dnn/dump_data.c:121,1
    - Dst: load_rir
      Src: /src/opus/dnn/dump_data.c:123,1
    - Dst: load_rir
      Src: /src/opus/dnn/dump_data.c:124,1
    - Dst: fclose
      Src: /src/opus/dnn/dump_data.c:127,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 24
    argCount: 2
    argNames:
    - list_file
    - rirs
    argTypes:
    - char*
    - struct rir_list*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 100
    functionDepth: 2
    functionLinenumber: 100
    functionLinenumberEnd: 128
    functionName: load_rir_list
    functionSourceFile: /src/opus/dnn/dump_data.c
    functionUses: 0
    functionsReached:
    - exit
    - mini_kiss_fft_alloc
    - fgets
    - load_rir
    - strcspn
    - realloc
    - malloc
    - fclose
    - strerror
    - fprintf
    - fopen
    linkageType: ''
    returnType: void
    signature: void load_rir_list(const char *list_file, struct rir_list *rirs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_COPY
      Src: /src/opus/dnn/dump_data.c:141,1
    - Dst: IMIN
      Src: /src/opus/dnn/dump_data.c:142,1
    - Dst: mini_kiss_fft
      Src: /src/opus/dnn/dump_data.c:144,1
    - Dst: C_MUL
      Src: /src/opus/dnn/dump_data.c:147,1
    - Dst: mini_kiss_fft
      Src: /src/opus/dnn/dump_data.c:151,1
    - Dst: IMIN
      Src: /src/opus/dnn/dump_data.c:152,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 4
    argNames:
    - rirs
    - audio
    - rir_id
    - early
    argTypes:
    - struct rir_list*
    - float*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 130
    functionDepth: 1
    functionLinenumber: 130
    functionLinenumberEnd: 155
    functionName: rir_filter_sequence
    functionSourceFile: /src/opus/dnn/dump_data.c
    functionUses: 0
    functionsReached:
    - mini_kiss_fft
    - IMIN
    - C_MUL
    - OPUS_COPY
    linkageType: ''
    returnType: void
    signature: void rir_filter_sequence(const struct rir_list *rirs, float *audio,
      int rir_id, int early)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - seed
    argTypes:
    - unsigned*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 162
    functionName: rand_lcg
    functionSourceFile: /src/opus/dnn/dump_data.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: unsigned
    signature: unsigned rand_lcg(unsigned *seed)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rand
      Src: /src/opus/dnn/dump_data.c:165,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - f
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 166
    functionName: randf
    functionSourceFile: /src/opus/dnn/dump_data.c
    functionUses: 0
    functionsReached:
    - rand
    linkageType: ''
    returnType: float
    signature: float randf(float f)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 6
    argNames:
    - y
    - mem
    - x
    - b
    - a
    - N
    argTypes:
    - float*
    - float[]
    - float*
    - float*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 178
    functionName: biquad
    functionSourceFile: /src/opus/dnn/dump_data.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void biquad(float *y, float mem[2], const float *x, const float *b,
      const float *a, int N)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rand
      Src: /src/opus/dnn/dump_data.c:181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 182
    functionName: uni_rand
    functionSourceFile: /src/opus/dnn/dump_data.c
    functionUses: 0
    functionsReached:
    - rand
    linkageType: ''
    returnType: float
    signature: float uni_rand(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: rand
      Src: /src/opus/dnn/dump_data.c:185,1
    - Dst: uni_rand
      Src: /src/opus/dnn/dump_data.c:188,1
    - Dst: rand
      Src: /src/opus/dnn/dump_data.c:190,1
    - Dst: rand
      Src: /src/opus/dnn/dump_data.c:192,1
    - Dst: cos
      Src: /src/opus/dnn/dump_data.c:194,1
    - Dst: uni_rand
      Src: /src/opus/dnn/dump_data.c:198,1
    - Dst: uni_rand
      Src: /src/opus/dnn/dump_data.c:199,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 1
    argNames:
    - a
    argTypes:
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 184
    functionDepth: 1
    functionLinenumber: 184
    functionLinenumberEnd: 203
    functionName: rand_filt
    functionSourceFile: /src/opus/dnn/dump_data.c
    functionUses: 0
    functionsReached:
    - rand
    - uni_rand
    - cos
    linkageType: ''
    returnType: void
    signature: void rand_filt(float *a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rand_filt
      Src: /src/opus/dnn/dump_data.c:206,1
    - Dst: rand_filt
      Src: /src/opus/dnn/dump_data.c:207,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - float*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 205
    functionDepth: 2
    functionLinenumber: 205
    functionLinenumberEnd: 208
    functionName: rand_resp
    functionSourceFile: /src/opus/dnn/dump_data.c
    functionUses: 0
    functionsReached:
    - rand_filt
    linkageType: ''
    returnType: void
    signature: void rand_resp(float *a, float *b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: floor
      Src: /src/opus/dnn/dump_data.c:213,1
    - Dst: IMAX
      Src: /src/opus/dnn/dump_data.c:214,1
    - Dst: IMIN
      Src: /src/opus/dnn/dump_data.c:214,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 210
    functionDepth: 1
    functionLinenumber: 210
    functionLinenumberEnd: 215
    functionName: float2short
    functionSourceFile: /src/opus/dnn/dump_data.c
    functionUses: 0
    functionsReached:
    - IMIN
    - IMAX
    - floor
    linkageType: ''
    returnType: opus_int16
    signature: opus_int16 float2short(float x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: biquad
      Src: /src/opus/dnn/dump_data.c:224,1
    - Dst: sqrt
      Src: /src/opus/dnn/dump_data.c:226,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 227
    functionName: weighted_rms
    functionSourceFile: /src/opus/dnn/dump_data.c
    functionUses: 0
    functionsReached:
    - sqrt
    - biquad
    linkageType: ''
    returnType: float
    signature: float weighted_rms(float *x)
  - BBCount: 34
    BranchProfiles: []
    Callsites:
    - Dst: srand
      Src: /src/opus/dnn/dump_data.c:267,1
    - Dst: getpid
      Src: /src/opus/dnn/dump_data.c:267,1
    - Dst: opus_select_arch
      Src: /src/opus/dnn/dump_data.c:268,1
    - Dst: lpcnet_encoder_create
      Src: /src/opus/dnn/dump_data.c:269,1
    - Dst: strcmp
      Src: /src/opus/dnn/dump_data.c:271,1
    - Dst: strcmp
      Src: /src/opus/dnn/dump_data.c:275,1
    - Dst: strcmp
      Src: /src/opus/dnn/dump_data.c:279,1
    - Dst: strcmp
      Src: /src/opus/dnn/dump_data.c:285,1
    - Dst: strcmp
      Src: /src/opus/dnn/dump_data.c:289,1
    - Dst: strcmp
      Src: /src/opus/dnn/dump_data.c:294,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_data.c:296,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_data.c:297,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_data.c:298,1
    - Dst: fopen
      Src: /src/opus/dnn/dump_data.c:301,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_data.c:303,1
    - Dst: exit
      Src: /src/opus/dnn/dump_data.c:304,1
    - Dst: fopen
      Src: /src/opus/dnn/dump_data.c:307,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_data.c:309,1
    - Dst: exit
      Src: /src/opus/dnn/dump_data.c:310,1
    - Dst: fseek
      Src: /src/opus/dnn/dump_data.c:312,1
    - Dst: ftell
      Src: /src/opus/dnn/dump_data.c:313,1
    - Dst: fseek
      Src: /src/opus/dnn/dump_data.c:314,1
    - Dst: fopen
      Src: /src/opus/dnn/dump_data.c:316,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_data.c:318,1
    - Dst: exit
      Src: /src/opus/dnn/dump_data.c:319,1
    - Dst: fopen
      Src: /src/opus/dnn/dump_data.c:322,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_data.c:324,1
    - Dst: exit
      Src: /src/opus/dnn/dump_data.c:325,1
    - Dst: load_rir_list
      Src: /src/opus/dnn/dump_data.c:330,1
    - Dst: getpid
      Src: /src/opus/dnn/dump_data.c:334,1
    - Dst: srand
      Src: /src/opus/dnn/dump_data.c:335,1
    - Dst: fseek
      Src: /src/opus/dnn/dump_data.c:337,1
    - Dst: ftell
      Src: /src/opus/dnn/dump_data.c:338,1
    - Dst: fseek
      Src: /src/opus/dnn/dump_data.c:339,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_data.c:341,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_data.c:355,1
    - Dst: rand_lcg
      Src: /src/opus/dnn/dump_data.c:356,1
    - Dst: fseek
      Src: /src/opus/dnn/dump_data.c:359,1
    - Dst: fread
      Src: /src/opus/dnn/dump_data.c:360,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_data.c:362,1
    - Dst: rand_lcg
      Src: /src/opus/dnn/dump_data.c:366,1
    - Dst: fseek
      Src: /src/opus/dnn/dump_data.c:369,1
    - Dst: fread
      Src: /src/opus/dnn/dump_data.c:370,1
    - Dst: fprintf
      Src: /src/opus/dnn/dump_data.c:372,1
    - Dst: rand
      Src: /src/opus/dnn/dump_data.c:376,1
    - Dst: log
      Src: /src/opus/dnn/dump_data.c:377,1
    - Dst: rand
      Src: /src/opus/dnn/dump_data.c:377,1
    - Dst: IMIN
      Src: /src/opus/dnn/dump_data.c:378,1
    - Dst: pow
      Src: /src/opus/dnn/dump_data.c:380,1
    - Dst: rand
      Src: /src/opus/dnn/dump_data.c:380,1
    - Dst: rand
      Src: /src/opus/dnn/dump_data.c:381,1
    - Dst: rand
      Src: /src/opus/dnn/dump_data.c:382,1
    - Dst: rand
      Src: /src/opus/dnn/dump_data.c:383,1
    - Dst: pow
      Src: /src/opus/dnn/dump_data.c:385,1
    - Dst: randf
      Src: /src/opus/dnn/dump_data.c:385,1
    - Dst: randf
      Src: /src/opus/dnn/dump_data.c:385,1
    - Dst: rand
      Src: /src/opus/dnn/dump_data.c:386,1
    - Dst: rand
      Src: /src/opus/dnn/dump_data.c:387,1
    - Dst: rand_resp
      Src: /src/opus/dnn/dump_data.c:391,1
    - Dst: rand_resp
      Src: /src/opus/dnn/dump_data.c:392,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/dump_data.c:404,1
    - Dst: biquad
      Src: /src/opus/dnn/dump_data.c:405,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/dump_data.c:406,1
    - Dst: biquad
      Src: /src/opus/dnn/dump_data.c:407,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/dump_data.c:408,1
    - Dst: biquad
      Src: /src/opus/dnn/dump_data.c:409,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/dnn/dump_data.c:410,1
    - Dst: biquad
      Src: /src/opus/dnn/dump_data.c:411,1
    - Dst: weighted_rms
      Src: /src/opus/dnn/dump_data.c:413,1
    - Dst: weighted_rms
      Src: /src/opus/dnn/dump_data.c:414,1
    - Dst: rand
      Src: /src/opus/dnn/dump_data.c:424,1
    - Dst: rand
      Src: /src/opus/dnn/dump_data.c:425,1
    - Dst: rir_filter_sequence
      Src: /src/opus/dnn/dump_data.c:426,1
    - Dst: rir_filter_sequence
      Src: /src/opus/dnn/dump_data.c:427,1
    - Dst: rand
      Src: /src/opus/dnn/dump_data.c:430,1
    - Dst: MIN16
      Src: /src/opus/dnn/dump_data.c:433,1
    - Dst: MAX16
      Src: /src/opus/dnn/dump_data.c:433,1
    - Dst: rand
      Src: /src/opus/dnn/dump_data.c:436,1
    - Dst: floor
      Src: /src/opus/dnn/dump_data.c:439,1
    - Dst: MIN16
      Src: /src/opus/dnn/dump_data.c:445,1
    - Dst: MAX16
      Src: /src/opus/dnn/dump_data.c:445,1
    - Dst: fwrite
      Src: /src/opus/dnn/dump_data.c:446,1
    - Dst: IMIN
      Src: /src/opus/dnn/dump_data.c:450,1
    - Dst: rand
      Src: /src/opus/dnn/dump_data.c:450,1
    - Dst: burg_cepstral_analysis
      Src: /src/opus/dnn/dump_data.c:455,1
    - Dst: fwrite
      Src: /src/opus/dnn/dump_data.c:456,1
    - Dst: preemphasis
      Src: /src/opus/dnn/dump_data.c:458,1
    - Dst: float2short
      Src: /src/opus/dnn/dump_data.c:460,1
    - Dst: compute_frame_features
      Src: /src/opus/dnn/dump_data.c:461,1
    - Dst: floor
      Src: /src/opus/dnn/dump_data.c:466,1
    - Dst: floor
      Src: /src/opus/dnn/dump_data.c:469,1
    - Dst: fwrite
      Src: /src/opus/dnn/dump_data.c:471,1
    - Dst: fwrite
      Src: /src/opus/dnn/dump_data.c:473,1
    - Dst: fwrite
      Src: /src/opus/dnn/dump_data.c:476,1
    - Dst: float2short
      Src: /src/opus/dnn/dump_data.c:477,1
    - Dst: fclose
      Src: /src/opus/dnn/dump_data.c:481,1
    - Dst: fclose
      Src: /src/opus/dnn/dump_data.c:482,1
    - Dst: fclose
      Src: /src/opus/dnn/dump_data.c:483,1
    - Dst: fclose
      Src: /src/opus/dnn/dump_data.c:484,1
    - Dst: lpcnet_encoder_destroy
      Src: /src/opus/dnn/dump_data.c:485,1
    CyclomaticComplexity: 55
    EdgeCount: 55
    ICount: 198
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 487
      start: 237
    functionDepth: 5
    functionLinenumber: 237
    functionLinenumberEnd: 487
    functionName: main
    functionSourceFile: /src/opus/dnn/dump_data.c
    functionUses: 0
    functionsReached:
    - fseek
    - exit
    - OPUS_CLEAR
    - getpid
    - MIN16
    - fprintf
    - log
    - srand
    - load_rir_list
    - weighted_rms
    - strcmp
    - floor
    - fclose
    - lpcnet_encoder_destroy
    - fwrite
    - pow
    - MAX16
    - rand
    - opus_select_arch
    - ftell
    - rand_resp
    - biquad
    - preemphasis
    - lpcnet_encoder_create
    - IMIN
    - compute_frame_features
    - rand_lcg
    - randf
    - burg_cepstral_analysis
    - float2short
    - fread
    - rir_filter_sequence
    - fopen
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/dnn/lossgen_demo.c:11,1
    - Dst: lossgen_init
      Src: /src/opus/dnn/lossgen_demo.c:14,1
    - Dst: atof
      Src: /src/opus/dnn/lossgen_demo.c:15,1
    - Dst: atol
      Src: /src/opus/dnn/lossgen_demo.c:16,1
    - Dst: printf
      Src: /src/opus/dnn/lossgen_demo.c:19,1
    - Dst: sample_loss
      Src: /src/opus/dnn/lossgen_demo.c:19,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22
      start: 4
    functionDepth: 4
    functionLinenumber: 4
    functionLinenumberEnd: 22
    functionName: main
    functionSourceFile: /src/opus/dnn/lossgen_demo.c
    functionUses: 0
    functionsReached:
    - atol
    - sample_loss
    - atof
    - fprintf
    - lossgen_init
    - printf
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: fopen
      Src: /src/opus/dnn/training_tf2/fec_packets.c:45,1
    - Dst: fread
      Src: /src/opus/dnn/training_tf2/fec_packets.c:48,1
    - Dst: fread
      Src: /src/opus/dnn/training_tf2/fec_packets.c:49,1
    - Dst: fread
      Src: /src/opus/dnn/training_tf2/fec_packets.c:50,1
    - Dst: fread
      Src: /src/opus/dnn/training_tf2/fec_packets.c:51,1
    - Dst: fread
      Src: /src/opus/dnn/training_tf2/fec_packets.c:52,1
    - Dst: fread
      Src: /src/opus/dnn/training_tf2/fec_packets.c:53,1
    - Dst: fread
      Src: /src/opus/dnn/training_tf2/fec_packets.c:54,1
    - Dst: fprintf
      Src: /src/opus/dnn/training_tf2/fec_packets.c:59,1
    - Dst: fseek
      Src: /src/opus/dnn/training_tf2/fec_packets.c:65,1
    - Dst: fread
      Src: /src/opus/dnn/training_tf2/fec_packets.c:68,1
    - Dst: fclose
      Src: /src/opus/dnn/training_tf2/fec_packets.c:70,1
    - Dst: fclose
      Src: /src/opus/dnn/training_tf2/fec_packets.c:74,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 38
    argCount: 4
    argNames:
    - filename
    - features
    - packet_index
    - subframe_index
    argTypes:
    - char*
    - float*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 76
    functionName: get_fec_frame
    functionSourceFile: /src/opus/dnn/training_tf2/fec_packets.c
    functionUses: 0
    functionsReached:
    - fseek
    - fclose
    - fread
    - fprintf
    - fopen
    linkageType: ''
    returnType: int
    signature: int get_fec_frame(const char * const filename, float *features, int
      packet_index, int subframe_index)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: fopen
      Src: /src/opus/dnn/training_tf2/fec_packets.c:90,1
    - Dst: fread
      Src: /src/opus/dnn/training_tf2/fec_packets.c:93,1
    - Dst: fread
      Src: /src/opus/dnn/training_tf2/fec_packets.c:94,1
    - Dst: fread
      Src: /src/opus/dnn/training_tf2/fec_packets.c:95,1
    - Dst: fread
      Src: /src/opus/dnn/training_tf2/fec_packets.c:96,1
    - Dst: fread
      Src: /src/opus/dnn/training_tf2/fec_packets.c:97,1
    - Dst: fread
      Src: /src/opus/dnn/training_tf2/fec_packets.c:98,1
    - Dst: fread
      Src: /src/opus/dnn/training_tf2/fec_packets.c:99,1
    - Dst: fprintf
      Src: /src/opus/dnn/training_tf2/fec_packets.c:104,1
    - Dst: fseek
      Src: /src/opus/dnn/training_tf2/fec_packets.c:110,1
    - Dst: fread
      Src: /src/opus/dnn/training_tf2/fec_packets.c:113,1
    - Dst: fclose
      Src: /src/opus/dnn/training_tf2/fec_packets.c:115,1
    - Dst: fclose
      Src: /src/opus/dnn/training_tf2/fec_packets.c:119,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 38
    argCount: 2
    argNames:
    - filename
    - packet_index
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 121
    functionName: get_fec_rate
    functionSourceFile: /src/opus/dnn/training_tf2/fec_packets.c
    functionUses: 0
    functionsReached:
    - fseek
    - fclose
    - fread
    - fprintf
    - fopen
    linkageType: ''
    returnType: int
    signature: int get_fec_rate(const char * const filename, int packet_index)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_fec_frame
      Src: /src/opus/dnn/training_tf2/fec_packets.c:129,1
    - Dst: printf
      Src: /src/opus/dnn/training_tf2/fec_packets.c:136,1
    - Dst: printf
      Src: /src/opus/dnn/training_tf2/fec_packets.c:139,1
    - Dst: get_fec_rate
      Src: /src/opus/dnn/training_tf2/fec_packets.c:139,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 141
    functionName: main
    functionSourceFile: /src/opus/dnn/training_tf2/fec_packets.c
    functionUses: 0
    functionsReached:
    - get_fec_rate
    - get_fec_frame
    - printf
    linkageType: ''
    returnType: int
    signature: int main()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - linear
    - ','
    - out
    - ','
    - in
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 57
    functionName: compute_linear
    functionSourceFile: /src/opus/dnn/x86/dnn_x86.h
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: compute_linear(linear, out, in, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - output
    - ','
    - input
    - ','
    - N
    - ','
    - activation
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 59
    functionName: compute_activation
    functionSourceFile: /src/opus/dnn/x86/dnn_x86.h
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: compute_activation(output, input, N, activation, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 17
    argNames:
    - (
    - conv
    - ','
    - out
    - ','
    - mem
    - ','
    - in
    - ','
    - height
    - ','
    - hstride
    - ','
    - activation
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 61
    functionName: compute_conv2d
    functionSourceFile: /src/opus/dnn/x86/dnn_x86.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: compute_conv2d(conv, out, mem, in, height, hstride, activation, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - linear
    - ','
    - out
    - ','
    - in
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 66
    functionName: compute_linear
    functionSourceFile: /src/opus/dnn/x86/dnn_x86.h
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: compute_linear(linear, out, in, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - output
    - ','
    - input
    - ','
    - N
    - ','
    - activation
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 68
    functionName: compute_activation
    functionSourceFile: /src/opus/dnn/x86/dnn_x86.h
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: compute_activation(output, input, N, activation, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 17
    argNames:
    - (
    - conv
    - ','
    - out
    - ','
    - mem
    - ','
    - in
    - ','
    - height
    - ','
    - hstride
    - ','
    - activation
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 70
    functionName: compute_conv2d
    functionSourceFile: /src/opus/dnn/x86/dnn_x86.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: compute_conv2d(conv, out, mem, in, height, hstride, activation, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - linear
    - ','
    - out
    - ','
    - in
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 75
    functionName: compute_linear
    functionSourceFile: /src/opus/dnn/x86/dnn_x86.h
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: compute_linear(linear, out, in, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - output
    - ','
    - input
    - ','
    - N
    - ','
    - activation
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 77
    functionName: compute_activation
    functionSourceFile: /src/opus/dnn/x86/dnn_x86.h
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: compute_activation(output, input, N, activation, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 17
    argNames:
    - (
    - conv
    - ','
    - out
    - ','
    - mem
    - ','
    - in
    - ','
    - height
    - ','
    - hstride
    - ','
    - activation
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 79
    functionName: compute_conv2d
    functionSourceFile: /src/opus/dnn/x86/dnn_x86.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: compute_conv2d(conv, out, mem, in, height, hstride, activation, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - linear
    - ','
    - out
    - ','
    - in
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 90
    functionName: compute_linear
    functionSourceFile: /src/opus/dnn/x86/dnn_x86.h
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: compute_linear(linear, out, in, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - output
    - ','
    - input
    - ','
    - N
    - ','
    - activation
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionName: compute_activation
    functionSourceFile: /src/opus/dnn/x86/dnn_x86.h
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: compute_activation(output, input, N, activation, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 17
    argNames:
    - (
    - conv
    - ','
    - out
    - ','
    - mem
    - ','
    - in
    - ','
    - height
    - ','
    - hstride
    - ','
    - activation
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 115
    functionName: compute_conv2d
    functionSourceFile: /src/opus/dnn/x86/dnn_x86.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: compute_conv2d(conv, out, mem, in, height, hstride, activation, arch)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: fopen
      Src: /src/opus/dnn/torch/rdovae/packets/fec_packets.c:45,1
    - Dst: fread
      Src: /src/opus/dnn/torch/rdovae/packets/fec_packets.c:48,1
    - Dst: fread
      Src: /src/opus/dnn/torch/rdovae/packets/fec_packets.c:49,1
    - Dst: fread
      Src: /src/opus/dnn/torch/rdovae/packets/fec_packets.c:50,1
    - Dst: fread
      Src: /src/opus/dnn/torch/rdovae/packets/fec_packets.c:51,1
    - Dst: fread
      Src: /src/opus/dnn/torch/rdovae/packets/fec_packets.c:52,1
    - Dst: fread
      Src: /src/opus/dnn/torch/rdovae/packets/fec_packets.c:53,1
    - Dst: fread
      Src: /src/opus/dnn/torch/rdovae/packets/fec_packets.c:54,1
    - Dst: fprintf
      Src: /src/opus/dnn/torch/rdovae/packets/fec_packets.c:59,1
    - Dst: fseek
      Src: /src/opus/dnn/torch/rdovae/packets/fec_packets.c:65,1
    - Dst: fread
      Src: /src/opus/dnn/torch/rdovae/packets/fec_packets.c:68,1
    - Dst: fclose
      Src: /src/opus/dnn/torch/rdovae/packets/fec_packets.c:70,1
    - Dst: fclose
      Src: /src/opus/dnn/torch/rdovae/packets/fec_packets.c:74,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 38
    argCount: 4
    argNames:
    - filename
    - features
    - packet_index
    - subframe_index
    argTypes:
    - char*
    - float*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 76
    functionName: get_fec_frame
    functionSourceFile: /src/opus/dnn/torch/rdovae/packets/fec_packets.c
    functionUses: 1
    functionsReached:
    - fseek
    - fclose
    - fread
    - fprintf
    - fopen
    linkageType: ''
    returnType: int
    signature: int get_fec_frame(const char * const filename, float *features, int
      packet_index, int subframe_index)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: fopen
      Src: /src/opus/dnn/torch/rdovae/packets/fec_packets.c:90,1
    - Dst: fread
      Src: /src/opus/dnn/torch/rdovae/packets/fec_packets.c:93,1
    - Dst: fread
      Src: /src/opus/dnn/torch/rdovae/packets/fec_packets.c:94,1
    - Dst: fread
      Src: /src/opus/dnn/torch/rdovae/packets/fec_packets.c:95,1
    - Dst: fread
      Src: /src/opus/dnn/torch/rdovae/packets/fec_packets.c:96,1
    - Dst: fread
      Src: /src/opus/dnn/torch/rdovae/packets/fec_packets.c:97,1
    - Dst: fread
      Src: /src/opus/dnn/torch/rdovae/packets/fec_packets.c:98,1
    - Dst: fread
      Src: /src/opus/dnn/torch/rdovae/packets/fec_packets.c:99,1
    - Dst: fprintf
      Src: /src/opus/dnn/torch/rdovae/packets/fec_packets.c:104,1
    - Dst: fseek
      Src: /src/opus/dnn/torch/rdovae/packets/fec_packets.c:110,1
    - Dst: fread
      Src: /src/opus/dnn/torch/rdovae/packets/fec_packets.c:113,1
    - Dst: fclose
      Src: /src/opus/dnn/torch/rdovae/packets/fec_packets.c:115,1
    - Dst: fclose
      Src: /src/opus/dnn/torch/rdovae/packets/fec_packets.c:119,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 38
    argCount: 2
    argNames:
    - filename
    - packet_index
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 121
    functionName: get_fec_rate
    functionSourceFile: /src/opus/dnn/torch/rdovae/packets/fec_packets.c
    functionUses: 1
    functionsReached:
    - fseek
    - fclose
    - fread
    - fprintf
    - fopen
    linkageType: ''
    returnType: int
    signature: int get_fec_rate(const char * const filename, int packet_index)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get_fec_frame
      Src: /src/opus/dnn/torch/rdovae/packets/fec_packets.c:129,1
    - Dst: printf
      Src: /src/opus/dnn/torch/rdovae/packets/fec_packets.c:136,1
    - Dst: printf
      Src: /src/opus/dnn/torch/rdovae/packets/fec_packets.c:139,1
    - Dst: get_fec_rate
      Src: /src/opus/dnn/torch/rdovae/packets/fec_packets.c:139,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 141
    functionName: main
    functionSourceFile: /src/opus/dnn/torch/rdovae/packets/fec_packets.c
    functionUses: 0
    functionsReached:
    - get_fec_rate
    - get_fec_frame
    - printf
    linkageType: ''
    returnType: int
    signature: int main()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - linear
    - ','
    - out
    - ','
    - in
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 47
    functionName: compute_linear
    functionSourceFile: /src/opus/dnn/arm/dnn_arm.h
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: compute_linear(linear, out, in, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - linear
    - ','
    - out
    - ','
    - in
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 52
    functionName: compute_linear
    functionSourceFile: /src/opus/dnn/arm/dnn_arm.h
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: compute_linear(linear, out, in, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - linear
    - ','
    - out
    - ','
    - in
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: compute_linear
    functionSourceFile: /src/opus/dnn/arm/dnn_arm.h
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: compute_linear(linear, out, in, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - output
    - ','
    - input
    - ','
    - N
    - ','
    - activation
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 71
    functionName: compute_activation
    functionSourceFile: /src/opus/dnn/arm/dnn_arm.h
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: compute_activation(output, input, N, activation, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 17
    argNames:
    - (
    - conv
    - ','
    - out
    - ','
    - mem
    - ','
    - in
    - ','
    - height
    - ','
    - hstride
    - ','
    - activation
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 73
    functionName: compute_conv2d
    functionSourceFile: /src/opus/dnn/arm/dnn_arm.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: compute_conv2d(conv, out, mem, in, height, hstride, activation, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - output
    - ','
    - input
    - ','
    - N
    - ','
    - activation
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionName: compute_activation
    functionSourceFile: /src/opus/dnn/arm/dnn_arm.h
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: compute_activation(output, input, N, activation, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 17
    argNames:
    - (
    - conv
    - ','
    - out
    - ','
    - mem
    - ','
    - in
    - ','
    - height
    - ','
    - hstride
    - ','
    - activation
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionName: compute_conv2d
    functionSourceFile: /src/opus/dnn/arm/dnn_arm.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: compute_conv2d(conv, out, mem, in, height, hstride, activation, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 51
    functionName: FRAC_MUL16
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FRAC_MUL16(a,b)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - y
    - x
    argTypes:
    - float
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 77
    functionName: fast_atan2f
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE fast_atan2f(float y, float x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MAX16
      Src: /src/opus/celt/mathops.h:93,1
    - Dst: MIN16
      Src: /src/opus/celt/mathops.h:94,1
    - Dst: MAX32
      Src: /src/opus/celt/mathops.h:96,1
    - Dst: EXTEND32
      Src: /src/opus/celt/mathops.h:96,1
    - Dst: EXTEND32
      Src: /src/opus/celt/mathops.h:96,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - x
    - len
    argTypes:
    - opus_val16*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 97
    functionName: celt_maxabs16
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 0
    functionsReached:
    - MIN16
    - MAX32
    - MAX16
    - EXTEND32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE celt_maxabs16(const opus_val16 *x, int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MAX32
      Src: /src/opus/celt/mathops.h:108,1
    - Dst: MIN32
      Src: /src/opus/celt/mathops.h:109,1
    - Dst: celt_sig_assert
      Src: /src/opus/celt/mathops.h:112,1
    - Dst: MAX32
      Src: /src/opus/celt/mathops.h:113,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - x
    - len
    argTypes:
    - opus_res*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 114
    functionName: celt_maxabs_res
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 2
    functionsReached:
    - celt_sig_assert
    - MIN32
    - MAX32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE celt_maxabs_res(const opus_res *x, int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MAX32
      Src: /src/opus/celt/mathops.h:129,1
    - Dst: MIN32
      Src: /src/opus/celt/mathops.h:130,1
    - Dst: MAX32
      Src: /src/opus/celt/mathops.h:132,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - x
    - len
    argTypes:
    - opus_val32*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 133
    functionName: celt_maxabs32
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 1
    functionsReached:
    - MIN32
    - MAX32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE celt_maxabs32(const opus_val32 *x, int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - len
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 136
    functionName: celt_maxabs32
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_maxabs32(x,len)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 165
    functionName: celt_atan_norm
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE celt_atan_norm(float x)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: celt_sig_assert
      Src: /src/opus/celt/mathops.h:172,1
    - Dst: celt_atan_norm
      Src: /src/opus/celt/mathops.h:182,1
    - Dst: celt_atan_norm
      Src: /src/opus/celt/mathops.h:184,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - y
    - x
    argTypes:
    - float
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 170
    functionDepth: 1
    functionLinenumber: 170
    functionLinenumberEnd: 186
    functionName: celt_atan2p_norm
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 0
    functionsReached:
    - celt_atan_norm
    - celt_sig_assert
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE celt_atan2p_norm(float y, float x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: floor
      Src: /src/opus/celt/mathops.h:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 219
    functionName: celt_cos_norm2
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 0
    functionsReached:
    - floor
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE celt_cos_norm2(float x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 225
    functionDepth: 0
    functionLinenumber: 225
    functionLinenumberEnd: 226
    functionName: celt_sqrt
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_sqrt(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 227
    functionName: celt_sqrt32
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_sqrt32(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 227
    functionDepth: 0
    functionLinenumber: 227
    functionLinenumberEnd: 228
    functionName: celt_rsqrt
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_rsqrt(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 228
    functionDepth: 0
    functionLinenumber: 228
    functionLinenumberEnd: 229
    functionName: celt_rsqrt_norm
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_rsqrt_norm(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 229
    functionDepth: 0
    functionLinenumber: 229
    functionLinenumberEnd: 230
    functionName: celt_rsqrt_norm32
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_rsqrt_norm32(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 230
    functionDepth: 0
    functionLinenumber: 230
    functionLinenumberEnd: 231
    functionName: celt_cos_norm
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_cos_norm(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 232
    functionName: celt_rcp
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_rcp(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 232
    functionDepth: 0
    functionLinenumber: 232
    functionLinenumberEnd: 233
    functionName: celt_div
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_div(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 233
    functionDepth: 0
    functionLinenumber: 233
    functionLinenumberEnd: 234
    functionName: frac_div32
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: frac_div32(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 234
    functionDepth: 0
    functionLinenumber: 234
    functionLinenumberEnd: 235
    functionName: frac_div32_q29
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: frac_div32_q29(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - x
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 272
    functionDepth: 0
    functionLinenumber: 272
    functionLinenumberEnd: 306
    functionName: celt_log2
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE celt_log2(float x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: floor
      Src: /src/opus/celt/mathops.h:321,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - x
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 313
    functionDepth: 0
    functionLinenumber: 313
    functionLinenumberEnd: 343
    functionName: celt_exp2
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 1
    functionsReached:
    - floor
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE celt_exp2(float x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 346
    functionDepth: 0
    functionLinenumber: 346
    functionLinenumberEnd: 347
    functionName: celt_log2
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_log2(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 348
      start: 347
    functionDepth: 0
    functionLinenumber: 347
    functionLinenumberEnd: 348
    functionName: celt_exp2
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_exp2(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 353
    functionDepth: 0
    functionLinenumber: 353
    functionLinenumberEnd: 354
    functionName: celt_sin
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_sin(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 355
      start: 354
    functionDepth: 0
    functionLinenumber: 354
    functionLinenumberEnd: 355
    functionName: celt_log
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_log(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 356
      start: 355
    functionDepth: 0
    functionLinenumber: 355
    functionLinenumberEnd: 356
    functionName: celt_exp
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_exp(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_sig_assert
      Src: /src/opus/celt/mathops.h:367,1
    - Dst: EC_ILOG
      Src: /src/opus/celt/mathops.h:368,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 365
    functionDepth: 1
    functionLinenumber: 365
    functionLinenumberEnd: 369
    functionName: celt_ilog2
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 3
    functionsReached:
    - celt_sig_assert
    - EC_ILOG
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE celt_ilog2(opus_int32 x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_ilog2
      Src: /src/opus/celt/mathops.h:376,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - opus_val32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 374
    functionDepth: 0
    functionLinenumber: 374
    functionLinenumberEnd: 377
    functionName: celt_zlog2
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 0
    functionsReached:
    - celt_ilog2
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE celt_zlog2(opus_val32 x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: celt_ilog2
      Src: /src/opus/celt/mathops.h:401,1
    - Dst: VSHR32
      Src: /src/opus/celt/mathops.h:402,1
    - Dst: ADD16
      Src: /src/opus/celt/mathops.h:403,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/mathops.h:403,1
    - Dst: ADD16
      Src: /src/opus/celt/mathops.h:403,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/mathops.h:403,1
    - Dst: ADD16
      Src: /src/opus/celt/mathops.h:403,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/mathops.h:403,1
    - Dst: ADD16
      Src: /src/opus/celt/mathops.h:403,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/mathops.h:403,1
    - Dst: SHL32
      Src: /src/opus/celt/mathops.h:404,1
    - Dst: SHR32
      Src: /src/opus/celt/mathops.h:404,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - opus_val32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 405
      start: 392
    functionDepth: 0
    functionLinenumber: 392
    functionLinenumberEnd: 405
    functionName: celt_log2
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 1
    functionsReached:
    - celt_ilog2
    - MULT16_16_Q15
    - SHR32
    - ADD16
    - SHL32
    - VSHR32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE celt_log2(opus_val32 x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SHL16
      Src: /src/opus/celt/mathops.h:421,1
    - Dst: ADD16
      Src: /src/opus/celt/mathops.h:422,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/mathops.h:422,1
    - Dst: ADD16
      Src: /src/opus/celt/mathops.h:422,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/mathops.h:422,1
    - Dst: ADD16
      Src: /src/opus/celt/mathops.h:422,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/mathops.h:422,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - opus_val16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 423
      start: 418
    functionDepth: 0
    functionLinenumber: 418
    functionLinenumberEnd: 423
    functionName: celt_exp2_frac
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 0
    functionsReached:
    - ADD16
    - SHL16
    - MULT16_16_Q15
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE celt_exp2_frac(opus_val16 x)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SHR16
      Src: /src/opus/celt/mathops.h:435,1
    - Dst: celt_exp2_frac
      Src: /src/opus/celt/mathops.h:440,1
    - Dst: SHL16
      Src: /src/opus/celt/mathops.h:440,1
    - Dst: VSHR32
      Src: /src/opus/celt/mathops.h:441,1
    - Dst: EXTEND32
      Src: /src/opus/celt/mathops.h:441,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - x
    argTypes:
    - opus_val16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 442
      start: 431
    functionDepth: 1
    functionLinenumber: 431
    functionLinenumberEnd: 442
    functionName: celt_exp2
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 1
    functionsReached:
    - SHL16
    - SHR16
    - celt_exp2_frac
    - EXTEND32
    - VSHR32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE celt_exp2(opus_val16 x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SUB32
      Src: /src/opus/celt/mathops.h:468,1
    - Dst: celt_ilog2
      Src: /src/opus/celt/mathops.h:468,1
    - Dst: VSHR32
      Src: /src/opus/celt/mathops.h:469,1
    - Dst: SHR32
      Src: /src/opus/celt/mathops.h:470,1
    - Dst: SUB32
      Src: /src/opus/celt/mathops.h:473,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/mathops.h:473,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/mathops.h:482,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/mathops.h:483,1
    - Dst: ADD32
      Src: /src/opus/celt/mathops.h:483,1
    - Dst: SHL32
      Src: /src/opus/celt/mathops.h:484,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/mathops.h:484,1
    - Dst: ADD32
      Src: /src/opus/celt/mathops.h:484,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/mathops.h:485,1
    - Dst: ADD32
      Src: /src/opus/celt/mathops.h:485,1
    - Dst: ADD32
      Src: /src/opus/celt/mathops.h:486,1
    - Dst: ADD32
      Src: /src/opus/celt/mathops.h:487,1
    - Dst: SHL32
      Src: /src/opus/celt/mathops.h:487,1
    - Dst: ADD32
      Src: /src/opus/celt/mathops.h:488,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - x
    argTypes:
    - opus_val32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 489
      start: 448
    functionDepth: 0
    functionLinenumber: 448
    functionLinenumberEnd: 489
    functionName: celt_log2_db
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 0
    functionsReached:
    - MULT32_32_Q31
    - ADD32
    - celt_ilog2
    - SHR32
    - SHL32
    - SUB32
    - VSHR32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE celt_log2_db(opus_val32 x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SHL32
      Src: /src/opus/celt/mathops.h:504,1
    - Dst: ADD32
      Src: /src/opus/celt/mathops.h:506,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/mathops.h:506,1
    - Dst: ADD32
      Src: /src/opus/celt/mathops.h:507,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/mathops.h:507,1
    - Dst: ADD32
      Src: /src/opus/celt/mathops.h:508,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/mathops.h:508,1
    - Dst: ADD32
      Src: /src/opus/celt/mathops.h:509,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/mathops.h:509,1
    - Dst: ADD32
      Src: /src/opus/celt/mathops.h:510,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/mathops.h:510,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - opus_val32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 511
      start: 493
    functionDepth: 0
    functionLinenumber: 493
    functionLinenumberEnd: 511
    functionName: celt_exp2_db_frac
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 0
    functionsReached:
    - SHL32
    - MULT32_32_Q31
    - ADD32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE celt_exp2_db_frac(opus_val32 x)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: SHR32
      Src: /src/opus/celt/mathops.h:519,1
    - Dst: celt_exp2_db_frac
      Src: /src/opus/celt/mathops.h:524,1
    - Dst: SHL32
      Src: /src/opus/celt/mathops.h:524,1
    - Dst: VSHR32
      Src: /src/opus/celt/mathops.h:525,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - x
    argTypes:
    - opus_val32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 526
      start: 515
    functionDepth: 1
    functionLinenumber: 515
    functionLinenumberEnd: 526
    functionName: celt_exp2_db
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 0
    functionsReached:
    - SHL32
    - VSHR32
    - celt_exp2_db_frac
    - SHR32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE celt_exp2_db(opus_val32 x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 530
      start: 529
    functionDepth: 0
    functionLinenumber: 529
    functionLinenumberEnd: 530
    functionName: celt_log2_db
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_log2_db(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 531
      start: 530
    functionDepth: 0
    functionLinenumber: 530
    functionLinenumberEnd: 531
    functionName: celt_exp2_db_frac
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_exp2_db_frac(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 532
      start: 531
    functionDepth: 0
    functionLinenumber: 531
    functionLinenumberEnd: 532
    functionName: celt_exp2_db
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_exp2_db(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 540
      start: 539
    functionDepth: 0
    functionLinenumber: 539
    functionLinenumberEnd: 540
    functionName: celt_div
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_div(a,b)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: celt_sig_assert
      Src: /src/opus/celt/mathops.h:562,1
    - Dst: SHL32
      Src: /src/opus/celt/mathops.h:574,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/mathops.h:575,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/mathops.h:577,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/mathops.h:578,1
    - Dst: ADD32
      Src: /src/opus/celt/mathops.h:578,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/mathops.h:579,1
    - Dst: ADD32
      Src: /src/opus/celt/mathops.h:579,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/mathops.h:580,1
    - Dst: ADD32
      Src: /src/opus/celt/mathops.h:580,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/mathops.h:581,1
    - Dst: ADD32
      Src: /src/opus/celt/mathops.h:581,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/mathops.h:582,1
    - Dst: ADD32
      Src: /src/opus/celt/mathops.h:582,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/mathops.h:583,1
    - Dst: ADD32
      Src: /src/opus/celt/mathops.h:583,1
    - Dst: ADD32
      Src: /src/opus/celt/mathops.h:584,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/mathops.h:584,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/mathops.h:585,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 1
    argNames:
    - x
    argTypes:
    - opus_val32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 586
      start: 547
    functionDepth: 1
    functionLinenumber: 547
    functionLinenumberEnd: 586
    functionName: celt_atan_norm
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 1
    functionsReached:
    - celt_sig_assert
    - SHL32
    - MULT32_32_Q31
    - ADD32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE celt_atan_norm(opus_val32 x)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: celt_sig_assert
      Src: /src/opus/celt/mathops.h:594,1
    - Dst: celt_atan_norm
      Src: /src/opus/celt/mathops.h:598,1
    - Dst: SHR32
      Src: /src/opus/celt/mathops.h:598,1
    - Dst: frac_div32
      Src: /src/opus/celt/mathops.h:598,1
    - Dst: celt_sig_assert
      Src: /src/opus/celt/mathops.h:600,1
    - Dst: celt_atan_norm
      Src: /src/opus/celt/mathops.h:602,1
    - Dst: SHR32
      Src: /src/opus/celt/mathops.h:602,1
    - Dst: frac_div32
      Src: /src/opus/celt/mathops.h:602,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 2
    argNames:
    - y
    - x
    argTypes:
    - opus_val32
    - opus_val32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 604
      start: 592
    functionDepth: 1
    functionLinenumber: 592
    functionLinenumberEnd: 604
    functionName: celt_atan2p_norm
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 0
    functionsReached:
    - celt_atan_norm
    - celt_sig_assert
    - frac_div32
    - SHR32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE celt_atan2p_norm(opus_val32 y, opus_val32 x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MULT16_16_P15
      Src: /src/opus/celt/mathops.h:615,1
    - Dst: ADD32
      Src: /src/opus/celt/mathops.h:615,1
    - Dst: MULT16_16_P15
      Src: /src/opus/celt/mathops.h:615,1
    - Dst: ADD32
      Src: /src/opus/celt/mathops.h:615,1
    - Dst: MULT16_16_P15
      Src: /src/opus/celt/mathops.h:615,1
    - Dst: ADD32
      Src: /src/opus/celt/mathops.h:615,1
    - Dst: MULT16_16_P15
      Src: /src/opus/celt/mathops.h:615,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - opus_val16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 616
      start: 613
    functionDepth: 0
    functionLinenumber: 613
    functionLinenumberEnd: 616
    functionName: celt_atan01
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 0
    functionsReached:
    - MULT16_16_P15
    - ADD32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE celt_atan01(opus_val16 x)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: celt_div
      Src: /src/opus/celt/mathops.h:631,1
    - Dst: SHL32
      Src: /src/opus/celt/mathops.h:631,1
    - Dst: EXTEND32
      Src: /src/opus/celt/mathops.h:631,1
    - Dst: SHR16
      Src: /src/opus/celt/mathops.h:634,1
    - Dst: celt_atan01
      Src: /src/opus/celt/mathops.h:634,1
    - Dst: EXTRACT16
      Src: /src/opus/celt/mathops.h:634,1
    - Dst: celt_div
      Src: /src/opus/celt/mathops.h:637,1
    - Dst: SHL32
      Src: /src/opus/celt/mathops.h:637,1
    - Dst: EXTEND32
      Src: /src/opus/celt/mathops.h:637,1
    - Dst: SHR16
      Src: /src/opus/celt/mathops.h:640,1
    - Dst: celt_atan01
      Src: /src/opus/celt/mathops.h:640,1
    - Dst: EXTRACT16
      Src: /src/opus/celt/mathops.h:640,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 2
    argNames:
    - y
    - x
    argTypes:
    - opus_val16
    - opus_val16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 642
      start: 624
    functionDepth: 1
    functionLinenumber: 624
    functionLinenumberEnd: 642
    functionName: celt_atan2p
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 0
    functionsReached:
    - celt_atan01
    - SHR16
    - EXTRACT16
    - EXTEND32
    - SHL32
    - celt_div
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE celt_atan2p(opus_val16 y, opus_val16 x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - in
    - ','
    - out
    - ','
    - cnt
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 652
      start: 651
    functionDepth: 0
    functionLinenumber: 651
    functionLinenumberEnd: 652
    functionName: celt_float2int16
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_float2int16(in, out, cnt, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - samples
    - ','
    - cnt
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 658
      start: 657
    functionDepth: 0
    functionLinenumber: 657
    functionLinenumberEnd: 658
    functionName: opus_limit2_checkwithin1
    functionSourceFile: /src/opus/celt/mathops.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: opus_limit2_checkwithin1(samples, cnt, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _this
    argTypes:
    - ec_ctx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionName: opus_uint32::ec_range_bytes
    functionSourceFile: /src/opus/celt/entcode.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE opus_uint32 ec_range_bytes(ec_ctx *_this)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _this
    argTypes:
    - ec_ctx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 99
    functionName: ec_get_buffer
    functionSourceFile: /src/opus/celt/entcode.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE unsigned
    signature: OPUS_INLINE unsigned *ec_get_buffer(ec_ctx *_this)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _this
    argTypes:
    - ec_ctx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 103
    functionName: ec_get_error
    functionSourceFile: /src/opus/celt/entcode.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE ec_get_error(ec_ctx *_this)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EC_ILOG
      Src: /src/opus/celt/entcode.h:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _this
    argTypes:
    - ec_ctx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionName: ec_tell
    functionSourceFile: /src/opus/celt/entcode.h
    functionUses: 7
    functionsReached:
    - EC_ILOG
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE ec_tell(ec_ctx *_this)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: celt_sig_assert
      Src: /src/opus/celt/entcode.h:125,1
    - Dst: EC_ILOG
      Src: /src/opus/celt/entcode.h:131,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - n
    - d
    argTypes:
    - opus_uint32
    - opus_uint32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 138
    functionName: opus_uint32::celt_udiv
    functionSourceFile: /src/opus/celt/entcode.h
    functionUses: 0
    functionsReached:
    - celt_sig_assert
    - EC_ILOG
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE opus_uint32 celt_udiv(opus_uint32 n, opus_uint32 d)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: celt_sig_assert
      Src: /src/opus/celt/entcode.h:141,1
    - Dst: celt_udiv
      Src: /src/opus/celt/entcode.h:144,1
    - Dst: celt_udiv
      Src: /src/opus/celt/entcode.h:146,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - n
    - d
    argTypes:
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 150
    functionName: celt_sudiv
    functionSourceFile: /src/opus/celt/entcode.h
    functionUses: 0
    functionsReached:
    - celt_sig_assert
    - celt_udiv
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE celt_sudiv(opus_int32 n, opus_int32 d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/celt/celt_decoder.c:147,1
    - Dst: opus_custom_mode_create
      Src: /src/opus/celt/celt_decoder.c:147,1
    - Dst: celt_assert
      Src: /src/opus/celt/celt_decoder.c:148,1
    - Dst: celt_assert
      Src: /src/opus/celt/celt_decoder.c:149,1
    - Dst: celt_assert
      Src: /src/opus/celt/celt_decoder.c:155,1
    - Dst: celt_assert
      Src: /src/opus/celt/celt_decoder.c:157,1
    - Dst: celt_assert
      Src: /src/opus/celt/celt_decoder.c:158,1
    - Dst: celt_assert
      Src: /src/opus/celt/celt_decoder.c:159,1
    - Dst: celt_assert
      Src: /src/opus/celt/celt_decoder.c:160,1
    - Dst: celt_assert
      Src: /src/opus/celt/celt_decoder.c:161,1
    - Dst: celt_assert
      Src: /src/opus/celt/celt_decoder.c:163,1
    - Dst: celt_assert
      Src: /src/opus/celt/celt_decoder.c:164,1
    - Dst: celt_assert
      Src: /src/opus/celt/celt_decoder.c:167,1
    - Dst: celt_assert
      Src: /src/opus/celt/celt_decoder.c:168,1
    - Dst: celt_assert
      Src: /src/opus/celt/celt_decoder.c:170,1
    - Dst: celt_assert
      Src: /src/opus/celt/celt_decoder.c:171,1
    - Dst: celt_assert
      Src: /src/opus/celt/celt_decoder.c:172,1
    - Dst: celt_assert
      Src: /src/opus/celt/celt_decoder.c:173,1
    - Dst: celt_assert
      Src: /src/opus/celt/celt_decoder.c:174,1
    - Dst: celt_assert
      Src: /src/opus/celt/celt_decoder.c:175,1
    - Dst: celt_assert
      Src: /src/opus/celt/celt_decoder.c:176,1
    - Dst: celt_assert
      Src: /src/opus/celt/celt_decoder.c:177,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 1
    argNames:
    - st
    argTypes:
    - CELTDecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 144
    functionDepth: 1
    functionLinenumber: 144
    functionLinenumberEnd: 178
    functionName: validate_celt_decoder
    functionSourceFile: /src/opus/celt/celt_decoder.c
    functionUses: 0
    functionsReached:
    - opus_custom_mode_create
    - celt_assert
    linkageType: ''
    returnType: void
    signature: void validate_celt_decoder(CELTDecoder *st)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_custom_mode_create
      Src: /src/opus/celt/celt_decoder.c:184,1
    - Dst: opus_custom_mode_create
      Src: /src/opus/celt/celt_decoder.c:186,1
    - Dst: opus_custom_decoder_get_size
      Src: /src/opus/celt/celt_decoder.c:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - channels
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 181
    functionDepth: 1
    functionLinenumber: 181
    functionLinenumberEnd: 189
    functionName: celt_decoder_get_size
    functionSourceFile: /src/opus/celt/celt_decoder.c
    functionUses: 1
    functionsReached:
    - opus_custom_mode_create
    - opus_custom_decoder_get_size
    linkageType: ''
    returnType: int
    signature: int celt_decoder_get_size(int channels)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QEXT_SCALE
      Src: /src/opus/celt/celt_decoder.c:201,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - mode
    - channels
    argTypes:
    - CELTMode*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 191
    functionDepth: 1
    functionLinenumber: 191
    functionLinenumberEnd: 205
    functionName: opus_custom_decoder_get_size
    functionSourceFile: /src/opus/celt/celt_decoder.c
    functionUses: 2
    functionsReached:
    - QEXT_SCALE
    linkageType: ''
    returnType: OPUS_CUSTOM_NOSTATIC
    signature: OPUS_CUSTOM_NOSTATIC opus_custom_decoder_get_size(const CELTMode *mode,
      int channels)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: opus_alloc
      Src: /src/opus/celt/celt_decoder.c:211,1
    - Dst: opus_custom_decoder_get_size
      Src: /src/opus/celt/celt_decoder.c:211,1
    - Dst: opus_custom_decoder_init
      Src: /src/opus/celt/celt_decoder.c:212,1
    - Dst: opus_custom_decoder_destroy
      Src: /src/opus/celt/celt_decoder.c:215,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - mode
    - channels
    - error
    argTypes:
    - CELTMode*
    - int
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 208
    functionDepth: 2
    functionLinenumber: 208
    functionLinenumberEnd: 221
    functionName: opus_custom_decoder_create
    functionSourceFile: /src/opus/celt/celt_decoder.c
    functionUses: 0
    functionsReached:
    - opus_custom_decoder_destroy
    - opus_custom_decoder_get_size
    - opus_custom_decoder_init
    - opus_alloc
    linkageType: ''
    returnType: CELTDecoder
    signature: CELTDecoder *opus_custom_decoder_create(const CELTMode *mode, int channels,
      int *error)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: opus_custom_decoder_init
      Src: /src/opus/celt/celt_decoder.c:229,1
    - Dst: opus_custom_mode_create
      Src: /src/opus/celt/celt_decoder.c:229,1
    - Dst: opus_custom_decoder_init
      Src: /src/opus/celt/celt_decoder.c:232,1
    - Dst: opus_custom_mode_create
      Src: /src/opus/celt/celt_decoder.c:232,1
    - Dst: resampling_factor
      Src: /src/opus/celt/celt_decoder.c:235,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 3
    argNames:
    - st
    - sampling_rate
    - channels
    argTypes:
    - CELTDecoder*
    - opus_int32
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 224
    functionDepth: 1
    functionLinenumber: 224
    functionLinenumberEnd: 240
    functionName: celt_decoder_init
    functionSourceFile: /src/opus/celt/celt_decoder.c
    functionUses: 1
    functionsReached:
    - opus_custom_mode_create
    - resampling_factor
    - opus_custom_decoder_init
    linkageType: ''
    returnType: int
    signature: int celt_decoder_init(CELTDecoder *st, opus_int32 sampling_rate, int
      channels)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_CLEAR
      Src: /src/opus/celt/celt_decoder.c:250,1
    - Dst: opus_custom_decoder_get_size
      Src: /src/opus/celt/celt_decoder.c:250,1
    - Dst: opus_select_arch
      Src: /src/opus/celt/celt_decoder.c:265,1
    - Dst: opus_custom_decoder_ctl
      Src: /src/opus/celt/celt_decoder.c:272,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 3
    argNames:
    - st
    - mode
    - channels
    argTypes:
    - CELTDecoder*
    - CELTMode*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 242
    functionDepth: 2
    functionLinenumber: 242
    functionLinenumberEnd: 275
    functionName: opus_custom_decoder_init
    functionSourceFile: /src/opus/celt/celt_decoder.c
    functionUses: 2
    functionsReached:
    - OPUS_CLEAR
    - opus_custom_decoder_get_size
    - opus_custom_decoder_ctl
    - opus_select_arch
    linkageType: ''
    returnType: OPUS_CUSTOM_NOSTATIC
    signature: OPUS_CUSTOM_NOSTATIC opus_custom_decoder_init(CELTDecoder *st, const
      CELTMode *mode, int channels)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_free
      Src: /src/opus/celt/celt_decoder.c:280,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - st
    argTypes:
    - CELTDecoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 278
    functionDepth: 1
    functionLinenumber: 278
    functionLinenumberEnd: 281
    functionName: opus_custom_decoder_destroy
    functionSourceFile: /src/opus/celt/celt_decoder.c
    functionUses: 1
    functionsReached:
    - opus_free
    linkageType: ''
    returnType: void
    signature: void opus_custom_decoder_destroy(CELTDecoder *st)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SATURATE
      Src: /src/opus/celt/celt_decoder.c:303,1
    - Dst: SATURATE
      Src: /src/opus/celt/celt_decoder.c:304,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/celt_decoder.c:305,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/celt_decoder.c:306,1
    - Dst: SIG2RES
      Src: /src/opus/celt/celt_decoder.c:307,1
    - Dst: SIG2RES
      Src: /src/opus/celt/celt_decoder.c:308,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 17
    argCount: 5
    argNames:
    - in
    - pcm
    - N
    - coef0
    - mem
    argTypes:
    - celt_sig*[]
    - opus_res*
    - int
    - opus_val16
    - celt_sig*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 288
    functionDepth: 1
    functionLinenumber: 288
    functionLinenumberEnd: 312
    functionName: deemphasis_stereo_simple
    functionSourceFile: /src/opus/celt/celt_decoder.c
    functionUses: 0
    functionsReached:
    - SATURATE
    - SIG2RES
    - MULT16_32_Q15
    linkageType: ''
    returnType: void
    signature: "void deemphasis_stereo_simple(celt_sig *in[], opus_res *pcm, int N,
      const opus_val16 coef0,\n      celt_sig *mem)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/celt/celt_decoder.c:325,1
    - Dst: deemphasis_stereo_simple
      Src: /src/opus/celt/celt_decoder.c:331,1
    - Dst: ALLOC
      Src: /src/opus/celt/celt_decoder.c:335,1
    - Dst: SATURATE
      Src: /src/opus/celt/celt_decoder.c:352,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/celt_decoder.c:353,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/celt_decoder.c:354,1
    - Dst: SHL32
      Src: /src/opus/celt/celt_decoder.c:355,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/celt_decoder.c:355,1
    - Dst: SATURATE
      Src: /src/opus/celt/celt_decoder.c:366,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/celt_decoder.c:367,1
    - Dst: SATURATE
      Src: /src/opus/celt/celt_decoder.c:377,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/celt_decoder.c:378,1
    - Dst: ADD_RES
      Src: /src/opus/celt/celt_decoder.c:379,1
    - Dst: SIG2RES
      Src: /src/opus/celt/celt_decoder.c:379,1
    - Dst: SATURATE
      Src: /src/opus/celt/celt_decoder.c:385,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/celt_decoder.c:386,1
    - Dst: SIG2RES
      Src: /src/opus/celt/celt_decoder.c:387,1
    - Dst: ADD_RES
      Src: /src/opus/celt/celt_decoder.c:399,1
    - Dst: SIG2RES
      Src: /src/opus/celt/celt_decoder.c:399,1
    - Dst: SIG2RES
      Src: /src/opus/celt/celt_decoder.c:403,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 55
    argCount: 8
    argNames:
    - in
    - pcm
    - N
    - C
    - downsample
    - coef
    - mem
    - accum
    argTypes:
    - celt_sig*[]
    - opus_res*
    - int
    - int
    - int
    - opus_val16*
    - celt_sig*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 408
      start: 318
    functionDepth: 2
    functionLinenumber: 318
    functionLinenumberEnd: 408
    functionName: deemphasis
    functionSourceFile: /src/opus/celt/celt_decoder.c
    functionUses: 2
    functionsReached:
    - ADD_RES
    - SATURATE
    - MULT16_32_Q15
    - deemphasis_stereo_simple
    - VARDECL
    - ALLOC
    - SHL32
    - SIG2RES
    linkageType: ''
    returnType: void
    signature: "void deemphasis(celt_sig *in[], opus_res *pcm, int N, int C, int downsample,
      const opus_val16 *coef,\n      celt_sig *mem, int accum)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/celt/celt_decoder.c:426,1
    - Dst: ALLOC
      Src: /src/opus/celt/celt_decoder.c:432,1
    - Dst: denormalise_bands
      Src: /src/opus/celt/celt_decoder.c:453,1
    - Dst: denormalise_bands
      Src: /src/opus/celt/celt_decoder.c:457,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/celt_decoder.c:462,1
    - Dst: clt_mdct_backward
      Src: /src/opus/celt/celt_decoder.c:464,1
    - Dst: clt_mdct_backward
      Src: /src/opus/celt/celt_decoder.c:466,1
    - Dst: denormalise_bands
      Src: /src/opus/celt/celt_decoder.c:472,1
    - Dst: denormalise_bands
      Src: /src/opus/celt/celt_decoder.c:475,1
    - Dst: denormalise_bands
      Src: /src/opus/celt/celt_decoder.c:480,1
    - Dst: denormalise_bands
      Src: /src/opus/celt/celt_decoder.c:482,1
    - Dst: ADD32
      Src: /src/opus/celt/celt_decoder.c:487,1
    - Dst: HALF32
      Src: /src/opus/celt/celt_decoder.c:487,1
    - Dst: HALF32
      Src: /src/opus/celt/celt_decoder.c:487,1
    - Dst: clt_mdct_backward
      Src: /src/opus/celt/celt_decoder.c:489,1
    - Dst: denormalise_bands
      Src: /src/opus/celt/celt_decoder.c:493,1
    - Dst: denormalise_bands
      Src: /src/opus/celt/celt_decoder.c:497,1
    - Dst: clt_mdct_backward
      Src: /src/opus/celt/celt_decoder.c:501,1
    - Dst: SATURATE
      Src: /src/opus/celt/celt_decoder.c:508,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 58
    argCount: 13
    argNames:
    - mode
    - X
    - out_syn
    - oldBandE
    - start
    - effEnd
    - C
    - CC
    - isTransient
    - LM
    - downsample
    - silence
    - ARG_QEXT
    argTypes:
    - CELTMode*
    - celt_norm*
    - celt_sig*[]
    - celt_glog*
    - int
    - int
    - int
    - int
    - int
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 511
      start: 413
    functionDepth: 1
    functionLinenumber: 413
    functionLinenumberEnd: 511
    functionName: celt_synthesis
    functionSourceFile: /src/opus/celt/celt_decoder.c
    functionUses: 0
    functionsReached:
    - OPUS_COPY
    - clt_mdct_backward
    - ADD32
    - SATURATE
    - denormalise_bands
    - VARDECL
    - ALLOC
    - HALF32
    linkageType: ''
    returnType: void
    signature: "void celt_synthesis(const CELTMode *mode, celt_norm *X, celt_sig *
      out_syn[],\n                    celt_glog *oldBandE, int start, int effEnd,
      int C, int CC,\n                    int isTransient, int LM, int downsample,\n
      \                   int silence, int arch ARG_QEXT(const CELTMode *qext_mode)
      ARG_QEXT(const celt_glog *qext_bandLogE) ARG_QEXT(int qext_end))"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ec_tell
      Src: /src/opus/celt/celt_decoder.c:523,1
    - Dst: ec_dec_bit_logp
      Src: /src/opus/celt/celt_decoder.c:532,1
    - Dst: ec_tell
      Src: /src/opus/celt/celt_decoder.c:533,1
    - Dst: ec_dec_bit_logp
      Src: /src/opus/celt/celt_decoder.c:544,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 6
    argNames:
    - start
    - end
    - isTransient
    - tf_res
    - LM
    - dec
    argTypes:
    - int
    - int
    - int
    - int*
    - int
    - ec_dec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 550
      start: 513
    functionDepth: 2
    functionLinenumber: 513
    functionLinenumberEnd: 550
    functionName: tf_decode
    functionSourceFile: /src/opus/celt/celt_decoder.c
    functionUses: 0
    functionsReached:
    - ec_tell
    - ec_dec_bit_logp
    linkageType: ''
    returnType: void
    signature: void tf_decode(int start, int end, int isTransient, int *tf_res, int
      LM, ec_dec *dec)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/celt/celt_decoder.c:558,1
    - Dst: ALLOC
      Src: /src/opus/celt/celt_decoder.c:565,1
    - Dst: pitch_downsample
      Src: /src/opus/celt/celt_decoder.c:566,1
    - Dst: QEXT_SCALE
      Src: /src/opus/celt/celt_decoder.c:567,1
    - Dst: pitch_search
      Src: /src/opus/celt/celt_decoder.c:568,1
    - Dst: QEXT_SCALE
      Src: /src/opus/celt/celt_decoder.c:573,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 4
    argNames:
    - st
    - decode_mem
    - C
    - arch
    argTypes:
    - CELTDecoder*
    - celt_sig*[]
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 574
      start: 552
    functionDepth: 1
    functionLinenumber: 552
    functionLinenumberEnd: 574
    functionName: celt_plc_pitch_search
    functionSourceFile: /src/opus/celt/celt_decoder.c
    functionUses: 0
    functionsReached:
    - QEXT_SCALE
    - VARDECL
    - ALLOC
    - pitch_downsample
    - pitch_search
    linkageType: ''
    returnType: int
    signature: int celt_plc_pitch_search(CELTDecoder *st, celt_sig *decode_mem[2],
      int C, int arch)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_COPY
      Src: /src/opus/celt/celt_decoder.c:646,1
    - Dst: celt_assert
      Src: /src/opus/celt/celt_decoder.c:656,1
    - Dst: float2int
      Src: /src/opus/celt/celt_decoder.c:663,1
    - Dst: MIN32
      Src: /src/opus/celt/celt_decoder.c:663,1
    - Dst: MAX32
      Src: /src/opus/celt/celt_decoder.c:663,1
    - Dst: lpcnet_plc_update
      Src: /src/opus/celt/celt_decoder.c:668,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 25
    argCount: 4
    argNames:
    - lpcnet
    - decode_mem
    - plc_preemphasis_mem
    - CC
    argTypes:
    - LPCNetPLCState*
    - celt_sig*[]
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 672
      start: 639
    functionDepth: 2
    functionLinenumber: 639
    functionLinenumberEnd: 672
    functionName: update_plc_state
    functionSourceFile: /src/opus/celt/celt_decoder.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - MIN32
    - OPUS_COPY
    - float2int
    - MAX32
    - lpcnet_plc_update
    linkageType: ''
    returnType: void
    signature: void update_plc_state(LPCNetPLCState *lpcnet, celt_sig *decode_mem[2],
      float *plc_preemphasis_mem, int CC)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ec_dec_uint
      Src: /src/opus/celt/celt_decoder.c:1094,1
    - Dst: ec_dec_bit_logp
      Src: /src/opus/celt/celt_decoder.c:1095,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - ec
    - qext_end
    - qext_intensity
    - qext_dual_stereo
    argTypes:
    - ec_dec*
    - int
    - int*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1097
      start: 1093
    functionDepth: 1
    functionLinenumber: 1093
    functionLinenumberEnd: 1097
    functionName: decode_qext_stereo_params
    functionSourceFile: /src/opus/celt/celt_decoder.c
    functionUses: 0
    functionsReached:
    - ec_dec_bit_logp
    - ec_dec_uint
    linkageType: ''
    returnType: void
    signature: void decode_qext_stereo_params(ec_dec *ec, int qext_end, int *qext_intensity,
      int *qext_dual_stereo)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: EC_ILOG
      Src: /src/opus/celt/mathops.c:54,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 1
    argNames:
    - _val
    argTypes:
    - opus_uint32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 68
    functionName: isqrt32
    functionSourceFile: /src/opus/celt/mathops.c
    functionUses: 2
    functionsReached:
    - EC_ILOG
    linkageType: ''
    returnType: unsigned
    signature: unsigned isqrt32(opus_uint32 _val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_ilog2
      Src: /src/opus/celt/mathops.c:76,1
    - Dst: VSHR32
      Src: /src/opus/celt/mathops.c:77,1
    - Dst: VSHR32
      Src: /src/opus/celt/mathops.c:78,1
    - Dst: ROUND16
      Src: /src/opus/celt/mathops.c:80,1
    - Dst: celt_rcp
      Src: /src/opus/celt/mathops.c:80,1
    - Dst: ROUND16
      Src: /src/opus/celt/mathops.c:80,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/mathops.c:81,1
    - Dst: PSHR32
      Src: /src/opus/celt/mathops.c:82,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/mathops.c:82,1
    - Dst: ADD32
      Src: /src/opus/celt/mathops.c:83,1
    - Dst: SHL32
      Src: /src/opus/celt/mathops.c:83,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/mathops.c:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_val32
    - opus_val32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 85
    functionName: frac_div32_q29
    functionSourceFile: /src/opus/celt/mathops.c
    functionUses: 0
    functionsReached:
    - MULT32_32_Q31
    - celt_rcp
    - ADD32
    - MULT16_32_Q15
    - celt_ilog2
    - PSHR32
    - SHL32
    - VSHR32
    - ROUND16
    linkageType: ''
    returnType: opus_val32
    signature: opus_val32 frac_div32_q29(opus_val32 a, opus_val32 b)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: frac_div32_q29
      Src: /src/opus/celt/mathops.c:88,1
    - Dst: SHL32
      Src: /src/opus/celt/mathops.c:94,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_val32
    - opus_val32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 95
    functionName: frac_div32
    functionSourceFile: /src/opus/celt/mathops.c
    functionUses: 2
    functionsReached:
    - SHL32
    - frac_div32_q29
    linkageType: ''
    returnType: opus_val32
    signature: opus_val32 frac_div32(opus_val32 a, opus_val32 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ADD16
      Src: /src/opus/celt/mathops.c:110,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/mathops.c:110,1
    - Dst: ADD16
      Src: /src/opus/celt/mathops.c:110,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/mathops.c:110,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/mathops.c:115,1
    - Dst: SHL16
      Src: /src/opus/celt/mathops.c:116,1
    - Dst: SUB16
      Src: /src/opus/celt/mathops.c:116,1
    - Dst: ADD16
      Src: /src/opus/celt/mathops.c:116,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/mathops.c:116,1
    - Dst: ADD16
      Src: /src/opus/celt/mathops.c:121,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/mathops.c:121,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/mathops.c:121,1
    - Dst: SUB16
      Src: /src/opus/celt/mathops.c:122,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/mathops.c:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - opus_val32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 123
    functionName: celt_rsqrt_norm
    functionSourceFile: /src/opus/celt/mathops.c
    functionUses: 0
    functionsReached:
    - ADD16
    - SHL16
    - SUB16
    - MULT16_16_Q15
    linkageType: ''
    returnType: opus_val16
    signature: opus_val16 celt_rsqrt_norm(opus_val32 x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SHL32
      Src: /src/opus/celt/mathops.c:131,1
    - Dst: celt_rsqrt_norm
      Src: /src/opus/celt/mathops.c:131,1
    - Dst: SHR32
      Src: /src/opus/celt/mathops.c:131,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/mathops.c:133,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/mathops.c:134,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/mathops.c:135,1
    - Dst: SHL32
      Src: /src/opus/celt/mathops.c:136,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/mathops.c:136,1
    - Dst: SUB32
      Src: /src/opus/celt/mathops.c:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - opus_val32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 137
    functionName: celt_rsqrt_norm32
    functionSourceFile: /src/opus/celt/mathops.c
    functionUses: 0
    functionsReached:
    - MULT32_32_Q31
    - SHR32
    - celt_rsqrt_norm
    - SHL32
    - SUB32
    linkageType: ''
    returnType: opus_val32
    signature: opus_val32 celt_rsqrt_norm32(opus_val32 x)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: celt_ilog2
      Src: /src/opus/celt/mathops.c:153,1
    - Dst: VSHR32
      Src: /src/opus/celt/mathops.c:154,1
    - Dst: ADD32
      Src: /src/opus/celt/mathops.c:156,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/mathops.c:156,1
    - Dst: ADD16
      Src: /src/opus/celt/mathops.c:156,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/mathops.c:156,1
    - Dst: ADD16
      Src: /src/opus/celt/mathops.c:156,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/mathops.c:157,1
    - Dst: ADD16
      Src: /src/opus/celt/mathops.c:157,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/mathops.c:157,1
    - Dst: ADD16
      Src: /src/opus/celt/mathops.c:157,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/mathops.c:157,1
    - Dst: VSHR32
      Src: /src/opus/celt/mathops.c:158,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 1
    argNames:
    - x
    argTypes:
    - opus_val32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 160
    functionName: celt_sqrt
    functionSourceFile: /src/opus/celt/mathops.c
    functionUses: 1
    functionsReached:
    - ADD32
    - celt_ilog2
    - MULT16_16_Q15
    - ADD16
    - VSHR32
    linkageType: ''
    returnType: opus_val32
    signature: opus_val32 celt_sqrt(opus_val32 x)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: celt_ilog2
      Src: /src/opus/celt/mathops.c:172,1
    - Dst: VSHR32
      Src: /src/opus/celt/mathops.c:173,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/mathops.c:174,1
    - Dst: celt_rsqrt_norm32
      Src: /src/opus/celt/mathops.c:174,1
    - Dst: PSHR32
      Src: /src/opus/celt/mathops.c:175,1
    - Dst: SHL32
      Src: /src/opus/celt/mathops.c:176,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - x
    argTypes:
    - opus_val32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 177
    functionName: celt_sqrt32
    functionSourceFile: /src/opus/celt/mathops.c
    functionUses: 0
    functionsReached:
    - MULT32_32_Q31
    - VSHR32
    - celt_ilog2
    - SHL32
    - PSHR32
    - celt_rsqrt_norm32
    linkageType: ''
    returnType: opus_val32
    signature: opus_val32 celt_sqrt32(opus_val32 x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MULT16_16_P15
      Src: /src/opus/celt/mathops.c:188,1
    - Dst: ADD16
      Src: /src/opus/celt/mathops.c:189,1
    - Dst: MIN16
      Src: /src/opus/celt/mathops.c:189,1
    - Dst: ADD32
      Src: /src/opus/celt/mathops.c:189,1
    - Dst: SUB16
      Src: /src/opus/celt/mathops.c:189,1
    - Dst: MULT16_16_P15
      Src: /src/opus/celt/mathops.c:189,1
    - Dst: ADD32
      Src: /src/opus/celt/mathops.c:189,1
    - Dst: MULT16_16_P15
      Src: /src/opus/celt/mathops.c:189,1
    - Dst: ADD32
      Src: /src/opus/celt/mathops.c:189,1
    - Dst: MULT16_16_P15
      Src: /src/opus/celt/mathops.c:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - opus_val16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 191
    functionName: _celt_cos_pi_2
    functionSourceFile: /src/opus/celt/mathops.c
    functionUses: 0
    functionsReached:
    - MULT16_16_P15
    - ADD32
    - MIN16
    - SUB16
    - ADD16
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE _celt_cos_pi_2(opus_val16 x)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: SHL32
      Src: /src/opus/celt/mathops.c:201,1
    - Dst: EXTEND32
      Src: /src/opus/celt/mathops.c:201,1
    - Dst: SUB32
      Src: /src/opus/celt/mathops.c:202,1
    - Dst: SHL32
      Src: /src/opus/celt/mathops.c:202,1
    - Dst: EXTEND32
      Src: /src/opus/celt/mathops.c:202,1
    - Dst: SHL32
      Src: /src/opus/celt/mathops.c:205,1
    - Dst: EXTEND32
      Src: /src/opus/celt/mathops.c:205,1
    - Dst: _celt_cos_pi_2
      Src: /src/opus/celt/mathops.c:207,1
    - Dst: EXTRACT16
      Src: /src/opus/celt/mathops.c:207,1
    - Dst: NEG16
      Src: /src/opus/celt/mathops.c:209,1
    - Dst: _celt_cos_pi_2
      Src: /src/opus/celt/mathops.c:209,1
    - Dst: EXTRACT16
      Src: /src/opus/celt/mathops.c:209,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 1
    argNames:
    - x
    argTypes:
    - opus_val32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 198
    functionDepth: 1
    functionLinenumber: 198
    functionLinenumberEnd: 219
    functionName: celt_cos_norm
    functionSourceFile: /src/opus/celt/mathops.c
    functionUses: 0
    functionsReached:
    - NEG16
    - EXTRACT16
    - EXTEND32
    - _celt_cos_pi_2
    - SHL32
    - SUB32
    linkageType: ''
    returnType: opus_val16
    signature: opus_val16 celt_cos_norm(opus_val32 x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: celt_sig_assert
      Src: /src/opus/celt/mathops.c:232,1
    - Dst: ABS32
      Src: /src/opus/celt/mathops.c:234,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/mathops.c:235,1
    - Dst: ADD32
      Src: /src/opus/celt/mathops.c:237,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/mathops.c:237,1
    - Dst: ADD32
      Src: /src/opus/celt/mathops.c:238,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/mathops.c:238,1
    - Dst: ADD32
      Src: /src/opus/celt/mathops.c:239,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/mathops.c:239,1
    - Dst: SHL32
      Src: /src/opus/celt/mathops.c:240,1
    - Dst: ADD32
      Src: /src/opus/celt/mathops.c:240,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/mathops.c:240,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - x
    argTypes:
    - opus_val32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 223
    functionDepth: 1
    functionLinenumber: 223
    functionLinenumberEnd: 241
    functionName: celt_cos_norm32
    functionSourceFile: /src/opus/celt/mathops.c
    functionUses: 0
    functionsReached:
    - MULT32_32_Q31
    - ADD32
    - celt_sig_assert
    - SHL32
    - ABS32
    linkageType: ''
    returnType: opus_val32
    signature: opus_val32 celt_cos_norm32(opus_val32 x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ADD16
      Src: /src/opus/celt/mathops.c:251,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/mathops.c:251,1
    - Dst: SUB16
      Src: /src/opus/celt/mathops.c:255,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/mathops.c:255,1
    - Dst: ADD16
      Src: /src/opus/celt/mathops.c:256,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/mathops.c:256,1
    - Dst: ADD16
      Src: /src/opus/celt/mathops.c:256,1
    - Dst: SUB16
      Src: /src/opus/celt/mathops.c:259,1
    - Dst: ADD16
      Src: /src/opus/celt/mathops.c:259,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/mathops.c:259,1
    - Dst: ADD16
      Src: /src/opus/celt/mathops.c:260,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/mathops.c:260,1
    - Dst: ADD16
      Src: /src/opus/celt/mathops.c:260,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - opus_val16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 245
    functionDepth: 0
    functionLinenumber: 245
    functionLinenumberEnd: 261
    functionName: celt_rcp_norm16
    functionSourceFile: /src/opus/celt/mathops.c
    functionUses: 0
    functionsReached:
    - ADD16
    - SUB16
    - MULT16_16_Q15
    linkageType: ''
    returnType: opus_val16
    signature: opus_val16 celt_rcp_norm16(opus_val16 x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_sig_assert
      Src: /src/opus/celt/mathops.c:269,1
    - Dst: SHL32
      Src: /src/opus/celt/mathops.c:270,1
    - Dst: EXTEND32
      Src: /src/opus/celt/mathops.c:270,1
    - Dst: celt_rcp_norm16
      Src: /src/opus/celt/mathops.c:270,1
    - Dst: SHR32
      Src: /src/opus/celt/mathops.c:270,1
    - Dst: SUB32
      Src: /src/opus/celt/mathops.c:281,1
    - Dst: ADD32
      Src: /src/opus/celt/mathops.c:281,1
    - Dst: SHL32
      Src: /src/opus/celt/mathops.c:281,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/mathops.c:282,1
    - Dst: ADD32
      Src: /src/opus/celt/mathops.c:282,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/mathops.c:282,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - x
    argTypes:
    - opus_val32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 266
    functionDepth: 1
    functionLinenumber: 266
    functionLinenumberEnd: 284
    functionName: celt_rcp_norm32
    functionSourceFile: /src/opus/celt/mathops.c
    functionUses: 0
    functionsReached:
    - MULT32_32_Q31
    - ADD32
    - celt_sig_assert
    - EXTEND32
    - SHR32
    - SHL32
    - SUB32
    - celt_rcp_norm16
    linkageType: ''
    returnType: opus_val32
    signature: opus_val32 celt_rcp_norm32(opus_val32 x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_sig_assert
      Src: /src/opus/celt/mathops.c:291,1
    - Dst: celt_ilog2
      Src: /src/opus/celt/mathops.c:292,1
    - Dst: celt_rcp_norm16
      Src: /src/opus/celt/mathops.c:295,1
    - Dst: VSHR32
      Src: /src/opus/celt/mathops.c:295,1
    - Dst: VSHR32
      Src: /src/opus/celt/mathops.c:300,1
    - Dst: EXTEND32
      Src: /src/opus/celt/mathops.c:300,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - opus_val32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 287
    functionDepth: 1
    functionLinenumber: 287
    functionLinenumberEnd: 301
    functionName: celt_rcp
    functionSourceFile: /src/opus/celt/mathops.c
    functionUses: 1
    functionsReached:
    - celt_ilog2
    - celt_sig_assert
    - EXTEND32
    - VSHR32
    - celt_rcp_norm16
    linkageType: ''
    returnType: opus_val32
    signature: opus_val32 celt_rcp(opus_val32 x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FLOAT2INT16
      Src: /src/opus/celt/mathops.c:312,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - OPUS_RESTRICT
    - OPUS_RESTRICT
    - cnt
    argTypes:
    - float*
    - short*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 307
    functionDepth: 1
    functionLinenumber: 307
    functionLinenumberEnd: 314
    functionName: celt_float2int16_c
    functionSourceFile: /src/opus/celt/mathops.c
    functionUses: 0
    functionsReached:
    - FLOAT2INT16
    linkageType: ''
    returnType: void
    signature: void celt_float2int16_c(const float * OPUS_RESTRICT in, short * OPUS_RESTRICT
      out, int cnt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: FMAX
      Src: /src/opus/celt/mathops.c:327,1
    - Dst: FMIN
      Src: /src/opus/celt/mathops.c:328,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - samples
    - cnt
    argTypes:
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 316
    functionDepth: 1
    functionLinenumber: 316
    functionLinenumberEnd: 334
    functionName: opus_limit2_checkwithin1_c
    functionSourceFile: /src/opus/celt/mathops.c
    functionUses: 0
    functionsReached:
    - FMIN
    - FMAX
    linkageType: ''
    returnType: int
    signature: int opus_limit2_checkwithin1_c(float * samples, int cnt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/celt/kiss_fft.c:64,1
    - Dst: C_SUB
      Src: /src/opus/celt/kiss_fft.c:70,1
    - Dst: C_ADDTO
      Src: /src/opus/celt/kiss_fft.c:71,1
    - Dst: QCONST32
      Src: /src/opus/celt/kiss_fft.c:78,1
    - Dst: celt_assert
      Src: /src/opus/celt/kiss_fft.c:80,1
    - Dst: C_SUB
      Src: /src/opus/celt/kiss_fft.c:86,1
    - Dst: C_ADDTO
      Src: /src/opus/celt/kiss_fft.c:87,1
    - Dst: S_MUL
      Src: /src/opus/celt/kiss_fft.c:89,1
    - Dst: ADD32_ovflw
      Src: /src/opus/celt/kiss_fft.c:89,1
    - Dst: S_MUL
      Src: /src/opus/celt/kiss_fft.c:90,1
    - Dst: SUB32_ovflw
      Src: /src/opus/celt/kiss_fft.c:90,1
    - Dst: C_SUB
      Src: /src/opus/celt/kiss_fft.c:91,1
    - Dst: C_ADDTO
      Src: /src/opus/celt/kiss_fft.c:92,1
    - Dst: NEG32_ovflw
      Src: /src/opus/celt/kiss_fft.c:95,1
    - Dst: C_SUB
      Src: /src/opus/celt/kiss_fft.c:96,1
    - Dst: C_ADDTO
      Src: /src/opus/celt/kiss_fft.c:97,1
    - Dst: S_MUL
      Src: /src/opus/celt/kiss_fft.c:99,1
    - Dst: SUB32_ovflw
      Src: /src/opus/celt/kiss_fft.c:99,1
    - Dst: S_MUL
      Src: /src/opus/celt/kiss_fft.c:100,1
    - Dst: NEG32_ovflw
      Src: /src/opus/celt/kiss_fft.c:100,1
    - Dst: ADD32_ovflw
      Src: /src/opus/celt/kiss_fft.c:100,1
    - Dst: C_SUB
      Src: /src/opus/celt/kiss_fft.c:101,1
    - Dst: C_ADDTO
      Src: /src/opus/celt/kiss_fft.c:102,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 34
    argCount: 3
    argNames:
    - Fout
    - m
    - N
    argTypes:
    - kiss_fft_cpx*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 52
    functionDepth: 1
    functionLinenumber: 52
    functionLinenumberEnd: 106
    functionName: kf_bfly2
    functionSourceFile: /src/opus/celt/kiss_fft.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - C_SUB
    - SUB32_ovflw
    - ADD32_ovflw
    - C_ADDTO
    - S_MUL
    - NEG32_ovflw
    - QCONST32
    linkageType: ''
    returnType: void
    signature: "void kf_bfly2(\n                     kiss_fft_cpx * Fout,\n                     int
      m,\n                     int N\n                    )"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: C_SUB
      Src: /src/opus/celt/kiss_fft.c:126,1
    - Dst: C_ADDTO
      Src: /src/opus/celt/kiss_fft.c:127,1
    - Dst: C_ADD
      Src: /src/opus/celt/kiss_fft.c:128,1
    - Dst: C_SUB
      Src: /src/opus/celt/kiss_fft.c:129,1
    - Dst: C_ADDTO
      Src: /src/opus/celt/kiss_fft.c:130,1
    - Dst: C_SUB
      Src: /src/opus/celt/kiss_fft.c:131,1
    - Dst: ADD32_ovflw
      Src: /src/opus/celt/kiss_fft.c:133,1
    - Dst: SUB32_ovflw
      Src: /src/opus/celt/kiss_fft.c:134,1
    - Dst: SUB32_ovflw
      Src: /src/opus/celt/kiss_fft.c:135,1
    - Dst: ADD32_ovflw
      Src: /src/opus/celt/kiss_fft.c:136,1
    - Dst: C_MUL
      Src: /src/opus/celt/kiss_fft.c:153,1
    - Dst: C_MUL
      Src: /src/opus/celt/kiss_fft.c:154,1
    - Dst: C_MUL
      Src: /src/opus/celt/kiss_fft.c:155,1
    - Dst: C_SUB
      Src: /src/opus/celt/kiss_fft.c:157,1
    - Dst: C_ADDTO
      Src: /src/opus/celt/kiss_fft.c:158,1
    - Dst: C_ADD
      Src: /src/opus/celt/kiss_fft.c:159,1
    - Dst: C_SUB
      Src: /src/opus/celt/kiss_fft.c:160,1
    - Dst: C_SUB
      Src: /src/opus/celt/kiss_fft.c:161,1
    - Dst: C_ADDTO
      Src: /src/opus/celt/kiss_fft.c:165,1
    - Dst: ADD32_ovflw
      Src: /src/opus/celt/kiss_fft.c:167,1
    - Dst: SUB32_ovflw
      Src: /src/opus/celt/kiss_fft.c:168,1
    - Dst: SUB32_ovflw
      Src: /src/opus/celt/kiss_fft.c:169,1
    - Dst: ADD32_ovflw
      Src: /src/opus/celt/kiss_fft.c:170,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 40
    argCount: 6
    argNames:
    - Fout
    - fstride
    - st
    - m
    - N
    - mm
    argTypes:
    - kiss_fft_cpx*
    - size_t
    - kiss_fft_state*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 175
    functionName: kf_bfly4
    functionSourceFile: /src/opus/celt/kiss_fft.c
    functionUses: 0
    functionsReached:
    - C_SUB
    - C_MUL
    - SUB32_ovflw
    - ADD32_ovflw
    - C_ADD
    - C_ADDTO
    linkageType: ''
    returnType: void
    signature: "void kf_bfly4(\n                     kiss_fft_cpx * Fout,\n                     const
      size_t fstride,\n                     const kiss_fft_state *st,\n                     int
      m,\n                     int N,\n                     int mm\n                    )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QCONST32
      Src: /src/opus/celt/kiss_fft.c:199,1
    - Dst: C_MUL
      Src: /src/opus/celt/kiss_fft.c:211,1
    - Dst: C_MUL
      Src: /src/opus/celt/kiss_fft.c:212,1
    - Dst: C_ADD
      Src: /src/opus/celt/kiss_fft.c:214,1
    - Dst: C_SUB
      Src: /src/opus/celt/kiss_fft.c:215,1
    - Dst: SUB32_ovflw
      Src: /src/opus/celt/kiss_fft.c:219,1
    - Dst: HALF_OF
      Src: /src/opus/celt/kiss_fft.c:219,1
    - Dst: SUB32_ovflw
      Src: /src/opus/celt/kiss_fft.c:220,1
    - Dst: HALF_OF
      Src: /src/opus/celt/kiss_fft.c:220,1
    - Dst: C_MULBYSCALAR
      Src: /src/opus/celt/kiss_fft.c:222,1
    - Dst: C_ADDTO
      Src: /src/opus/celt/kiss_fft.c:224,1
    - Dst: ADD32_ovflw
      Src: /src/opus/celt/kiss_fft.c:226,1
    - Dst: SUB32_ovflw
      Src: /src/opus/celt/kiss_fft.c:227,1
    - Dst: SUB32_ovflw
      Src: /src/opus/celt/kiss_fft.c:229,1
    - Dst: ADD32_ovflw
      Src: /src/opus/celt/kiss_fft.c:230,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 25
    argCount: 6
    argNames:
    - Fout
    - fstride
    - st
    - m
    - N
    - mm
    argTypes:
    - kiss_fft_cpx*
    - size_t
    - kiss_fft_state*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 235
    functionName: kf_bfly3
    functionSourceFile: /src/opus/celt/kiss_fft.c
    functionUses: 0
    functionsReached:
    - C_SUB
    - C_MUL
    - C_MULBYSCALAR
    - SUB32_ovflw
    - ADD32_ovflw
    - C_ADD
    - C_ADDTO
    - HALF_OF
    - QCONST32
    linkageType: ''
    returnType: void
    signature: "void kf_bfly3(\n                     kiss_fft_cpx * Fout,\n                     const
      size_t fstride,\n                     const kiss_fft_state *st,\n                     int
      m,\n                     int N,\n                     int mm\n                    )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QCONST32
      Src: /src/opus/celt/kiss_fft.c:256,1
    - Dst: QCONST32
      Src: /src/opus/celt/kiss_fft.c:257,1
    - Dst: QCONST32
      Src: /src/opus/celt/kiss_fft.c:258,1
    - Dst: QCONST32
      Src: /src/opus/celt/kiss_fft.c:259,1
    - Dst: C_MUL
      Src: /src/opus/celt/kiss_fft.c:279,1
    - Dst: C_MUL
      Src: /src/opus/celt/kiss_fft.c:280,1
    - Dst: C_MUL
      Src: /src/opus/celt/kiss_fft.c:281,1
    - Dst: C_MUL
      Src: /src/opus/celt/kiss_fft.c:282,1
    - Dst: C_ADD
      Src: /src/opus/celt/kiss_fft.c:284,1
    - Dst: C_SUB
      Src: /src/opus/celt/kiss_fft.c:285,1
    - Dst: C_ADD
      Src: /src/opus/celt/kiss_fft.c:286,1
    - Dst: C_SUB
      Src: /src/opus/celt/kiss_fft.c:287,1
    - Dst: ADD32_ovflw
      Src: /src/opus/celt/kiss_fft.c:289,1
    - Dst: ADD32_ovflw
      Src: /src/opus/celt/kiss_fft.c:289,1
    - Dst: ADD32_ovflw
      Src: /src/opus/celt/kiss_fft.c:290,1
    - Dst: ADD32_ovflw
      Src: /src/opus/celt/kiss_fft.c:290,1
    - Dst: ADD32_ovflw
      Src: /src/opus/celt/kiss_fft.c:292,1
    - Dst: ADD32_ovflw
      Src: /src/opus/celt/kiss_fft.c:292,1
    - Dst: S_MUL
      Src: /src/opus/celt/kiss_fft.c:292,1
    - Dst: S_MUL
      Src: /src/opus/celt/kiss_fft.c:292,1
    - Dst: ADD32_ovflw
      Src: /src/opus/celt/kiss_fft.c:293,1
    - Dst: ADD32_ovflw
      Src: /src/opus/celt/kiss_fft.c:293,1
    - Dst: S_MUL
      Src: /src/opus/celt/kiss_fft.c:293,1
    - Dst: S_MUL
      Src: /src/opus/celt/kiss_fft.c:293,1
    - Dst: ADD32_ovflw
      Src: /src/opus/celt/kiss_fft.c:295,1
    - Dst: S_MUL
      Src: /src/opus/celt/kiss_fft.c:295,1
    - Dst: S_MUL
      Src: /src/opus/celt/kiss_fft.c:295,1
    - Dst: NEG32_ovflw
      Src: /src/opus/celt/kiss_fft.c:296,1
    - Dst: ADD32_ovflw
      Src: /src/opus/celt/kiss_fft.c:296,1
    - Dst: S_MUL
      Src: /src/opus/celt/kiss_fft.c:296,1
    - Dst: S_MUL
      Src: /src/opus/celt/kiss_fft.c:296,1
    - Dst: C_SUB
      Src: /src/opus/celt/kiss_fft.c:298,1
    - Dst: C_ADD
      Src: /src/opus/celt/kiss_fft.c:299,1
    - Dst: ADD32_ovflw
      Src: /src/opus/celt/kiss_fft.c:301,1
    - Dst: ADD32_ovflw
      Src: /src/opus/celt/kiss_fft.c:301,1
    - Dst: S_MUL
      Src: /src/opus/celt/kiss_fft.c:301,1
    - Dst: S_MUL
      Src: /src/opus/celt/kiss_fft.c:301,1
    - Dst: ADD32_ovflw
      Src: /src/opus/celt/kiss_fft.c:302,1
    - Dst: ADD32_ovflw
      Src: /src/opus/celt/kiss_fft.c:302,1
    - Dst: S_MUL
      Src: /src/opus/celt/kiss_fft.c:302,1
    - Dst: S_MUL
      Src: /src/opus/celt/kiss_fft.c:302,1
    - Dst: SUB32_ovflw
      Src: /src/opus/celt/kiss_fft.c:303,1
    - Dst: S_MUL
      Src: /src/opus/celt/kiss_fft.c:303,1
    - Dst: S_MUL
      Src: /src/opus/celt/kiss_fft.c:303,1
    - Dst: SUB32_ovflw
      Src: /src/opus/celt/kiss_fft.c:304,1
    - Dst: S_MUL
      Src: /src/opus/celt/kiss_fft.c:304,1
    - Dst: S_MUL
      Src: /src/opus/celt/kiss_fft.c:304,1
    - Dst: C_ADD
      Src: /src/opus/celt/kiss_fft.c:306,1
    - Dst: C_SUB
      Src: /src/opus/celt/kiss_fft.c:307,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 46
    argCount: 6
    argNames:
    - Fout
    - fstride
    - st
    - m
    - N
    - mm
    argTypes:
    - kiss_fft_cpx*
    - size_t
    - kiss_fft_state*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 239
    functionDepth: 0
    functionLinenumber: 239
    functionLinenumberEnd: 312
    functionName: kf_bfly5
    functionSourceFile: /src/opus/celt/kiss_fft.c
    functionUses: 0
    functionsReached:
    - C_SUB
    - C_MUL
    - SUB32_ovflw
    - ADD32_ovflw
    - C_ADD
    - S_MUL
    - NEG32_ovflw
    - QCONST32
    linkageType: ''
    returnType: void
    signature: "void kf_bfly5(\n                     kiss_fft_cpx * Fout,\n                     const
      size_t fstride,\n                     const kiss_fft_state *st,\n                     int
      m,\n                     int N,\n                     int mm\n                    )"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: compute_bitrev_table
      Src: /src/opus/celt/kiss_fft.c:347,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 6
    argNames:
    - Fout
    - f
    - fstride
    - in_stride
    - factors
    - st
    argTypes:
    - int
    - opus_int16*
    - size_t
    - int
    - opus_int16*
    - kiss_fft_state*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 321
    functionDepth: 1
    functionLinenumber: 321
    functionLinenumberEnd: 352
    functionName: compute_bitrev_table
    functionSourceFile: /src/opus/celt/kiss_fft.c
    functionUses: 1
    functionsReached:
    - compute_bitrev_table
    linkageType: ''
    returnType: void
    signature: "void compute_bitrev_table(\n         int Fout,\n         opus_int16
      *f,\n         const size_t fstride,\n         int in_stride,\n         opus_int16
      * factors,\n         const kiss_fft_state *st\n            )"
  - BBCount: 8
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 41
    argCount: 2
    argNames:
    - n
    - facbuf
    argTypes:
    - int
    - opus_int16*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 411
      start: 358
    functionDepth: 0
    functionLinenumber: 358
    functionLinenumberEnd: 411
    functionName: kf_factor
    functionSourceFile: /src/opus/celt/kiss_fft.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int kf_factor(int n,opus_int16 * facbuf)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MIN32
      Src: /src/opus/celt/kiss_fft.c:420,1
    - Dst: floor
      Src: /src/opus/celt/kiss_fft.c:420,1
    - Dst: cos
      Src: /src/opus/celt/kiss_fft.c:420,1
    - Dst: MIN32
      Src: /src/opus/celt/kiss_fft.c:421,1
    - Dst: floor
      Src: /src/opus/celt/kiss_fft.c:421,1
    - Dst: sin
      Src: /src/opus/celt/kiss_fft.c:421,1
    - Dst: kf_cexp2
      Src: /src/opus/celt/kiss_fft.c:423,1
    - Dst: DIV32
      Src: /src/opus/celt/kiss_fft.c:423,1
    - Dst: SHL32
      Src: /src/opus/celt/kiss_fft.c:423,1
    - Dst: kf_cexp
      Src: /src/opus/celt/kiss_fft.c:430,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - twiddles
    - nfft
    argTypes:
    - kiss_twiddle_cpx*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 433
      start: 413
    functionDepth: 1
    functionLinenumber: 413
    functionLinenumberEnd: 433
    functionName: compute_twiddles
    functionSourceFile: /src/opus/celt/kiss_fft.c
    functionUses: 0
    functionsReached:
    - kf_cexp
    - MIN32
    - DIV32
    - floor
    - sin
    - kf_cexp2
    - SHL32
    - cos
    linkageType: ''
    returnType: void
    signature: void compute_twiddles(kiss_twiddle_cpx *twiddles, int nfft)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - st
    argTypes:
    - kiss_fft_state*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 438
      start: 435
    functionDepth: 0
    functionLinenumber: 435
    functionLinenumberEnd: 438
    functionName: opus_fft_alloc_arch_c
    functionSourceFile: /src/opus/celt/kiss_fft.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int opus_fft_alloc_arch_c(kiss_fft_state *st)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: KISS_FFT_MALLOC
      Src: /src/opus/celt/kiss_fft.c:453,1
    - Dst: celt_ilog2
      Src: /src/opus/celt/kiss_fft.c:465,1
    - Dst: QCONST32
      Src: /src/opus/celt/kiss_fft.c:468,1
    - Dst: KISS_FFT_MALLOC
      Src: /src/opus/celt/kiss_fft.c:489,1
    - Dst: compute_twiddles
      Src: /src/opus/celt/kiss_fft.c:490,1
    - Dst: kf_factor
      Src: /src/opus/celt/kiss_fft.c:493,1
    - Dst: KISS_FFT_MALLOC
      Src: /src/opus/celt/kiss_fft.c:499,1
    - Dst: compute_bitrev_table
      Src: /src/opus/celt/kiss_fft.c:502,1
    - Dst: opus_fft_alloc_arch
      Src: /src/opus/celt/kiss_fft.c:505,1
    - Dst: opus_fft_free
      Src: /src/opus/celt/kiss_fft.c:510,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 49
    argCount: 5
    argNames:
    - nfft
    - mem
    - lenmem
    - base
    - arch
    argTypes:
    - int
    - void*
    - size_t*
    - kiss_fft_state*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 512
      start: 446
    functionDepth: 2
    functionLinenumber: 446
    functionLinenumberEnd: 512
    functionName: opus_fft_alloc_twiddles
    functionSourceFile: /src/opus/celt/kiss_fft.c
    functionUses: 1
    functionsReached:
    - compute_bitrev_table
    - celt_ilog2
    - KISS_FFT_MALLOC
    - kf_factor
    - opus_fft_free
    - compute_twiddles
    - opus_fft_alloc_arch
    - QCONST32
    linkageType: ''
    returnType: kiss_fft_state
    signature: "kiss_fft_state *opus_fft_alloc_twiddles(int nfft,void * mem,size_t
      * lenmem,\n                                        const kiss_fft_state *base,
      int arch)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_fft_alloc_twiddles
      Src: /src/opus/celt/kiss_fft.c:516,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - nfft
    - mem
    - lenmem
    - arch
    argTypes:
    - int
    - void*
    - size_t*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 517
      start: 514
    functionDepth: 3
    functionLinenumber: 514
    functionLinenumberEnd: 517
    functionName: opus_fft_alloc
    functionSourceFile: /src/opus/celt/kiss_fft.c
    functionUses: 0
    functionsReached:
    - opus_fft_alloc_twiddles
    linkageType: ''
    returnType: kiss_fft_state
    signature: kiss_fft_state *opus_fft_alloc(int nfft,void * mem,size_t * lenmem,
      int arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - st
    argTypes:
    - kiss_fft_state*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 521
      start: 519
    functionDepth: 0
    functionLinenumber: 519
    functionLinenumberEnd: 521
    functionName: opus_fft_free_arch_c
    functionSourceFile: /src/opus/celt/kiss_fft.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void opus_fft_free_arch_c(kiss_fft_state *st)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: opus_fft_free_arch
      Src: /src/opus/celt/kiss_fft.c:527,1
    - Dst: opus_free
      Src: /src/opus/celt/kiss_fft.c:528,1
    - Dst: opus_free
      Src: /src/opus/celt/kiss_fft.c:530,1
    - Dst: opus_free
      Src: /src/opus/celt/kiss_fft.c:531,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - cfg
    - arch
    argTypes:
    - kiss_fft_state*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 533
      start: 523
    functionDepth: 1
    functionLinenumber: 523
    functionLinenumberEnd: 533
    functionName: opus_fft_free
    functionSourceFile: /src/opus/celt/kiss_fft.c
    functionUses: 1
    functionsReached:
    - opus_free
    - opus_fft_free_arch
    linkageType: ''
    returnType: void
    signature: void opus_fft_free(const kiss_fft_state *cfg, int arch)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: IMIN
      Src: /src/opus/celt/kiss_fft.c:541,1
    - Dst: SHR32
      Src: /src/opus/celt/kiss_fft.c:546,1
    - Dst: SHR32
      Src: /src/opus/celt/kiss_fft.c:547,1
    - Dst: PSHR32
      Src: /src/opus/celt/kiss_fft.c:552,1
    - Dst: PSHR32
      Src: /src/opus/celt/kiss_fft.c:553,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 4
    argNames:
    - x
    - N
    - total
    - step
    argTypes:
    - kiss_fft_cpx*
    - int
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 556
      start: 539
    functionDepth: 1
    functionLinenumber: 539
    functionLinenumberEnd: 556
    functionName: fft_downshift
    functionSourceFile: /src/opus/celt/kiss_fft.c
    functionUses: 0
    functionsReached:
    - PSHR32
    - IMIN
    - SHR32
    linkageType: ''
    returnType: void
    signature: void fft_downshift(kiss_fft_cpx *x, int N, int *total, int step)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: fft_downshift
      Src: /src/opus/celt/kiss_fft.c:592,1
    - Dst: kf_bfly2
      Src: /src/opus/celt/kiss_fft.c:593,1
    - Dst: fft_downshift
      Src: /src/opus/celt/kiss_fft.c:596,1
    - Dst: kf_bfly4
      Src: /src/opus/celt/kiss_fft.c:597,1
    - Dst: fft_downshift
      Src: /src/opus/celt/kiss_fft.c:601,1
    - Dst: kf_bfly3
      Src: /src/opus/celt/kiss_fft.c:602,1
    - Dst: fft_downshift
      Src: /src/opus/celt/kiss_fft.c:605,1
    - Dst: kf_bfly5
      Src: /src/opus/celt/kiss_fft.c:606,1
    - Dst: fft_downshift
      Src: /src/opus/celt/kiss_fft.c:612,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 36
    argCount: 2
    argNames:
    - st
    - ARG_FIXED(int downshift)
    argTypes:
    - kiss_fft_state*
    - kiss_fft_cpx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 613
      start: 562
    functionDepth: 0
    functionLinenumber: 562
    functionLinenumberEnd: 613
    functionName: opus_fft_impl
    functionSourceFile: /src/opus/celt/kiss_fft.c
    functionUses: 0
    functionsReached:
    - kf_bfly4
    - kf_bfly5
    - kf_bfly2
    - fft_downshift
    - kf_bfly3
    linkageType: ''
    returnType: void
    signature: void opus_fft_impl(const kiss_fft_state *st,kiss_fft_cpx *fout ARG_FIXED(int
      downshift))
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert2
      Src: /src/opus/celt/kiss_fft.c:626,1
    - Dst: S_MUL2
      Src: /src/opus/celt/kiss_fft.c:631,1
    - Dst: S_MUL2
      Src: /src/opus/celt/kiss_fft.c:632,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - st
    - fin
    - fout
    argTypes:
    - kiss_fft_state*
    - kiss_fft_cpx*
    - kiss_fft_cpx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 635
      start: 615
    functionDepth: 1
    functionLinenumber: 615
    functionLinenumberEnd: 635
    functionName: opus_fft_c
    functionSourceFile: /src/opus/celt/kiss_fft.c
    functionUses: 0
    functionsReached:
    - S_MUL2
    - celt_assert2
    linkageType: ''
    returnType: void
    signature: void opus_fft_c(const kiss_fft_state *st,const kiss_fft_cpx *fin,kiss_fft_cpx
      *fout)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert2
      Src: /src/opus/celt/kiss_fft.c:641,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 3
    argNames:
    - st
    - fin
    - fout
    argTypes:
    - kiss_fft_state*
    - kiss_fft_cpx*
    - kiss_fft_cpx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 650
      start: 638
    functionDepth: 1
    functionLinenumber: 638
    functionLinenumberEnd: 650
    functionName: opus_ifft_c
    functionSourceFile: /src/opus/celt/kiss_fft.c
    functionUses: 0
    functionsReached:
    - celt_assert2
    linkageType: ''
    returnType: void
    signature: void opus_ifft_c(const kiss_fft_state *st,const kiss_fft_cpx *fin,kiss_fft_cpx
      *fout)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - arg
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 48
    functionName: ARG_QEXT
    functionSourceFile: /src/opus/celt/celt.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ARG_QEXT(arg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ptr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 87
    functionName: celt_check_mode_ptr_ptr
    functionSourceFile: /src/opus/celt/celt.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_check_mode_ptr_ptr(ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ptr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 89
    functionName: celt_check_analysis_ptr
    functionSourceFile: /src/opus/celt/celt.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_check_analysis_ptr(ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ptr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 91
    functionName: celt_check_silkinfo_ptr
    functionSourceFile: /src/opus/celt/celt.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_check_silkinfo_ptr(ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - ptr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 93
    functionName: celt_check_glog_ptr
    functionSourceFile: /src/opus/celt/celt.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_check_glog_ptr(ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 104
    functionName: CELT_SET_PREDICTION
    functionSourceFile: /src/opus/celt/celt.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CELT_SET_PREDICTION(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 107
    functionName: CELT_SET_INPUT_CLIPPING
    functionSourceFile: /src/opus/celt/celt.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CELT_SET_INPUT_CLIPPING(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 110
    functionName: CELT_GET_AND_CLEAR_ERROR
    functionSourceFile: /src/opus/celt/celt.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CELT_GET_AND_CLEAR_ERROR(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 113
    functionName: CELT_SET_CHANNELS
    functionSourceFile: /src/opus/celt/celt.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CELT_SET_CHANNELS(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 118
    functionName: CELT_SET_START_BAND
    functionSourceFile: /src/opus/celt/celt.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CELT_SET_START_BAND(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 121
    functionName: CELT_SET_END_BAND
    functionSourceFile: /src/opus/celt/celt.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CELT_SET_END_BAND(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 125
    functionName: CELT_GET_MODE
    functionSourceFile: /src/opus/celt/celt.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CELT_GET_MODE(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 128
    functionName: CELT_SET_SIGNALLING
    functionSourceFile: /src/opus/celt/celt.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CELT_SET_SIGNALLING(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 131
    functionName: CELT_SET_TONALITY
    functionSourceFile: /src/opus/celt/celt.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CELT_SET_TONALITY(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 133
    functionName: CELT_SET_TONALITY_SLOPE
    functionSourceFile: /src/opus/celt/celt.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CELT_SET_TONALITY_SLOPE(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 136
    functionName: CELT_SET_ANALYSIS
    functionSourceFile: /src/opus/celt/celt.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CELT_SET_ANALYSIS(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 139
    functionName: OPUS_SET_LFE
    functionSourceFile: /src/opus/celt/celt.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_SET_LFE(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 142
    functionName: OPUS_SET_ENERGY_MASK
    functionSourceFile: /src/opus/celt/celt.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_SET_ENERGY_MASK(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 145
    functionName: CELT_SET_SILK_INFO
    functionSourceFile: /src/opus/celt/celt.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CELT_SET_SILK_INFO(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - bits
    - Fs
    - frame_size
    argTypes:
    - opus_int32
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 149
    functionName: bits_to_bitrate
    functionSourceFile: /src/opus/celt/celt.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE bits_to_bitrate(opus_int32 bits, opus_int32 Fs, opus_int32
      frame_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - bitrate
    - Fs
    - frame_size
    argTypes:
    - opus_int32
    - opus_int32
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 153
    functionName: bitrate_to_bits
    functionSourceFile: /src/opus/celt/celt.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE bitrate_to_bits(opus_int32 bitrate, opus_int32 Fs, opus_int32
      frame_size)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - c
    argTypes:
    - unsigned char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 225
    functionName: toOpus
    functionSourceFile: /src/opus/celt/celt.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE toOpus(unsigned char c)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - c
    argTypes:
    - unsigned char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 227
    functionDepth: 0
    functionLinenumber: 227
    functionLinenumberEnd: 233
    functionName: fromOpus
    functionSourceFile: /src/opus/celt/celt.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE fromOpus(unsigned char c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - st
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 243
    functionDepth: 0
    functionLinenumber: 243
    functionLinenumberEnd: 244
    functionName: VALIDATE_CELT_DECODER
    functionSourceFile: /src/opus/celt/celt.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VALIDATE_CELT_DECODER(st)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 267
    functionDepth: 0
    functionLinenumber: 267
    functionLinenumberEnd: 268
    functionName: QEXT_SCALE
    functionSourceFile: /src/opus/celt/celt.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: QEXT_SCALE(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - qext_scale
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 268
    functionDepth: 0
    functionLinenumber: 268
    functionLinenumberEnd: 269
    functionName: QEXT_SCALE2
    functionSourceFile: /src/opus/celt/celt.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: QEXT_SCALE2(x, qext_scale)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 270
    functionDepth: 0
    functionLinenumber: 270
    functionLinenumberEnd: 271
    functionName: QEXT_SCALE
    functionSourceFile: /src/opus/celt/celt.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: QEXT_SCALE(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - qext_scale
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 271
    functionDepth: 0
    functionLinenumber: 271
    functionLinenumberEnd: 272
    functionName: QEXT_SCALE2
    functionSourceFile: /src/opus/celt/celt.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: QEXT_SCALE2(x, qext_scale)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionName: get_pulses
    functionSourceFile: /src/opus/celt/rate.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE get_pulses(int i)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 4
    argNames:
    - m
    - band
    - LM
    - bits
    argTypes:
    - CELTMode*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 78
    functionName: bits2pulses
    functionSourceFile: /src/opus/celt/rate.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE bits2pulses(const CELTMode *m, int band, int LM, int bits)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - m
    - band
    - LM
    - pulses
    argTypes:
    - CELTMode*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 87
    functionName: pulses2bits
    functionSourceFile: /src/opus/celt/rate.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE pulses2bits(const CELTMode *m, int band, int LM, int pulses)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 38
    functionName: MULT16_16SU
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_16SU(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 42
    functionName: MULT16_32_Q16
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_32_Q16(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 44
    functionName: MULT16_32_Q16
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_32_Q16(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 49
    functionName: MULT16_32_P16
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_32_P16(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 51
    functionName: MULT16_32_P16
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_32_P16(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 56
    functionName: MULT16_32_Q15
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_32_Q15(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 58
    functionName: MULT16_32_Q15
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_32_Q15(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 63
    functionName: MULT32_32_Q16
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT32_32_Q16(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 65
    functionName: MULT32_32_Q16
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT32_32_Q16(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 70
    functionName: MULT32_32_Q31
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT32_32_Q31(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 72
    functionName: MULT32_32_Q31
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT32_32_Q31(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 77
    functionName: MULT32_32_P31
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT32_32_P31(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 78
    functionName: MULT32_32_P31_ovflw
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT32_32_P31_ovflw(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 80
    functionName: MULT16_16U
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_16U(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 81
    functionName: MULT32_32_P31
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT32_32_P31(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 82
    functionName: MULT32_32_P31_ovflw
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT32_32_P31_ovflw(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 87
    functionName: MULT32_32_Q32
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT32_32_Q32(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 89
    functionName: MULT32_32_Q32
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT32_32_Q32(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - bits
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 93
    functionName: QCONST16
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: QCONST16(x,bits)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - bits
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 96
    functionName: QCONST32
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: QCONST32(x,bits)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - bits
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 99
    functionName: GCONST2
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GCONST2(x,bits)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 102
    functionName: GCONST
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GCONST(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 105
    functionName: NEG16
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NEG16(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 107
    functionName: NEG32
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NEG32(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 110
    functionName: EXTRACT16
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EXTRACT16(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 112
    functionName: EXTEND32
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EXTEND32(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 115
    functionName: SHR16
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SHR16(a,shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 117
    functionName: SHL16
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SHL16(a,shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 119
    functionName: SHR32
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 21
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SHR32(a,shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 121
    functionName: SHL32
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 20
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SHL32(a,shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 124
    functionName: PSHR32
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PSHR32(a,shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 126
    functionName: VSHR32
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VSHR32(a, shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 129
    functionName: SHR64
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SHR64(a,shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 132
    functionName: SHR
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SHR(a,shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 133
    functionName: SHL
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SHL(a,shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 134
    functionName: PSHR
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PSHR(a,shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 135
    functionName: SATURATE
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SATURATE(x,a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 137
    functionName: SATURATE16
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SATURATE16(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 140
    functionName: ROUND16
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ROUND16(x,a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 142
    functionName: SROUND16
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SROUND16(x,a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 145
    functionName: HALF16
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: HALF16(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 146
    functionName: HALF32
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: HALF32(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 149
    functionName: ADD16
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ADD16(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 151
    functionName: SUB16
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SUB16(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 153
    functionName: ADD32
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 33
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ADD32(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 155
    functionName: SUB32
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 20
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SUB32(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 158
    functionName: ADD32_ovflw
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 12
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ADD32_ovflw(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 160
    functionName: SUB32_ovflw
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 12
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SUB32_ovflw(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 163
    functionName: NEG32_ovflw
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NEG32_ovflw(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 165
    functionName: SHL32_ovflw
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SHL32_ovflw(a,shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 167
    functionName: PSHR32_ovflw
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PSHR32_ovflw(a,shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 170
    functionName: MULT16_16_16
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_16_16(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 173
    functionName: MULT32_32_32
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT32_32_32(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 177
    functionName: MULT16_16
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_16(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - c
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 180
    functionName: MAC16_16
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAC16_16(c,a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - c
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 184
    functionName: MAC16_32_Q15
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAC16_32_Q15(c,a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - c
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 188
    functionName: MAC16_32_Q16
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAC16_32_Q16(c,a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 190
    functionName: MULT16_16_Q11_32
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_16_Q11_32(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 191
    functionName: MULT16_16_Q11
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_16_Q11(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 192
    functionName: MULT16_16_Q13
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_16_Q13(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 193
    functionName: MULT16_16_Q14
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_16_Q14(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 194
    functionName: MULT16_16_Q15
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_16_Q15(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 196
    functionName: MULT16_16_P13
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_16_P13(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 197
    functionName: MULT16_16_P14
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_16_P14(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 198
    functionName: MULT16_16_P15
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_16_P15(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 201
    functionName: DIV32_16
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 29
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DIV32_16(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 204
    functionName: DIV32
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 16
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DIV32(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PSHR32
      Src: /src/opus/celt/fixed_generic.h:211,1
    - Dst: MAX32
      Src: /src/opus/celt/fixed_generic.h:212,1
    - Dst: MIN32
      Src: /src/opus/celt/fixed_generic.h:213,1
    - Dst: EXTRACT16
      Src: /src/opus/celt/fixed_generic.h:214,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - celt_sig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 215
    functionName: SIG2WORD16_generic
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 0
    functionsReached:
    - EXTRACT16
    - PSHR32
    - MIN32
    - MAX32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE SIG2WORD16_generic(celt_sig x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 217
    functionName: SIG2WORD16
    functionSourceFile: /src/opus/celt/fixed_generic.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SIG2WORD16(x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/celt/vq.c:46,1
    - Dst: SHL32
      Src: /src/opus/celt/vq.c:48,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - X
    - N
    - shift
    argTypes:
    - celt_norm*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 49
    functionName: norm_scaleup
    functionSourceFile: /src/opus/celt/vq.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - SHL32
    linkageType: ''
    returnType: void
    signature: void norm_scaleup(celt_norm *X, int N, int shift)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/celt/vq.c:53,1
    - Dst: PSHR32
      Src: /src/opus/celt/vq.c:55,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 3
    argNames:
    - X
    - N
    - shift
    argTypes:
    - celt_norm*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 56
    functionName: norm_scaledown
    functionSourceFile: /src/opus/celt/vq.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - PSHR32
    linkageType: ''
    returnType: void
    signature: void norm_scaledown(celt_norm *X, int N, int shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - x
    - y
    - len
    - arch
    argTypes:
    - celt_norm*
    - celt_norm*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 64
    functionName: celt_inner_prod_norm
    functionSourceFile: /src/opus/celt/vq.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: opus_val32
    signature: opus_val32 celt_inner_prod_norm(const celt_norm *x, const celt_norm
      *y, int len, int arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - x
    - y
    - len
    - arch
    argTypes:
    - celt_norm*
    - celt_norm*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 71
    functionName: celt_inner_prod_norm_shift
    functionSourceFile: /src/opus/celt/vq.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: opus_val32
    signature: opus_val32 celt_inner_prod_norm_shift(const celt_norm *x, const celt_norm
      *y, int len, int arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NEG16
      Src: /src/opus/celt/vq.c:81,1
    - Dst: norm_scaledown
      Src: /src/opus/celt/vq.c:82,1
    - Dst: EXTRACT16
      Src: /src/opus/celt/vq.c:88,1
    - Dst: PSHR32
      Src: /src/opus/celt/vq.c:88,1
    - Dst: MAC16_16
      Src: /src/opus/celt/vq.c:88,1
    - Dst: MULT16_16
      Src: /src/opus/celt/vq.c:88,1
    - Dst: EXTRACT16
      Src: /src/opus/celt/vq.c:89,1
    - Dst: PSHR32
      Src: /src/opus/celt/vq.c:89,1
    - Dst: MAC16_16
      Src: /src/opus/celt/vq.c:89,1
    - Dst: MULT16_16
      Src: /src/opus/celt/vq.c:89,1
    - Dst: EXTRACT16
      Src: /src/opus/celt/vq.c:97,1
    - Dst: PSHR32
      Src: /src/opus/celt/vq.c:97,1
    - Dst: MAC16_16
      Src: /src/opus/celt/vq.c:97,1
    - Dst: MULT16_16
      Src: /src/opus/celt/vq.c:97,1
    - Dst: EXTRACT16
      Src: /src/opus/celt/vq.c:98,1
    - Dst: PSHR32
      Src: /src/opus/celt/vq.c:98,1
    - Dst: MAC16_16
      Src: /src/opus/celt/vq.c:98,1
    - Dst: MULT16_16
      Src: /src/opus/celt/vq.c:98,1
    - Dst: norm_scaleup
      Src: /src/opus/celt/vq.c:100,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 5
    argNames:
    - X
    - len
    - stride
    - c
    - s
    argTypes:
    - celt_norm*
    - int
    - int
    - opus_val16
    - opus_val16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 75
    functionDepth: 2
    functionLinenumber: 75
    functionLinenumberEnd: 101
    functionName: exp_rotation1
    functionSourceFile: /src/opus/celt/vq.c
    functionUses: 0
    functionsReached:
    - NEG16
    - norm_scaledown
    - MAC16_16
    - MULT16_16
    - EXTRACT16
    - norm_scaleup
    - PSHR32
    linkageType: ''
    returnType: void
    signature: void exp_rotation1(celt_norm *X, int len, int stride, opus_val16 c,
      opus_val16 s)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: celt_div
      Src: /src/opus/celt/vq.c:117,1
    - Dst: MULT16_16
      Src: /src/opus/celt/vq.c:117,1
    - Dst: HALF16
      Src: /src/opus/celt/vq.c:118,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/vq.c:118,1
    - Dst: celt_cos_norm
      Src: /src/opus/celt/vq.c:120,1
    - Dst: EXTEND32
      Src: /src/opus/celt/vq.c:120,1
    - Dst: celt_cos_norm
      Src: /src/opus/celt/vq.c:121,1
    - Dst: EXTEND32
      Src: /src/opus/celt/vq.c:121,1
    - Dst: SUB16
      Src: /src/opus/celt/vq.c:121,1
    - Dst: celt_udiv
      Src: /src/opus/celt/vq.c:133,1
    - Dst: exp_rotation1
      Src: /src/opus/celt/vq.c:139,1
    - Dst: exp_rotation1
      Src: /src/opus/celt/vq.c:140,1
    - Dst: exp_rotation1
      Src: /src/opus/celt/vq.c:142,1
    - Dst: exp_rotation1
      Src: /src/opus/celt/vq.c:144,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 6
    argNames:
    - X
    - len
    - dir
    - stride
    - K
    - spread
    argTypes:
    - celt_norm*
    - int
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 104
    functionDepth: 3
    functionLinenumber: 104
    functionLinenumberEnd: 147
    functionName: exp_rotation
    functionSourceFile: /src/opus/celt/vq.c
    functionUses: 0
    functionsReached:
    - exp_rotation1
    - celt_cos_norm
    - SUB16
    - MULT16_16
    - MULT16_16_Q15
    - HALF16
    - EXTEND32
    - celt_udiv
    - celt_div
    linkageType: ''
    returnType: void
    signature: void exp_rotation(celt_norm *X, int len, int dir, int stride, int K,
      int spread)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: celt_ilog2
      Src: /src/opus/celt/vq.c:161,1
    - Dst: VSHR32
      Src: /src/opus/celt/vq.c:163,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/vq.c:164,1
    - Dst: celt_rsqrt_norm32
      Src: /src/opus/celt/vq.c:164,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/vq.c:171,1
    - Dst: SHL32
      Src: /src/opus/celt/vq.c:171,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/vq.c:174,1
    - Dst: PSHR32
      Src: /src/opus/celt/vq.c:174,1
    - Dst: VSHR32
      Src: /src/opus/celt/vq.c:179,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/vq.c:179,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 6
    argNames:
    - OPUS_RESTRICT
    - OPUS_RESTRICT
    - N
    - Ryy
    - gain
    - shift
    argTypes:
    - int*
    - celt_norm*
    - int
    - opus_val32
    - opus_val32
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 181
    functionName: normalise_residual
    functionSourceFile: /src/opus/celt/vq.c
    functionUses: 0
    functionsReached:
    - MULT32_32_Q31
    - celt_ilog2
    - MULT16_32_Q15
    - PSHR32
    - SHL32
    - VSHR32
    - celt_rsqrt_norm32
    linkageType: ''
    returnType: void
    signature: "void normalise_residual(int * OPUS_RESTRICT iy, celt_norm * OPUS_RESTRICT
      X,\n      int N, opus_val32 Ryy, opus_val32 gain, int shift)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: celt_udiv
      Src: /src/opus/celt/vq.c:192,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - iy
    - N
    - B
    argTypes:
    - int*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 203
    functionName: extract_collapse_mask
    functionSourceFile: /src/opus/celt/vq.c
    functionUses: 0
    functionsReached:
    - celt_udiv
    linkageType: ''
    returnType: unsigned
    signature: unsigned extract_collapse_mask(int *iy, int N, int B)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/celt/vq.c:207,1
    - Dst: ALLOC
      Src: /src/opus/celt/vq.c:217,1
    - Dst: celt_ilog2
      Src: /src/opus/celt/vq.c:221,1
    - Dst: celt_inner_prod_norm_shift
      Src: /src/opus/celt/vq.c:221,1
    - Dst: IMAX
      Src: /src/opus/celt/vq.c:222,1
    - Dst: norm_scaledown
      Src: /src/opus/celt/vq.c:223,1
    - Dst: ABS16
      Src: /src/opus/celt/vq.c:231,1
    - Dst: QCONST16
      Src: /src/opus/celt/vq.c:257,1
    - Dst: QCONST16
      Src: /src/opus/celt/vq.c:261,1
    - Dst: EXTRACT16
      Src: /src/opus/celt/vq.c:264,1
    - Dst: MULT16_32_Q16
      Src: /src/opus/celt/vq.c:264,1
    - Dst: celt_rcp
      Src: /src/opus/celt/vq.c:264,1
    - Dst: EXTRACT16
      Src: /src/opus/celt/vq.c:267,1
    - Dst: MULT16_32_Q16
      Src: /src/opus/celt/vq.c:267,1
    - Dst: celt_rcp
      Src: /src/opus/celt/vq.c:267,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/vq.c:272,1
    - Dst: floor
      Src: /src/opus/celt/vq.c:274,1
    - Dst: MAC16_16
      Src: /src/opus/celt/vq.c:277,1
    - Dst: MAC16_16
      Src: /src/opus/celt/vq.c:278,1
    - Dst: celt_sig_assert
      Src: /src/opus/celt/vq.c:283,1
    - Dst: celt_sig_assert
      Src: /src/opus/celt/vq.c:288,1
    - Dst: MAC16_16
      Src: /src/opus/celt/vq.c:293,1
    - Dst: MAC16_16
      Src: /src/opus/celt/vq.c:294,1
    - Dst: celt_ilog2
      Src: /src/opus/celt/vq.c:309,1
    - Dst: ADD16
      Src: /src/opus/celt/vq.c:314,1
    - Dst: EXTRACT16
      Src: /src/opus/celt/vq.c:320,1
    - Dst: SHR32
      Src: /src/opus/celt/vq.c:320,1
    - Dst: ADD32
      Src: /src/opus/celt/vq.c:320,1
    - Dst: EXTEND32
      Src: /src/opus/celt/vq.c:320,1
    - Dst: ADD16
      Src: /src/opus/celt/vq.c:322,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/vq.c:326,1
    - Dst: EXTRACT16
      Src: /src/opus/celt/vq.c:332,1
    - Dst: SHR32
      Src: /src/opus/celt/vq.c:332,1
    - Dst: ADD32
      Src: /src/opus/celt/vq.c:332,1
    - Dst: EXTEND32
      Src: /src/opus/celt/vq.c:332,1
    - Dst: ADD16
      Src: /src/opus/celt/vq.c:334,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/vq.c:338,1
    - Dst: opus_unlikely
      Src: /src/opus/celt/vq.c:345,1
    - Dst: MULT16_16
      Src: /src/opus/celt/vq.c:345,1
    - Dst: MULT16_16
      Src: /src/opus/celt/vq.c:345,1
    - Dst: ADD32
      Src: /src/opus/celt/vq.c:354,1
    - Dst: EXTEND32
      Src: /src/opus/celt/vq.c:354,1
    - Dst: ADD16
      Src: /src/opus/celt/vq.c:356,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 87
    argCount: 5
    argNames:
    - X
    - iy
    - K
    - N
    - arch
    argTypes:
    - celt_norm*
    - int*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 205
    functionDepth: 2
    functionLinenumber: 205
    functionLinenumberEnd: 374
    functionName: op_pvq_search_c
    functionSourceFile: /src/opus/celt/vq.c
    functionUses: 0
    functionsReached:
    - celt_inner_prod_norm_shift
    - EXTRACT16
    - MULT16_16_Q15
    - floor
    - VARDECL
    - ALLOC
    - ADD16
    - QCONST16
    - opus_unlikely
    - norm_scaledown
    - MAC16_16
    - celt_sig_assert
    - MULT16_32_Q16
    - EXTEND32
    - SHR32
    - IMAX
    - celt_rcp
    - ADD32
    - MULT16_16
    - celt_ilog2
    - ABS16
    linkageType: ''
    returnType: opus_val16
    signature: opus_val16 op_pvq_search_c(celt_norm *X, int *iy, int K, int N, int
      arch)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ABS32
      Src: /src/opus/celt/vq.c:383,1
    - Dst: ABS32
      Src: /src/opus/celt/vq.c:383,1
    - Dst: celt_ilog2
      Src: /src/opus/celt/vq.c:399,1
    - Dst: celt_rcp_norm32
      Src: /src/opus/celt/vq.c:400,1
    - Dst: SHL32
      Src: /src/opus/celt/vq.c:400,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/vq.c:401,1
    - Dst: SHL32
      Src: /src/opus/celt/vq.c:401,1
    - Dst: PSHR32
      Src: /src/opus/celt/vq.c:402,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/vq.c:402,1
    - Dst: SHL32
      Src: /src/opus/celt/vq.c:402,1
    - Dst: PSHR32
      Src: /src/opus/celt/vq.c:403,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/vq.c:403,1
    - Dst: SHL32
      Src: /src/opus/celt/vq.c:403,1
    - Dst: floor
      Src: /src/opus/celt/vq.c:406,1
    - Dst: floor
      Src: /src/opus/celt/vq.c:407,1
    - Dst: IMAX
      Src: /src/opus/celt/vq.c:409,1
    - Dst: IMIN
      Src: /src/opus/celt/vq.c:409,1
    - Dst: abs
      Src: /src/opus/celt/vq.c:411,1
    - Dst: abs
      Src: /src/opus/celt/vq.c:412,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 31
    argCount: 7
    argNames:
    - X
    - iy
    - up_iy
    - K
    - up
    - refine
    - shift
    argTypes:
    - celt_norm*
    - int*
    - int*
    - int
    - int
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 424
      start: 379
    functionDepth: 2
    functionLinenumber: 379
    functionLinenumberEnd: 424
    functionName: op_pvq_search_N2
    functionSourceFile: /src/opus/celt/vq.c
    functionUses: 0
    functionsReached:
    - MULT32_32_Q31
    - SHL32
    - IMIN
    - abs
    - celt_rcp_norm32
    - celt_ilog2
    - floor
    - ABS32
    - PSHR32
    - IMAX
    linkageType: ''
    returnType: opus_val32
    signature: opus_val32 op_pvq_search_N2(const celt_norm *X, int *iy, int *up_iy,
      int K, int up, int *refine, int shift)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/celt/vq.c:429,1
    - Dst: ALLOC
      Src: /src/opus/celt/vq.c:432,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/vq.c:435,1
    - Dst: SHL32
      Src: /src/opus/celt/vq.c:435,1
    - Dst: floor
      Src: /src/opus/celt/vq.c:439,1
    - Dst: SHL32
      Src: /src/opus/celt/vq.c:441,1
    - Dst: IMIN
      Src: /src/opus/celt/vq.c:444,1
    - Dst: IMAX
      Src: /src/opus/celt/vq.c:444,1
    - Dst: abs
      Src: /src/opus/celt/vq.c:447,1
    - Dst: abs
      Src: /src/opus/celt/vq.c:456,1
    - Dst: SHL32
      Src: /src/opus/celt/vq.c:462,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 34
    argCount: 7
    argNames:
    - Xn
    - iy
    - iy0
    - K
    - up
    - margin
    - N
    argTypes:
    - opus_val32*
    - int*
    - int*
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 467
      start: 426
    functionDepth: 1
    functionLinenumber: 426
    functionLinenumberEnd: 467
    functionName: op_pvq_refine
    functionSourceFile: /src/opus/celt/vq.c
    functionUses: 0
    functionsReached:
    - MULT32_32_Q31
    - IMIN
    - abs
    - floor
    - VARDECL
    - ALLOC
    - SHL32
    - IMAX
    linkageType: ''
    returnType: int
    signature: int op_pvq_refine(const opus_val32 *Xn, int *iy, int *iy0, int K, int
      up, int margin, int N)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/celt/vq.c:475,1
    - Dst: ABS32
      Src: /src/opus/celt/vq.c:477,1
    - Dst: ALLOC
      Src: /src/opus/celt/vq.c:478,1
    - Dst: celt_ilog2
      Src: /src/opus/celt/vq.c:483,1
    - Dst: celt_rcp_norm32
      Src: /src/opus/celt/vq.c:484,1
    - Dst: SHL32
      Src: /src/opus/celt/vq.c:484,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/vq.c:486,1
    - Dst: SHL32
      Src: /src/opus/celt/vq.c:486,1
    - Dst: ABS32
      Src: /src/opus/celt/vq.c:486,1
    - Dst: celt_rcp
      Src: /src/opus/celt/vq.c:489,1
    - Dst: ABS32
      Src: /src/opus/celt/vq.c:491,1
    - Dst: op_pvq_refine
      Src: /src/opus/celt/vq.c:495,1
    - Dst: op_pvq_refine
      Src: /src/opus/celt/vq.c:496,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 39
    argCount: 8
    argNames:
    - X
    - iy
    - up_iy
    - K
    - up
    - refine
    - N
    - shift
    argTypes:
    - celt_norm*
    - int*
    - int*
    - int
    - int
    - int*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 518
      start: 469
    functionDepth: 2
    functionLinenumber: 469
    functionLinenumberEnd: 518
    functionName: op_pvq_search_extra
    functionSourceFile: /src/opus/celt/vq.c
    functionUses: 0
    functionsReached:
    - SHL32
    - MULT32_32_Q31
    - celt_rcp
    - celt_rcp_norm32
    - celt_ilog2
    - op_pvq_refine
    - VARDECL
    - ALLOC
    - ABS32
    linkageType: ''
    returnType: opus_val32
    signature: opus_val32 op_pvq_search_extra(const celt_norm *X, int *iy, int *up_iy,
      int K, int up, int *refine, int N, int shift)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: abs
      Src: /src/opus/celt/vq.c:526,1
    - Dst: ec_enc_bit_logp
      Src: /src/opus/celt/vq.c:527,1
    - Dst: ec_enc_bits
      Src: /src/opus/celt/vq.c:529,1
    - Dst: ec_enc_bits
      Src: /src/opus/celt/vq.c:530,1
    - Dst: abs
      Src: /src/opus/celt/vq.c:530,1
    - Dst: ec_enc_bits
      Src: /src/opus/celt/vq.c:532,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 5
    argNames:
    - enc
    - refine
    - up
    - extra_bits
    - use_entropy
    argTypes:
    - ec_enc*
    - opus_int32
    - opus_int32
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 534
      start: 524
    functionDepth: 1
    functionLinenumber: 524
    functionLinenumberEnd: 534
    functionName: ec_enc_refine
    functionSourceFile: /src/opus/celt/vq.c
    functionUses: 0
    functionsReached:
    - ec_enc_bits
    - ec_enc_bit_logp
    - abs
    linkageType: ''
    returnType: void
    signature: void ec_enc_refine(ec_enc *enc, opus_int32 refine, opus_int32 up, int
      extra_bits, int use_entropy)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ec_dec_bit_logp
      Src: /src/opus/celt/vq.c:538,1
    - Dst: ec_dec_bits
      Src: /src/opus/celt/vq.c:540,1
    - Dst: ec_dec_bits
      Src: /src/opus/celt/vq.c:541,1
    - Dst: ec_dec_bits
      Src: /src/opus/celt/vq.c:544,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 4
    argNames:
    - dec
    - up
    - extra_bits
    - use_entropy
    argTypes:
    - ec_enc*
    - opus_int32
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 547
      start: 536
    functionDepth: 1
    functionLinenumber: 536
    functionLinenumberEnd: 547
    functionName: ec_dec_refine
    functionSourceFile: /src/opus/celt/vq.c
    functionUses: 0
    functionsReached:
    - ec_dec_bit_logp
    - ec_dec_bits
    linkageType: ''
    returnType: int
    signature: int ec_dec_refine(ec_enc *dec, opus_int32 up, int extra_bits, int use_entropy)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert2
      Src: /src/opus/celt/vq.c:562,1
    - Dst: celt_assert2
      Src: /src/opus/celt/vq.c:563,1
    - Dst: ALLOC
      Src: /src/opus/celt/vq.c:566,1
    - Dst: exp_rotation
      Src: /src/opus/celt/vq.c:568,1
    - Dst: IMAX
      Src: /src/opus/celt/vq.c:575,1
    - Dst: op_pvq_search_N2
      Src: /src/opus/celt/vq.c:577,1
    - Dst: extract_collapse_mask
      Src: /src/opus/celt/vq.c:578,1
    - Dst: encode_pulses
      Src: /src/opus/celt/vq.c:579,1
    - Dst: ec_enc_uint
      Src: /src/opus/celt/vq.c:580,1
    - Dst: normalise_residual
      Src: /src/opus/celt/vq.c:582,1
    - Dst: IMAX
      Src: /src/opus/celt/vq.c:590,1
    - Dst: op_pvq_search_extra
      Src: /src/opus/celt/vq.c:592,1
    - Dst: extract_collapse_mask
      Src: /src/opus/celt/vq.c:593,1
    - Dst: encode_pulses
      Src: /src/opus/celt/vq.c:594,1
    - Dst: ec_tell
      Src: /src/opus/celt/vq.c:595,1
    - Dst: ec_enc_refine
      Src: /src/opus/celt/vq.c:596,1
    - Dst: ec_enc_bits
      Src: /src/opus/celt/vq.c:597,1
    - Dst: normalise_residual
      Src: /src/opus/celt/vq.c:599,1
    - Dst: op_pvq_search
      Src: /src/opus/celt/vq.c:603,1
    - Dst: extract_collapse_mask
      Src: /src/opus/celt/vq.c:604,1
    - Dst: encode_pulses
      Src: /src/opus/celt/vq.c:605,1
    - Dst: normalise_residual
      Src: /src/opus/celt/vq.c:607,1
    - Dst: exp_rotation
      Src: /src/opus/celt/vq.c:611,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 45
    argCount: 9
    argNames:
    - X
    - N
    - K
    - spread
    - B
    - enc
    - gain
    - ARG_QEXT
    - arch
    argTypes:
    - celt_norm*
    - int
    - int
    - int
    - int
    - ec_enc*
    - opus_val32
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 615
      start: 550
    functionDepth: 4
    functionLinenumber: 550
    functionLinenumberEnd: 615
    functionName: alg_quant
    functionSourceFile: /src/opus/celt/vq.c
    functionUses: 0
    functionsReached:
    - ec_enc_uint
    - ec_tell
    - normalise_residual
    - op_pvq_search_extra
    - ec_enc_bits
    - ALLOC
    - encode_pulses
    - ec_enc_refine
    - celt_assert2
    - op_pvq_search
    - IMAX
    - exp_rotation
    - op_pvq_search_N2
    - extract_collapse_mask
    linkageType: ''
    returnType: unsigned
    signature: "unsigned alg_quant(celt_norm *X, int N, int K, int spread, int B,
      ec_enc *enc,\n      opus_val32 gain, int resynth\n      ARG_QEXT(ec_enc *ext_enc)
      ARG_QEXT(int extra_bits), int arch)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert2
      Src: /src/opus/celt/vq.c:629,1
    - Dst: celt_assert2
      Src: /src/opus/celt/vq.c:630,1
    - Dst: decode_pulses
      Src: /src/opus/celt/vq.c:632,1
    - Dst: IMAX
      Src: /src/opus/celt/vq.c:637,1
    - Dst: ec_dec_uint
      Src: /src/opus/celt/vq.c:639,1
    - Dst: IMAX
      Src: /src/opus/celt/vq.c:664,1
    - Dst: ec_tell
      Src: /src/opus/celt/vq.c:666,1
    - Dst: ec_dec_refine
      Src: /src/opus/celt/vq.c:667,1
    - Dst: ec_dec_bits
      Src: /src/opus/celt/vq.c:668,1
    - Dst: abs
      Src: /src/opus/celt/vq.c:674,1
    - Dst: normalise_residual
      Src: /src/opus/celt/vq.c:685,1
    - Dst: exp_rotation
      Src: /src/opus/celt/vq.c:686,1
    - Dst: extract_collapse_mask
      Src: /src/opus/celt/vq.c:687,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 57
    argCount: 7
    argNames:
    - X
    - N
    - K
    - spread
    - B
    - dec
    - ARG_QEXT
    argTypes:
    - celt_norm*
    - int
    - int
    - int
    - int
    - ec_dec*
    - opus_val32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 690
      start: 619
    functionDepth: 4
    functionLinenumber: 619
    functionLinenumberEnd: 690
    functionName: alg_unquant
    functionSourceFile: /src/opus/celt/vq.c
    functionUses: 0
    functionsReached:
    - ec_tell
    - ec_dec_uint
    - ec_dec_refine
    - abs
    - ec_dec_bits
    - exp_rotation
    - decode_pulses
    - celt_assert2
    - IMAX
    - normalise_residual
    - extract_collapse_mask
    linkageType: ''
    returnType: unsigned
    signature: "unsigned alg_unquant(celt_norm *X, int N, int K, int spread, int B,\n
      \     ec_dec *dec, opus_val32 gain\n      ARG_QEXT(ec_enc *ext_dec) ARG_QEXT(int
      extra_bits))"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: norm_scaledown
      Src: /src/opus/celt/vq.c:703,1
    - Dst: celt_inner_prod_norm
      Src: /src/opus/celt/vq.c:704,1
    - Dst: celt_ilog2
      Src: /src/opus/celt/vq.c:706,1
    - Dst: VSHR32
      Src: /src/opus/celt/vq.c:708,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/vq.c:709,1
    - Dst: celt_rsqrt_norm
      Src: /src/opus/celt/vq.c:709,1
    - Dst: EXTRACT16
      Src: /src/opus/celt/vq.c:714,1
    - Dst: PSHR32
      Src: /src/opus/celt/vq.c:714,1
    - Dst: MULT16_16
      Src: /src/opus/celt/vq.c:714,1
    - Dst: norm_scaleup
      Src: /src/opus/celt/vq.c:717,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 4
    argNames:
    - X
    - N
    - gain
    - arch
    argTypes:
    - celt_norm*
    - int
    - opus_val32
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 719
      start: 693
    functionDepth: 2
    functionLinenumber: 693
    functionLinenumberEnd: 719
    functionName: renormalise_vector
    functionSourceFile: /src/opus/celt/vq.c
    functionUses: 0
    functionsReached:
    - norm_scaledown
    - MULT32_32_Q31
    - MULT16_16
    - celt_inner_prod_norm
    - EXTRACT16
    - norm_scaleup
    - celt_ilog2
    - PSHR32
    - celt_rsqrt_norm
    - VSHR32
    linkageType: ''
    returnType: void
    signature: void renormalise_vector(celt_norm *X, int N, opus_val32 gain, int arch)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: PSHR32
      Src: /src/opus/celt/vq.c:735,1
    - Dst: ADD32
      Src: /src/opus/celt/vq.c:735,1
    - Dst: PSHR32
      Src: /src/opus/celt/vq.c:736,1
    - Dst: SUB32
      Src: /src/opus/celt/vq.c:736,1
    - Dst: MAC16_16
      Src: /src/opus/celt/vq.c:737,1
    - Dst: MAC16_16
      Src: /src/opus/celt/vq.c:738,1
    - Dst: celt_inner_prod_norm_shift
      Src: /src/opus/celt/vq.c:741,1
    - Dst: celt_inner_prod_norm_shift
      Src: /src/opus/celt/vq.c:742,1
    - Dst: celt_sqrt32
      Src: /src/opus/celt/vq.c:744,1
    - Dst: celt_sqrt32
      Src: /src/opus/celt/vq.c:745,1
    - Dst: celt_atan2p_norm
      Src: /src/opus/celt/vq.c:747,1
    - Dst: floor
      Src: /src/opus/celt/vq.c:749,1
    - Dst: celt_atan2p_norm
      Src: /src/opus/celt/vq.c:749,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 18
    argCount: 5
    argNames:
    - X
    - Y
    - stereo
    - N
    - arch
    argTypes:
    - celt_norm*
    - celt_norm*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 753
      start: 722
    functionDepth: 2
    functionLinenumber: 722
    functionLinenumberEnd: 753
    functionName: stereo_itheta
    functionSourceFile: /src/opus/celt/vq.c
    functionUses: 0
    functionsReached:
    - celt_inner_prod_norm_shift
    - MAC16_16
    - celt_atan2p_norm
    - ADD32
    - floor
    - celt_sqrt32
    - SUB32
    - PSHR32
    linkageType: ''
    returnType: opus_int32
    signature: opus_int32 stereo_itheta(const celt_norm *X, const celt_norm *Y, int
      stereo, int N, int arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: IMAX
      Src: /src/opus/celt/vq.c:763,1
    - Dst: celt_ilog2
      Src: /src/opus/celt/vq.c:763,1
    - Dst: celt_ilog2
      Src: /src/opus/celt/vq.c:763,1
    - Dst: PSHR32
      Src: /src/opus/celt/vq.c:770,1
    - Dst: MULT16_16
      Src: /src/opus/celt/vq.c:770,1
    - Dst: celt_ilog2
      Src: /src/opus/celt/vq.c:773,1
    - Dst: celt_rsqrt_norm32
      Src: /src/opus/celt/vq.c:774,1
    - Dst: SHL32
      Src: /src/opus/celt/vq.c:774,1
    - Dst: VSHR32
      Src: /src/opus/celt/vq.c:776,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/vq.c:776,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/vq.c:776,1
    - Dst: sqrt
      Src: /src/opus/celt/vq.c:779,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 7
    argNames:
    - X
    - iy
    - N
    - K
    - face
    - sign
    - gain
    argTypes:
    - celt_norm*
    - int*
    - int
    - int
    - int
    - int
    - opus_val32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 784
      start: 757
    functionDepth: 1
    functionLinenumber: 757
    functionLinenumberEnd: 784
    functionName: cubic_synthesis
    functionSourceFile: /src/opus/celt/vq.c
    functionUses: 0
    functionsReached:
    - VSHR32
    - MULT32_32_Q31
    - MULT16_16
    - celt_ilog2
    - MULT16_32_Q15
    - sqrt
    - SHL32
    - PSHR32
    - IMAX
    - celt_rsqrt_norm32
    linkageType: ''
    returnType: void
    signature: void cubic_synthesis(celt_norm *X, int *iy, int N, int K, int face,
      int sign, opus_val32 gain)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: IMAX
      Src: /src/opus/celt/vq.c:798,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/celt/vq.c:800,1
    - Dst: ABS32
      Src: /src/opus/celt/vq.c:805,1
    - Dst: ABS32
      Src: /src/opus/celt/vq.c:806,1
    - Dst: ec_enc_uint
      Src: /src/opus/celt/vq.c:811,1
    - Dst: ec_enc_bits
      Src: /src/opus/celt/vq.c:812,1
    - Dst: celt_ilog2
      Src: /src/opus/celt/vq.c:815,1
    - Dst: celt_rcp_norm32
      Src: /src/opus/celt/vq.c:816,1
    - Dst: SHL32
      Src: /src/opus/celt/vq.c:816,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/vq.c:817,1
    - Dst: IMIN
      Src: /src/opus/celt/vq.c:820,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/vq.c:820,1
    - Dst: SHL32
      Src: /src/opus/celt/vq.c:820,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/celt/vq.c:823,1
    - Dst: IMIN
      Src: /src/opus/celt/vq.c:828,1
    - Dst: floor
      Src: /src/opus/celt/vq.c:828,1
    - Dst: ec_enc_bits
      Src: /src/opus/celt/vq.c:832,1
    - Dst: cubic_synthesis
      Src: /src/opus/celt/vq.c:835,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 44
    argCount: 7
    argNames:
    - X
    - N
    - res
    - B
    - enc
    - gain
    - resynth
    argTypes:
    - celt_norm*
    - int
    - int
    - int
    - ec_enc*
    - opus_val32
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 839
      start: 786
    functionDepth: 2
    functionLinenumber: 786
    functionLinenumberEnd: 839
    functionName: cubic_quant
    functionSourceFile: /src/opus/celt/vq.c
    functionUses: 0
    functionsReached:
    - ec_enc_uint
    - OPUS_CLEAR
    - SHL32
    - IMIN
    - MULT32_32_Q31
    - cubic_synthesis
    - celt_ilog2
    - celt_rcp_norm32
    - MULT16_32_Q15
    - ec_enc_bits
    - floor
    - ABS32
    - IMAX
    linkageType: ''
    returnType: unsigned
    signature: unsigned cubic_quant(celt_norm *X, int N, int res, int B, ec_enc *enc,
      opus_val32 gain, int resynth)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: IMAX
      Src: /src/opus/celt/vq.c:851,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/celt/vq.c:853,1
    - Dst: ec_dec_uint
      Src: /src/opus/celt/vq.c:857,1
    - Dst: ec_dec_bits
      Src: /src/opus/celt/vq.c:858,1
    - Dst: ec_dec_bits
      Src: /src/opus/celt/vq.c:860,1
    - Dst: cubic_synthesis
      Src: /src/opus/celt/vq.c:863,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 6
    argNames:
    - X
    - N
    - res
    - B
    - dec
    - gain
    argTypes:
    - celt_norm*
    - int
    - int
    - int
    - ec_dec*
    - opus_val32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 866
      start: 841
    functionDepth: 2
    functionLinenumber: 841
    functionLinenumberEnd: 866
    functionName: cubic_unquant
    functionSourceFile: /src/opus/celt/vq.c
    functionUses: 0
    functionsReached:
    - OPUS_CLEAR
    - ec_dec_uint
    - cubic_synthesis
    - ec_dec_bits
    - IMAX
    linkageType: ''
    returnType: unsigned
    signature: unsigned cubic_unquant(celt_norm *X, int N, int res, int B, ec_dec
      *dec, opus_val32 gain)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PSHR32
      Src: /src/opus/celt/quant_bands.c:149,1
    - Dst: SUB32
      Src: /src/opus/celt/quant_bands.c:149,1
    - Dst: MAC16_16
      Src: /src/opus/celt/quant_bands.c:150,1
    - Dst: MIN32
      Src: /src/opus/celt/quant_bands.c:153,1
    - Dst: SHR32
      Src: /src/opus/celt/quant_bands.c:153,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 6
    argNames:
    - eBands
    - oldEBands
    - start
    - end
    - len
    - C
    argTypes:
    - celt_glog*
    - celt_glog*
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 154
    functionName: loss_distortion
    functionSourceFile: /src/opus/celt/quant_bands.c
    functionUses: 0
    functionsReached:
    - MAC16_16
    - MIN32
    - SHR32
    - SUB32
    - PSHR32
    linkageType: ''
    returnType: opus_val32
    signature: opus_val32 loss_distortion(const celt_glog *eBands, celt_glog *oldEBands,
      int start, int end, int len, int C)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: ec_enc_bit_logp
      Src: /src/opus/celt/quant_bands.c:169,1
    - Dst: MAXG
      Src: /src/opus/celt/quant_bands.c:192,1
    - Dst: GCONST
      Src: /src/opus/celt/quant_bands.c:192,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/quant_bands.c:194,1
    - Dst: QCONST32
      Src: /src/opus/celt/quant_bands.c:196,1
    - Dst: MAXG
      Src: /src/opus/celt/quant_bands.c:197,1
    - Dst: GCONST
      Src: /src/opus/celt/quant_bands.c:197,1
    - Dst: SUB32
      Src: /src/opus/celt/quant_bands.c:197,1
    - Dst: floor
      Src: /src/opus/celt/quant_bands.c:201,1
    - Dst: MAXG
      Src: /src/opus/celt/quant_bands.c:202,1
    - Dst: GCONST
      Src: /src/opus/celt/quant_bands.c:202,1
    - Dst: SHR32
      Src: /src/opus/celt/quant_bands.c:208,1
    - Dst: SUB32
      Src: /src/opus/celt/quant_bands.c:208,1
    - Dst: ec_tell
      Src: /src/opus/celt/quant_bands.c:215,1
    - Dst: IMIN
      Src: /src/opus/celt/quant_bands.c:220,1
    - Dst: IMAX
      Src: /src/opus/celt/quant_bands.c:222,1
    - Dst: IMIN
      Src: /src/opus/celt/quant_bands.c:225,1
    - Dst: IMIN
      Src: /src/opus/celt/quant_bands.c:229,1
    - Dst: ec_laplace_encode
      Src: /src/opus/celt/quant_bands.c:230,1
    - Dst: IMAX
      Src: /src/opus/celt/quant_bands.c:235,1
    - Dst: IMIN
      Src: /src/opus/celt/quant_bands.c:235,1
    - Dst: ec_enc_icdf
      Src: /src/opus/celt/quant_bands.c:236,1
    - Dst: IMIN
      Src: /src/opus/celt/quant_bands.c:240,1
    - Dst: ec_enc_bit_logp
      Src: /src/opus/celt/quant_bands.c:241,1
    - Dst: SHL32
      Src: /src/opus/celt/quant_bands.c:245,1
    - Dst: abs
      Src: /src/opus/celt/quant_bands.c:246,1
    - Dst: SHL32
      Src: /src/opus/celt/quant_bands.c:247,1
    - Dst: EXTEND32
      Src: /src/opus/celt/quant_bands.c:247,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/quant_bands.c:249,1
    - Dst: MAX32
      Src: /src/opus/celt/quant_bands.c:251,1
    - Dst: GCONST
      Src: /src/opus/celt/quant_bands.c:251,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/quant_bands.c:254,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 60
    argCount: 15
    argNames:
    - m
    - start
    - end
    - eBands
    - oldEBands
    - budget
    - tell
    - prob_model
    - error
    - enc
    - C
    - LM
    - intra
    - max_decay
    - lfe
    argTypes:
    - CELTMode*
    - int
    - int
    - celt_glog*
    - celt_glog*
    - opus_int32
    - opus_int32
    - unsigned char*
    - celt_glog*
    - ec_enc*
    - int
    - int
    - int
    - celt_glog
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 156
    functionDepth: 2
    functionLinenumber: 156
    functionLinenumberEnd: 258
    functionName: quant_coarse_energy_impl
    functionSourceFile: /src/opus/celt/quant_bands.c
    functionUses: 0
    functionsReached:
    - ec_tell
    - IMIN
    - MAXG
    - GCONST
    - abs
    - MULT16_32_Q15
    - floor
    - ec_enc_bit_logp
    - ec_enc_icdf
    - ec_laplace_encode
    - MAX32
    - EXTEND32
    - SHR32
    - SHL32
    - SUB32
    - IMAX
    - QCONST32
    linkageType: ''
    returnType: int
    signature: "int quant_coarse_energy_impl(const CELTMode *m, int start, int end,\n
      \     const celt_glog *eBands, celt_glog *oldEBands,\n      opus_int32 budget,
      opus_int32 tell,\n      const unsigned char *prob_model, celt_glog *error, ec_enc
      *enc,\n      int C, int LM, int intra, celt_glog max_decay, int lfe)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/celt/quant_bands.c:267,1
    - Dst: VARDECL
      Src: /src/opus/celt/quant_bands.c:268,1
    - Dst: loss_distortion
      Src: /src/opus/celt/quant_bands.c:278,1
    - Dst: ec_tell
      Src: /src/opus/celt/quant_bands.c:280,1
    - Dst: GCONST
      Src: /src/opus/celt/quant_bands.c:284,1
    - Dst: SHL32
      Src: /src/opus/celt/quant_bands.c:288,1
    - Dst: MIN32
      Src: /src/opus/celt/quant_bands.c:288,1
    - Dst: SHR32
      Src: /src/opus/celt/quant_bands.c:288,1
    - Dst: EXTEND32
      Src: /src/opus/celt/quant_bands.c:288,1
    - Dst: MIN32
      Src: /src/opus/celt/quant_bands.c:290,1
    - Dst: GCONST
      Src: /src/opus/celt/quant_bands.c:294,1
    - Dst: ALLOC
      Src: /src/opus/celt/quant_bands.c:297,1
    - Dst: ALLOC
      Src: /src/opus/celt/quant_bands.c:298,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/quant_bands.c:299,1
    - Dst: quant_coarse_energy_impl
      Src: /src/opus/celt/quant_bands.c:303,1
    - Dst: ec_tell_frac
      Src: /src/opus/celt/quant_bands.c:318,1
    - Dst: ec_range_bytes
      Src: /src/opus/celt/quant_bands.c:322,1
    - Dst: ec_range_bytes
      Src: /src/opus/celt/quant_bands.c:323,1
    - Dst: ec_get_buffer
      Src: /src/opus/celt/quant_bands.c:324,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/quant_bands.c:330,1
    - Dst: quant_coarse_energy_impl
      Src: /src/opus/celt/quant_bands.c:334,1
    - Dst: ec_tell_frac
      Src: /src/opus/celt/quant_bands.c:337,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/quant_bands.c:341,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/quant_bands.c:342,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/quant_bands.c:343,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/quant_bands.c:347,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/quant_bands.c:348,1
    - Dst: ADD32
      Src: /src/opus/celt/quant_bands.c:354,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/quant_bands.c:354,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/quant_bands.c:354,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 53
    argCount: 17
    argNames:
    - m
    - start
    - end
    - effEnd
    - eBands
    - oldEBands
    - budget
    - error
    - enc
    - C
    - LM
    - nbAvailableBytes
    - force_intra
    - delayedIntra
    - two_pass
    - loss_rate
    - lfe
    argTypes:
    - CELTMode*
    - int
    - int
    - int
    - celt_glog*
    - celt_glog*
    - opus_uint32
    - celt_glog*
    - ec_enc*
    - int
    - int
    - int
    - int
    - opus_val32*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 358
      start: 260
    functionDepth: 3
    functionLinenumber: 260
    functionLinenumberEnd: 358
    functionName: quant_coarse_energy
    functionSourceFile: /src/opus/celt/quant_bands.c
    functionUses: 0
    functionsReached:
    - ec_tell
    - loss_distortion
    - MIN32
    - OPUS_COPY
    - ec_get_buffer
    - ADD32
    - quant_coarse_energy_impl
    - GCONST
    - ec_tell_frac
    - MULT16_32_Q15
    - MULT16_16_Q15
    - VARDECL
    - ALLOC
    - ec_range_bytes
    - EXTEND32
    - SHR32
    - SHL32
    linkageType: ''
    returnType: void
    signature: "void quant_coarse_energy(const CELTMode *m, int start, int end, int
      effEnd,\n      const celt_glog *eBands, celt_glog *oldEBands, opus_uint32 budget,\n
      \     celt_glog *error, ec_enc *enc, int C, int LM, int nbAvailableBytes,\n
      \     int force_intra, opus_val32 *delayedIntra, int two_pass, int loss_rate,
      int lfe)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ec_tell
      Src: /src/opus/celt/quant_bands.c:370,1
    - Dst: VSHR32
      Src: /src/opus/celt/quant_bands.c:378,1
    - Dst: ADD32
      Src: /src/opus/celt/quant_bands.c:378,1
    - Dst: SHR32
      Src: /src/opus/celt/quant_bands.c:378,1
    - Dst: GCONST
      Src: /src/opus/celt/quant_bands.c:378,1
    - Dst: floor
      Src: /src/opus/celt/quant_bands.c:380,1
    - Dst: ec_enc_bits
      Src: /src/opus/celt/quant_bands.c:386,1
    - Dst: SUB32
      Src: /src/opus/celt/quant_bands.c:388,1
    - Dst: VSHR32
      Src: /src/opus/celt/quant_bands.c:388,1
    - Dst: GCONST
      Src: /src/opus/celt/quant_bands.c:388,1
    - Dst: SHR32
      Src: /src/opus/celt/quant_bands.c:389,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 9
    argNames:
    - m
    - start
    - end
    - oldEBands
    - error
    - prev_quant
    - extra_quant
    - enc
    - C
    argTypes:
    - CELTMode*
    - int
    - int
    - celt_glog*
    - celt_glog*
    - int*
    - int*
    - ec_enc*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 399
      start: 360
    functionDepth: 2
    functionLinenumber: 360
    functionLinenumberEnd: 399
    functionName: quant_fine_energy
    functionSourceFile: /src/opus/celt/quant_bands.c
    functionUses: 0
    functionsReached:
    - ec_tell
    - ADD32
    - GCONST
    - floor
    - ec_enc_bits
    - SHR32
    - SUB32
    - VSHR32
    linkageType: ''
    returnType: void
    signature: void quant_fine_energy(const CELTMode *m, int start, int end, celt_glog
      *oldEBands, celt_glog *error, int *prev_quant, int *extra_quant, ec_enc *enc,
      int C)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ec_enc_bits
      Src: /src/opus/celt/quant_bands.c:417,1
    - Dst: SHR32
      Src: /src/opus/celt/quant_bands.c:419,1
    - Dst: SHL32
      Src: /src/opus/celt/quant_bands.c:419,1
    - Dst: GCONST
      Src: /src/opus/celt/quant_bands.c:419,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 10
    argNames:
    - m
    - start
    - end
    - oldEBands
    - error
    - fine_quant
    - fine_priority
    - bits_left
    - enc
    - C
    argTypes:
    - CELTMode*
    - int
    - int
    - celt_glog*
    - celt_glog*
    - int*
    - int*
    - int
    - ec_enc*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 429
      start: 401
    functionDepth: 1
    functionLinenumber: 401
    functionLinenumberEnd: 429
    functionName: quant_energy_finalise
    functionSourceFile: /src/opus/celt/quant_bands.c
    functionUses: 0
    functionsReached:
    - ec_enc_bits
    - SHL32
    - GCONST
    - SHR32
    linkageType: ''
    returnType: void
    signature: void quant_energy_finalise(const CELTMode *m, int start, int end, celt_glog
      *oldEBands, celt_glog *error, int *fine_quant, int *fine_priority, int bits_left,
      ec_enc *enc, int C)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: celt_sig_assert
      Src: /src/opus/celt/quant_bands.c:463,1
    - Dst: ec_tell
      Src: /src/opus/celt/quant_bands.c:464,1
    - Dst: IMIN
      Src: /src/opus/celt/quant_bands.c:468,1
    - Dst: ec_laplace_decode
      Src: /src/opus/celt/quant_bands.c:469,1
    - Dst: ec_dec_icdf
      Src: /src/opus/celt/quant_bands.c:474,1
    - Dst: ec_dec_bit_logp
      Src: /src/opus/celt/quant_bands.c:479,1
    - Dst: SHL32
      Src: /src/opus/celt/quant_bands.c:483,1
    - Dst: EXTEND32
      Src: /src/opus/celt/quant_bands.c:483,1
    - Dst: MAXG
      Src: /src/opus/celt/quant_bands.c:485,1
    - Dst: GCONST
      Src: /src/opus/celt/quant_bands.c:485,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/quant_bands.c:486,1
    - Dst: MIN32
      Src: /src/opus/celt/quant_bands.c:488,1
    - Dst: GCONST
      Src: /src/opus/celt/quant_bands.c:488,1
    - Dst: MAX32
      Src: /src/opus/celt/quant_bands.c:488,1
    - Dst: GCONST
      Src: /src/opus/celt/quant_bands.c:488,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/quant_bands.c:491,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 34
    argCount: 8
    argNames:
    - m
    - start
    - end
    - oldEBands
    - intra
    - dec
    - C
    - LM
    argTypes:
    - CELTMode*
    - int
    - int
    - celt_glog*
    - int
    - ec_dec*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 494
      start: 431
    functionDepth: 2
    functionLinenumber: 431
    functionLinenumberEnd: 494
    functionName: unquant_coarse_energy
    functionSourceFile: /src/opus/celt/quant_bands.c
    functionUses: 0
    functionsReached:
    - ec_tell
    - IMIN
    - ec_laplace_decode
    - MIN32
    - MAXG
    - ec_dec_bit_logp
    - GCONST
    - MULT16_32_Q15
    - celt_sig_assert
    - MAX32
    - EXTEND32
    - SHL32
    - ec_dec_icdf
    linkageType: ''
    returnType: void
    signature: void unquant_coarse_energy(const CELTMode *m, int start, int end, celt_glog
      *oldEBands, int intra, ec_dec *dec, int C, int LM)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ec_tell
      Src: /src/opus/celt/quant_bands.c:506,1
    - Dst: ec_dec_bits
      Src: /src/opus/celt/quant_bands.c:512,1
    - Dst: SUB32
      Src: /src/opus/celt/quant_bands.c:514,1
    - Dst: VSHR32
      Src: /src/opus/celt/quant_bands.c:514,1
    - Dst: GCONST
      Src: /src/opus/celt/quant_bands.c:514,1
    - Dst: SHR32
      Src: /src/opus/celt/quant_bands.c:515,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 8
    argNames:
    - m
    - start
    - end
    - oldEBands
    - prev_quant
    - extra_quant
    - dec
    - C
    argTypes:
    - CELTMode*
    - int
    - int
    - celt_glog*
    - int*
    - int*
    - ec_dec*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 523
      start: 496
    functionDepth: 2
    functionLinenumber: 496
    functionLinenumberEnd: 523
    functionName: unquant_fine_energy
    functionSourceFile: /src/opus/celt/quant_bands.c
    functionUses: 0
    functionsReached:
    - ec_tell
    - GCONST
    - ec_dec_bits
    - SHR32
    - SUB32
    - VSHR32
    linkageType: ''
    returnType: void
    signature: void unquant_fine_energy(const CELTMode *m, int start, int end, celt_glog
      *oldEBands, int *prev_quant, int *extra_quant, ec_dec *dec, int C)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ec_dec_bits
      Src: /src/opus/celt/quant_bands.c:540,1
    - Dst: SHR32
      Src: /src/opus/celt/quant_bands.c:542,1
    - Dst: SHL32
      Src: /src/opus/celt/quant_bands.c:542,1
    - Dst: GCONST
      Src: /src/opus/celt/quant_bands.c:542,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 16
    argCount: 9
    argNames:
    - m
    - start
    - end
    - oldEBands
    - fine_quant
    - fine_priority
    - bits_left
    - dec
    - C
    argTypes:
    - CELTMode*
    - int
    - int
    - celt_glog*
    - int*
    - int*
    - int
    - ec_dec*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 551
      start: 525
    functionDepth: 1
    functionLinenumber: 525
    functionLinenumberEnd: 551
    functionName: unquant_energy_finalise
    functionSourceFile: /src/opus/celt/quant_bands.c
    functionUses: 0
    functionsReached:
    - SHL32
    - GCONST
    - ec_dec_bits
    - SHR32
    linkageType: ''
    returnType: void
    signature: void unquant_energy_finalise(const CELTMode *m, int start, int end,
      celt_glog *oldEBands, int *fine_quant,  int *fine_priority, int bits_left, ec_dec
      *dec, int C)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_log2_db
      Src: /src/opus/celt/quant_bands.c:562,1
    - Dst: SHL32
      Src: /src/opus/celt/quant_bands.c:563,1
    - Dst: GCONST
      Src: /src/opus/celt/quant_bands.c:566,1
    - Dst: GCONST
      Src: /src/opus/celt/quant_bands.c:570,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 6
    argNames:
    - m
    - effEnd
    - end
    - bandE
    - bandLogE
    - C
    argTypes:
    - CELTMode*
    - int
    - int
    - celt_ener*
    - celt_glog*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 572
      start: 553
    functionDepth: 1
    functionLinenumber: 553
    functionLinenumberEnd: 572
    functionName: amp2Log2
    functionSourceFile: /src/opus/celt/quant_bands.c
    functionUses: 1
    functionsReached:
    - celt_log2_db
    - SHL32
    - GCONST
    linkageType: ''
    returnType: void
    signature: "void amp2Log2(const CELTMode *m, int effEnd, int end,\n      celt_ener
      *bandE, celt_glog *bandLogE, int C)"
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 10
    argCount: 5
    argNames:
    - val
    - thresholds
    - hysteresis
    - N
    - prev
    argTypes:
    - opus_val16
    - opus_val16*
    - opus_val16*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 59
    functionName: hysteresis_decision
    functionSourceFile: /src/opus/celt/bands.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int hysteresis_decision(opus_val16 val, const opus_val16 *thresholds,
      const opus_val16 *hysteresis, int N, int prev)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - seed
    argTypes:
    - opus_uint32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 64
    functionName: celt_lcg_rand
    functionSourceFile: /src/opus/celt/bands.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: opus_uint32
    signature: opus_uint32 celt_lcg_rand(opus_uint32 seed)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_sig_assert
      Src: /src/opus/celt/bands.c:73,1
    - Dst: FRAC_MUL16
      Src: /src/opus/celt/bands.c:75,1
    - Dst: FRAC_MUL16
      Src: /src/opus/celt/bands.c:75,1
    - Dst: FRAC_MUL16
      Src: /src/opus/celt/bands.c:75,1
    - Dst: celt_sig_assert
      Src: /src/opus/celt/bands.c:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - opus_int16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 78
    functionName: bitexact_cos
    functionSourceFile: /src/opus/celt/bands.c
    functionUses: 0
    functionsReached:
    - FRAC_MUL16
    - celt_sig_assert
    linkageType: ''
    returnType: opus_int16
    signature: opus_int16 bitexact_cos(opus_int16 x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EC_ILOG
      Src: /src/opus/celt/bands.c:84,1
    - Dst: EC_ILOG
      Src: /src/opus/celt/bands.c:85,1
    - Dst: FRAC_MUL16
      Src: /src/opus/celt/bands.c:89,1
    - Dst: FRAC_MUL16
      Src: /src/opus/celt/bands.c:89,1
    - Dst: FRAC_MUL16
      Src: /src/opus/celt/bands.c:90,1
    - Dst: FRAC_MUL16
      Src: /src/opus/celt/bands.c:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - isin
    - icos
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 91
    functionName: bitexact_log2tan
    functionSourceFile: /src/opus/celt/bands.c
    functionUses: 0
    functionsReached:
    - FRAC_MUL16
    - EC_ILOG
    linkageType: ''
    returnType: int
    signature: int bitexact_log2tan(int isin,int icos)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: celt_maxabs32
      Src: /src/opus/celt/bands.c:108,1
    - Dst: IMAX
      Src: /src/opus/celt/bands.c:111,1
    - Dst: celt_ilog2
      Src: /src/opus/celt/bands.c:111,1
    - Dst: SHL32
      Src: /src/opus/celt/bands.c:113,1
    - Dst: ADD32
      Src: /src/opus/celt/bands.c:114,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/bands.c:114,1
    - Dst: MAX32
      Src: /src/opus/celt/bands.c:116,1
    - Dst: PSHR32
      Src: /src/opus/celt/bands.c:116,1
    - Dst: celt_sqrt32
      Src: /src/opus/celt/bands.c:116,1
    - Dst: SHR32
      Src: /src/opus/celt/bands.c:116,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 7
    argNames:
    - m
    - X
    - bandE
    - end
    - C
    - LM
    - arch
    argTypes:
    - CELTMode*
    - celt_sig*
    - celt_ener*
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 122
    functionName: compute_band_energies
    functionSourceFile: /src/opus/celt/bands.c
    functionUses: 1
    functionsReached:
    - MULT32_32_Q31
    - ADD32
    - celt_ilog2
    - celt_maxabs32
    - MAX32
    - celt_sqrt32
    - SHL32
    - SHR32
    - PSHR32
    - IMAX
    linkageType: ''
    returnType: void
    signature: void compute_band_energies(const CELTMode *m, const celt_sig *X, celt_ener
      *bandE, int end, int C, int LM, int arch)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: celt_zlog2
      Src: /src/opus/celt/bands.c:139,1
    - Dst: SHL32
      Src: /src/opus/celt/bands.c:140,1
    - Dst: celt_rcp_norm32
      Src: /src/opus/celt/bands.c:141,1
    - Dst: PSHR32
      Src: /src/opus/celt/bands.c:143,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/bands.c:143,1
    - Dst: SHL32
      Src: /src/opus/celt/bands.c:143,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 7
    argNames:
    - m
    - OPUS_RESTRICT
    - OPUS_RESTRICT
    - bandE
    - end
    - C
    - M
    argTypes:
    - CELTMode*
    - celt_sig*
    - celt_norm*
    - celt_ener*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 125
    functionDepth: 2
    functionLinenumber: 125
    functionLinenumberEnd: 147
    functionName: normalise_bands
    functionSourceFile: /src/opus/celt/bands.c
    functionUses: 1
    functionsReached:
    - MULT32_32_Q31
    - celt_rcp_norm32
    - celt_zlog2
    - SHL32
    - PSHR32
    linkageType: ''
    returnType: void
    signature: void normalise_bands(const CELTMode *m, const celt_sig * OPUS_RESTRICT
      freq, celt_norm * OPUS_RESTRICT X, const celt_ener *bandE, int end, int C, int
      M)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_inner_prod
      Src: /src/opus/celt/bands.c:160,1
    - Dst: celt_sqrt
      Src: /src/opus/celt/bands.c:161,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 7
    argNames:
    - m
    - X
    - bandE
    - end
    - C
    - LM
    - arch
    argTypes:
    - CELTMode*
    - celt_sig*
    - celt_ener*
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 166
    functionName: compute_band_energies
    functionSourceFile: /src/opus/celt/bands.c
    functionUses: 1
    functionsReached:
    - celt_sqrt
    - celt_inner_prod
    linkageType: ''
    returnType: void
    signature: void compute_band_energies(const CELTMode *m, const celt_sig *X, celt_ener
      *bandE, int end, int C, int LM, int arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 7
    argNames:
    - m
    - OPUS_RESTRICT
    - OPUS_RESTRICT
    - bandE
    - end
    - C
    - M
    argTypes:
    - CELTMode*
    - celt_sig*
    - celt_norm*
    - celt_ener*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 183
    functionName: normalise_bands
    functionSourceFile: /src/opus/celt/bands.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void normalise_bands(const CELTMode *m, const celt_sig * OPUS_RESTRICT
      freq, celt_norm * OPUS_RESTRICT X, const celt_ener *bandE, int end, int C, int
      M)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: IMIN
      Src: /src/opus/celt/bands.c:200,1
    - Dst: ADD32
      Src: /src/opus/celt/bands.c:225,1
    - Dst: SHL32
      Src: /src/opus/celt/bands.c:225,1
    - Dst: celt_exp2_db
      Src: /src/opus/celt/bands.c:227,1
    - Dst: MIN32
      Src: /src/opus/celt/bands.c:227,1
    - Dst: SHL32
      Src: /src/opus/celt/bands.c:237,1
    - Dst: celt_exp2_db_frac
      Src: /src/opus/celt/bands.c:237,1
    - Dst: PSHR32
      Src: /src/opus/celt/bands.c:250,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/bands.c:250,1
    - Dst: SHL32
      Src: /src/opus/celt/bands.c:250,1
    - Dst: celt_assert
      Src: /src/opus/celt/bands.c:254,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/celt/bands.c:255,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 41
    argCount: 9
    argNames:
    - m
    - OPUS_RESTRICT
    - OPUS_RESTRICT
    - bandLogE
    - start
    - end
    - M
    - downsample
    - silence
    argTypes:
    - CELTMode*
    - celt_norm*
    - celt_sig*
    - celt_glog*
    - int
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 188
    functionDepth: 2
    functionLinenumber: 188
    functionLinenumberEnd: 256
    functionName: denormalise_bands
    functionSourceFile: /src/opus/celt/bands.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - celt_exp2_db
    - IMIN
    - MIN32
    - MULT32_32_Q31
    - OPUS_CLEAR
    - ADD32
    - celt_exp2_db_frac
    - SHL32
    - PSHR32
    linkageType: ''
    returnType: void
    signature: "void denormalise_bands(const CELTMode *m, const celt_norm * OPUS_RESTRICT
      X,\n      celt_sig * OPUS_RESTRICT freq, const celt_glog *bandLogE, int start,\n
      \     int end, int M, int downsample, int silence)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: celt_sig_assert
      Src: /src/opus/celt/bands.c:276,1
    - Dst: celt_udiv
      Src: /src/opus/celt/bands.c:277,1
    - Dst: SHR32
      Src: /src/opus/celt/bands.c:280,1
    - Dst: celt_exp2
      Src: /src/opus/celt/bands.c:280,1
    - Dst: SHL16
      Src: /src/opus/celt/bands.c:280,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/bands.c:281,1
    - Dst: QCONST16
      Src: /src/opus/celt/bands.c:281,1
    - Dst: MIN32
      Src: /src/opus/celt/bands.c:281,1
    - Dst: celt_ilog2
      Src: /src/opus/celt/bands.c:285,1
    - Dst: SHL32
      Src: /src/opus/celt/bands.c:286,1
    - Dst: celt_rsqrt_norm
      Src: /src/opus/celt/bands.c:287,1
    - Dst: celt_exp2
      Src: /src/opus/celt/bands.c:290,1
    - Dst: celt_rsqrt
      Src: /src/opus/celt/bands.c:291,1
    - Dst: MAXG
      Src: /src/opus/celt/bands.c:306,1
    - Dst: MAXG
      Src: /src/opus/celt/bands.c:307,1
    - Dst: MING
      Src: /src/opus/celt/bands.c:309,1
    - Dst: MAX32
      Src: /src/opus/celt/bands.c:310,1
    - Dst: GCONST
      Src: /src/opus/celt/bands.c:313,1
    - Dst: SHR32
      Src: /src/opus/celt/bands.c:315,1
    - Dst: celt_exp2_db
      Src: /src/opus/celt/bands.c:315,1
    - Dst: MIN16
      Src: /src/opus/celt/bands.c:316,1
    - Dst: MULT16_16_Q14
      Src: /src/opus/celt/bands.c:321,1
    - Dst: MIN32
      Src: /src/opus/celt/bands.c:321,1
    - Dst: SHR16
      Src: /src/opus/celt/bands.c:322,1
    - Dst: MIN16
      Src: /src/opus/celt/bands.c:322,1
    - Dst: VSHR32
      Src: /src/opus/celt/bands.c:323,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/bands.c:323,1
    - Dst: celt_exp2_db
      Src: /src/opus/celt/bands.c:327,1
    - Dst: MIN16
      Src: /src/opus/celt/bands.c:330,1
    - Dst: celt_lcg_rand
      Src: /src/opus/celt/bands.c:342,1
    - Dst: renormalise_vector
      Src: /src/opus/celt/bands.c:350,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 52
    argCount: 15
    argNames:
    - m
    - X_
    - collapse_masks
    - LM
    - C
    - size
    - start
    - end
    - logE
    - prev1logE
    - prev2logE
    - pulses
    - seed
    - encode
    - arch
    argTypes:
    - CELTMode*
    - celt_norm*
    - unsigned char*
    - int
    - int
    - int
    - int
    - int
    - celt_glog*
    - celt_glog*
    - celt_glog*
    - int*
    - opus_uint32
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 353
      start: 259
    functionDepth: 3
    functionLinenumber: 259
    functionLinenumberEnd: 353
    functionName: anti_collapse
    functionSourceFile: /src/opus/celt/bands.c
    functionUses: 0
    functionsReached:
    - celt_exp2_db
    - MULT16_16_Q14
    - celt_lcg_rand
    - MIN16
    - celt_rsqrt_norm
    - SHL32
    - celt_rsqrt
    - MULT16_32_Q15
    - MULT16_16_Q15
    - MING
    - QCONST16
    - celt_udiv
    - renormalise_vector
    - celt_sig_assert
    - MAX32
    - SHR32
    - VSHR32
    - SHL16
    - celt_exp2
    - MIN32
    - MAXG
    - SHR16
    - GCONST
    - celt_ilog2
    linkageType: ''
    returnType: void
    signature: "void anti_collapse(const CELTMode *m, celt_norm *X_, unsigned char
      *collapse_masks, int LM, int C, int size,\n      int start, int end, const celt_glog
      *logE, const celt_glog *prev1logE,\n      const celt_glog *prev2logE, const
      int *pulses, opus_uint32 seed, int encode, int arch)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MIN32
      Src: /src/opus/celt/bands.c:368,1
    - Dst: ADD32
      Src: /src/opus/celt/bands.c:370,1
    - Dst: ADD32
      Src: /src/opus/celt/bands.c:371,1
    - Dst: celt_ilog2
      Src: /src/opus/celt/bands.c:373,1
    - Dst: MAX32
      Src: /src/opus/celt/bands.c:373,1
    - Dst: VSHR32
      Src: /src/opus/celt/bands.c:375,1
    - Dst: VSHR32
      Src: /src/opus/celt/bands.c:376,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - Ex
    - Ey
    - w
    argTypes:
    - celt_ener
    - celt_ener
    - opus_val16[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 362
    functionDepth: 0
    functionLinenumber: 362
    functionLinenumberEnd: 377
    functionName: compute_channel_weights
    functionSourceFile: /src/opus/celt/bands.c
    functionUses: 0
    functionsReached:
    - MIN32
    - ADD32
    - celt_ilog2
    - MAX32
    - VSHR32
    linkageType: ''
    returnType: void
    signature: void compute_channel_weights(celt_ener Ex, celt_ener Ey, opus_val16
      w[2])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_zlog2
      Src: /src/opus/celt/bands.c:387,1
    - Dst: MAX32
      Src: /src/opus/celt/bands.c:387,1
    - Dst: VSHR32
      Src: /src/opus/celt/bands.c:389,1
    - Dst: VSHR32
      Src: /src/opus/celt/bands.c:390,1
    - Dst: celt_sqrt
      Src: /src/opus/celt/bands.c:391,1
    - Dst: MULT16_16
      Src: /src/opus/celt/bands.c:391,1
    - Dst: MULT16_16
      Src: /src/opus/celt/bands.c:391,1
    - Dst: MIN32
      Src: /src/opus/celt/bands.c:393,1
    - Dst: MIN32
      Src: /src/opus/celt/bands.c:394,1
    - Dst: DIV32_16
      Src: /src/opus/celt/bands.c:396,1
    - Dst: SHL32
      Src: /src/opus/celt/bands.c:396,1
    - Dst: EXTEND32
      Src: /src/opus/celt/bands.c:396,1
    - Dst: DIV32_16
      Src: /src/opus/celt/bands.c:397,1
    - Dst: SHL32
      Src: /src/opus/celt/bands.c:397,1
    - Dst: EXTEND32
      Src: /src/opus/celt/bands.c:397,1
    - Dst: ADD32
      Src: /src/opus/celt/bands.c:400,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/bands.c:400,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/bands.c:400,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 6
    argNames:
    - m
    - OPUS_RESTRICT
    - OPUS_RESTRICT
    - bandE
    - bandID
    - N
    argTypes:
    - CELTMode*
    - celt_norm*
    - celt_norm*
    - celt_ener*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 379
    functionDepth: 1
    functionLinenumber: 379
    functionLinenumberEnd: 403
    functionName: intensity_stereo
    functionSourceFile: /src/opus/celt/bands.c
    functionUses: 0
    functionsReached:
    - MIN32
    - ADD32
    - MULT16_16
    - MULT16_32_Q15
    - celt_zlog2
    - celt_sqrt
    - MAX32
    - EXTEND32
    - SHL32
    - VSHR32
    - DIV32_16
    linkageType: ''
    returnType: void
    signature: void intensity_stereo(const CELTMode *m, celt_norm * OPUS_RESTRICT
      X, const celt_norm * OPUS_RESTRICT Y, const celt_ener *bandE, int bandID, int
      N)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/celt/bands.c:480,1
    - Dst: MULT16_16
      Src: /src/opus/celt/bands.c:500,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/bands.c:500,1
    - Dst: SHR32
      Src: /src/opus/celt/bands.c:500,1
    - Dst: SHR32
      Src: /src/opus/celt/bands.c:500,1
    - Dst: QCONST16
      Src: /src/opus/celt/bands.c:501,1
    - Dst: QCONST16
      Src: /src/opus/celt/bands.c:503,1
    - Dst: QCONST16
      Src: /src/opus/celt/bands.c:505,1
    - Dst: celt_udiv
      Src: /src/opus/celt/bands.c:511,1
    - Dst: celt_udiv
      Src: /src/opus/celt/bands.c:521,1
    - Dst: celt_assert
      Src: /src/opus/celt/bands.c:536,1
    - Dst: celt_assert
      Src: /src/opus/celt/bands.c:537,1
    - Dst: celt_udiv
      Src: /src/opus/celt/bands.c:538,1
    - Dst: rand
      Src: /src/opus/celt/bands.c:557,1
    - Dst: rand
      Src: /src/opus/celt/bands.c:558,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 62
    argCount: 11
    argNames:
    - m
    - X
    - average
    - last_decision
    - hf_average
    - tapset_decision
    - update_hf
    - end
    - C
    - M
    - spread_weight
    argTypes:
    - CELTMode*
    - celt_norm*
    - int*
    - int
    - int*
    - int*
    - int
    - int
    - int
    - int
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 561
      start: 470
    functionDepth: 1
    functionLinenumber: 470
    functionLinenumberEnd: 561
    functionName: spreading_decision
    functionSourceFile: /src/opus/celt/bands.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - rand
    - MULT16_16
    - MULT16_16_Q15
    - SHR32
    - QCONST16
    - celt_udiv
    linkageType: ''
    returnType: int
    signature: "int spreading_decision(const CELTMode *m, const celt_norm *X, int
      *average,\n      int last_decision, int *hf_average, int *tapset_decision, int
      update_hf,\n      int end, int C, int M, const int *spread_weight)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/celt/bands.c:577,1
    - Dst: ALLOC
      Src: /src/opus/celt/bands.c:581,1
    - Dst: celt_assert
      Src: /src/opus/celt/bands.c:582,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/bands.c:596,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 4
    argNames:
    - X
    - N0
    - stride
    - hadamard
    argTypes:
    - celt_norm*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 598
      start: 574
    functionDepth: 1
    functionLinenumber: 574
    functionLinenumberEnd: 598
    functionName: deinterleave_hadamard
    functionSourceFile: /src/opus/celt/bands.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - VARDECL
    - ALLOC
    - OPUS_COPY
    linkageType: ''
    returnType: void
    signature: void deinterleave_hadamard(celt_norm *X, int N0, int stride, int hadamard)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/celt/bands.c:603,1
    - Dst: ALLOC
      Src: /src/opus/celt/bands.c:607,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/bands.c:619,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 4
    argNames:
    - X
    - N0
    - stride
    - hadamard
    argTypes:
    - celt_norm*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 621
      start: 600
    functionDepth: 1
    functionLinenumber: 600
    functionLinenumberEnd: 621
    functionName: interleave_hadamard
    functionSourceFile: /src/opus/celt/bands.c
    functionUses: 0
    functionsReached:
    - VARDECL
    - ALLOC
    - OPUS_COPY
    linkageType: ''
    returnType: void
    signature: void interleave_hadamard(celt_norm *X, int N0, int stride, int hadamard)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/bands.c:631,1
    - Dst: QCONST32
      Src: /src/opus/celt/bands.c:631,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/bands.c:632,1
    - Dst: QCONST32
      Src: /src/opus/celt/bands.c:632,1
    - Dst: ADD32
      Src: /src/opus/celt/bands.c:633,1
    - Dst: SUB32
      Src: /src/opus/celt/bands.c:634,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - X
    - N0
    - stride
    argTypes:
    - celt_norm*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 636
      start: 623
    functionDepth: 0
    functionLinenumber: 623
    functionLinenumberEnd: 636
    functionName: haar1
    functionSourceFile: /src/opus/celt/bands.c
    functionUses: 0
    functionsReached:
    - SUB32
    - MULT32_32_Q31
    - QCONST32
    - ADD32
    linkageType: ''
    returnType: void
    signature: void haar1(celt_norm *X, int N0, int stride)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: celt_sudiv
      Src: /src/opus/celt/bands.c:649,1
    - Dst: IMIN
      Src: /src/opus/celt/bands.c:650,1
    - Dst: IMIN
      Src: /src/opus/celt/bands.c:652,1
    - Dst: celt_assert
      Src: /src/opus/celt/bands.c:660,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 5
    argNames:
    - N
    - b
    - offset
    - pulse_cap
    - stereo
    argTypes:
    - int
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 662
      start: 638
    functionDepth: 2
    functionLinenumber: 638
    functionLinenumberEnd: 662
    functionName: compute_qn
    functionSourceFile: /src/opus/celt/bands.c
    functionUses: 0
    functionsReached:
    - celt_sudiv
    - celt_assert
    - IMIN
    linkageType: ''
    returnType: int
    signature: int compute_qn(int N, int b, int offset, int pulse_cap, int stereo)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: compute_qn
      Src: /src/opus/celt/bands.c:732,1
    - Dst: stereo_itheta
      Src: /src/opus/celt/bands.c:741,1
    - Dst: ec_tell_frac
      Src: /src/opus/celt/bands.c:744,1
    - Dst: celt_udiv
      Src: /src/opus/celt/bands.c:757,1
    - Dst: bitexact_cos
      Src: /src/opus/celt/bands.c:758,1
    - Dst: bitexact_cos
      Src: /src/opus/celt/bands.c:759,1
    - Dst: FRAC_MUL16
      Src: /src/opus/celt/bands.c:760,1
    - Dst: bitexact_log2tan
      Src: /src/opus/celt/bands.c:760,1
    - Dst: IMIN
      Src: /src/opus/celt/bands.c:770,1
    - Dst: IMAX
      Src: /src/opus/celt/bands.c:770,1
    - Dst: ec_encode
      Src: /src/opus/celt/bands.c:788,1
    - Dst: ec_decode
      Src: /src/opus/celt/bands.c:791,1
    - Dst: ec_dec_update
      Src: /src/opus/celt/bands.c:796,1
    - Dst: ec_enc_uint
      Src: /src/opus/celt/bands.c:802,1
    - Dst: ec_dec_uint
      Src: /src/opus/celt/bands.c:804,1
    - Dst: ec_encode
      Src: /src/opus/celt/bands.c:816,1
    - Dst: ec_decode
      Src: /src/opus/celt/bands.c:821,1
    - Dst: isqrt32
      Src: /src/opus/celt/bands.c:825,1
    - Dst: isqrt32
      Src: /src/opus/celt/bands.c:832,1
    - Dst: ec_dec_update
      Src: /src/opus/celt/bands.c:837,1
    - Dst: celt_assert
      Src: /src/opus/celt/bands.c:840,1
    - Dst: celt_udiv
      Src: /src/opus/celt/bands.c:841,1
    - Dst: IMIN
      Src: /src/opus/celt/bands.c:843,1
    - Dst: ec_tell_frac
      Src: /src/opus/celt/bands.c:843,1
    - Dst: ec_tell_frac
      Src: /src/opus/celt/bands.c:844,1
    - Dst: ec_tell_frac
      Src: /src/opus/celt/bands.c:846,1
    - Dst: IMIN
      Src: /src/opus/celt/bands.c:847,1
    - Dst: IMAX
      Src: /src/opus/celt/bands.c:847,1
    - Dst: celt_sudiv
      Src: /src/opus/celt/bands.c:847,1
    - Dst: IMAX
      Src: /src/opus/celt/bands.c:852,1
    - Dst: IMIN
      Src: /src/opus/celt/bands.c:852,1
    - Dst: ec_enc_uint
      Src: /src/opus/celt/bands.c:853,1
    - Dst: ec_dec_uint
      Src: /src/opus/celt/bands.c:855,1
    - Dst: IMAX
      Src: /src/opus/celt/bands.c:860,1
    - Dst: IMIN
      Src: /src/opus/celt/bands.c:860,1
    - Dst: ec_tell_frac
      Src: /src/opus/celt/bands.c:861,1
    - Dst: intensity_stereo
      Src: /src/opus/celt/bands.c:869,1
    - Dst: stereo_split
      Src: /src/opus/celt/bands.c:871,1
    - Dst: intensity_stereo
      Src: /src/opus/celt/bands.c:885,1
    - Dst: ec_enc_bit_logp
      Src: /src/opus/celt/bands.c:890,1
    - Dst: ec_dec_bit_logp
      Src: /src/opus/celt/bands.c:892,1
    - Dst: ec_tell_frac
      Src: /src/opus/celt/bands.c:901,1
    - Dst: bitexact_cos
      Src: /src/opus/celt/bands.c:917,1
    - Dst: bitexact_cos
      Src: /src/opus/celt/bands.c:918,1
    - Dst: FRAC_MUL16
      Src: /src/opus/celt/bands.c:921,1
    - Dst: bitexact_log2tan
      Src: /src/opus/celt/bands.c:921,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 145
    argCount: 11
    argNames:
    - ctx
    - sctx
    - X
    - Y
    - N
    - b
    - B
    - B0
    - LM
    - stereo
    - ARG_QEXT(int *ext_b)
    argTypes:
    - struct band_ctx*
    - struct split_ctx*
    - celt_norm*
    - celt_norm*
    - int
    - int*
    - int
    - int
    - int
    - int
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 933
      start: 700
    functionDepth: 3
    functionLinenumber: 700
    functionLinenumberEnd: 933
    functionName: compute_theta
    functionSourceFile: /src/opus/celt/bands.c
    functionUses: 0
    functionsReached:
    - FRAC_MUL16
    - ec_encode
    - bitexact_cos
    - ec_decode
    - ec_enc_uint
    - ec_dec_uint
    - stereo_split
    - bitexact_log2tan
    - compute_qn
    - celt_udiv
    - stereo_itheta
    - celt_assert
    - isqrt32
    - ec_dec_bit_logp
    - celt_sudiv
    - IMAX
    - IMIN
    - ec_tell_frac
    - ec_dec_update
    - ec_enc_bit_logp
    - intensity_stereo
    linkageType: ''
    returnType: void
    signature: "void compute_theta(struct band_ctx *ctx, struct split_ctx *sctx,\n
      \     celt_norm *X, celt_norm *Y, int N, int *b, int B, int B0,\n      int LM,\n
      \     int stereo, int *fill ARG_QEXT(int *ext_b))"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: ec_enc_bits
      Src: /src/opus/celt/bands.c:954,1
    - Dst: ec_dec_bits
      Src: /src/opus/celt/bands.c:956,1
    - Dst: SHR32
      Src: /src/opus/celt/bands.c:965,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 4
    argNames:
    - ctx
    - X
    - Y
    - lowband_out
    argTypes:
    - struct band_ctx*
    - celt_norm*
    - celt_norm*
    - celt_norm*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 967
      start: 934
    functionDepth: 1
    functionLinenumber: 934
    functionLinenumberEnd: 967
    functionName: quant_band_n1
    functionSourceFile: /src/opus/celt/bands.c
    functionUses: 0
    functionsReached:
    - ec_enc_bits
    - ec_dec_bits
    - SHR32
    linkageType: ''
    returnType: unsigned
    signature: "unsigned quant_band_n1(struct band_ctx *ctx, celt_norm *X, celt_norm
      *Y,\n      celt_norm *lowband_out)"
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: compute_theta
      Src: /src/opus/celt/bands.c:1017,1
    - Dst: ARG_QEXT
      Src: /src/opus/celt/bands.c:1017,1
    - Dst: celt_cos_norm32
      Src: /src/opus/celt/bands.c:1027,1
    - Dst: celt_cos_norm32
      Src: /src/opus/celt/bands.c:1028,1
    - Dst: SHL32
      Src: /src/opus/celt/bands.c:1030,1
    - Dst: EXTEND32
      Src: /src/opus/celt/bands.c:1030,1
    - Dst: SHL32
      Src: /src/opus/celt/bands.c:1031,1
    - Dst: EXTEND32
      Src: /src/opus/celt/bands.c:1031,1
    - Dst: celt_cos_norm2
      Src: /src/opus/celt/bands.c:1037,1
    - Dst: celt_cos_norm2
      Src: /src/opus/celt/bands.c:1038,1
    - Dst: IMIN
      Src: /src/opus/celt/bands.c:1053,1
    - Dst: IMAX
      Src: /src/opus/celt/bands.c:1055,1
    - Dst: IMIN
      Src: /src/opus/celt/bands.c:1055,1
    - Dst: quant_partition
      Src: /src/opus/celt/bands.c:1065,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/bands.c:1066,1
    - Dst: ARG_QEXT
      Src: /src/opus/celt/bands.c:1066,1
    - Dst: quant_partition
      Src: /src/opus/celt/bands.c:1070,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/bands.c:1071,1
    - Dst: ARG_QEXT
      Src: /src/opus/celt/bands.c:1071,1
    - Dst: quant_partition
      Src: /src/opus/celt/bands.c:1073,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/bands.c:1074,1
    - Dst: ARG_QEXT
      Src: /src/opus/celt/bands.c:1074,1
    - Dst: quant_partition
      Src: /src/opus/celt/bands.c:1078,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/bands.c:1079,1
    - Dst: ARG_QEXT
      Src: /src/opus/celt/bands.c:1079,1
    - Dst: ec_tell_frac
      Src: /src/opus/celt/bands.c:1086,1
    - Dst: IMAX
      Src: /src/opus/celt/bands.c:1089,1
    - Dst: IMIN
      Src: /src/opus/celt/bands.c:1091,1
    - Dst: bits2pulses
      Src: /src/opus/celt/bands.c:1094,1
    - Dst: pulses2bits
      Src: /src/opus/celt/bands.c:1095,1
    - Dst: pulses2bits
      Src: /src/opus/celt/bands.c:1103,1
    - Dst: get_pulses
      Src: /src/opus/celt/bands.c:1109,1
    - Dst: alg_quant
      Src: /src/opus/celt/bands.c:1114,1
    - Dst: ARG_QEXT
      Src: /src/opus/celt/bands.c:1115,1
    - Dst: ARG_QEXT
      Src: /src/opus/celt/bands.c:1115,1
    - Dst: alg_unquant
      Src: /src/opus/celt/bands.c:1118,1
    - Dst: ARG_QEXT
      Src: /src/opus/celt/bands.c:1119,1
    - Dst: ARG_QEXT
      Src: /src/opus/celt/bands.c:1119,1
    - Dst: ec_tell_frac
      Src: /src/opus/celt/bands.c:1125,1
    - Dst: IMAX
      Src: /src/opus/celt/bands.c:1128,1
    - Dst: IMIN
      Src: /src/opus/celt/bands.c:1130,1
    - Dst: cubic_quant
      Src: /src/opus/celt/bands.c:1131,1
    - Dst: cubic_unquant
      Src: /src/opus/celt/bands.c:1132,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/celt/bands.c:1146,1
    - Dst: celt_lcg_rand
      Src: /src/opus/celt/bands.c:1153,1
    - Dst: SHL32
      Src: /src/opus/celt/bands.c:1154,1
    - Dst: celt_lcg_rand
      Src: /src/opus/celt/bands.c:1162,1
    - Dst: QCONST16
      Src: /src/opus/celt/bands.c:1164,1
    - Dst: renormalise_vector
      Src: /src/opus/celt/bands.c:1170,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 119
    argCount: 9
    argNames:
    - ctx
    - X
    - N
    - b
    - B
    - lowband
    - LM
    - gain
    - ARG_QEXT
    argTypes:
    - struct band_ctx*
    - celt_norm*
    - int
    - int
    - int
    - celt_norm*
    - int
    - opus_val32
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1177
      start: 973
    functionDepth: 5
    functionLinenumber: 973
    functionLinenumberEnd: 1177
    functionName: quant_partition
    functionSourceFile: /src/opus/celt/bands.c
    functionUses: 1
    functionsReached:
    - OPUS_CLEAR
    - pulses2bits
    - compute_theta
    - celt_lcg_rand
    - alg_unquant
    - SHL32
    - cubic_unquant
    - celt_cos_norm32
    - quant_partition
    - QCONST16
    - renormalise_vector
    - EXTEND32
    - bits2pulses
    - IMAX
    - celt_cos_norm2
    - IMIN
    - MULT32_32_Q31
    - cubic_quant
    - ARG_QEXT
    - ec_tell_frac
    - alg_quant
    - get_pulses
    linkageType: ''
    returnType: unsigned
    signature: "unsigned quant_partition(struct band_ctx *ctx, celt_norm *X,\n      int
      N, int b, int B, celt_norm *lowband,\n      int LM,\n      opus_val32 gain,
      int fill\n      ARG_QEXT(int ext_b))"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/celt/bands.c:1182,1
    - Dst: ec_tell_frac
      Src: /src/opus/celt/bands.c:1183,1
    - Dst: IMIN
      Src: /src/opus/celt/bands.c:1184,1
    - Dst: IMIN
      Src: /src/opus/celt/bands.c:1188,1
    - Dst: IMIN
      Src: /src/opus/celt/bands.c:1191,1
    - Dst: IMAX
      Src: /src/opus/celt/bands.c:1191,1
    - Dst: cubic_quant
      Src: /src/opus/celt/bands.c:1192,1
    - Dst: cubic_unquant
      Src: /src/opus/celt/bands.c:1193,1
    - Dst: ec_tell_frac
      Src: /src/opus/celt/bands.c:1194,1
    - Dst: IMIN
      Src: /src/opus/celt/bands.c:1211,1
    - Dst: stereo_itheta
      Src: /src/opus/celt/bands.c:1213,1
    - Dst: ec_enc_uint
      Src: /src/opus/celt/bands.c:1215,1
    - Dst: ec_dec_uint
      Src: /src/opus/celt/bands.c:1217,1
    - Dst: celt_cos_norm32
      Src: /src/opus/celt/bands.c:1224,1
    - Dst: celt_cos_norm32
      Src: /src/opus/celt/bands.c:1225,1
    - Dst: celt_cos_norm2
      Src: /src/opus/celt/bands.c:1227,1
    - Dst: celt_cos_norm2
      Src: /src/opus/celt/bands.c:1228,1
    - Dst: IMIN
      Src: /src/opus/celt/bands.c:1237,1
    - Dst: IMAX
      Src: /src/opus/celt/bands.c:1237,1
    - Dst: cubic_quant_partition
      Src: /src/opus/celt/bands.c:1240,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/bands.c:1240,1
    - Dst: cubic_quant_partition
      Src: /src/opus/celt/bands.c:1241,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/bands.c:1241,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 49
    argCount: 10
    argNames:
    - ctx
    - X
    - N
    - b
    - B
    - ec
    - LM
    - gain
    - resynth
    - encode
    argTypes:
    - struct band_ctx*
    - celt_norm*
    - int
    - int
    - int
    - ec_ctx*
    - int
    - opus_val32
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1244
      start: 1180
    functionDepth: 3
    functionLinenumber: 1180
    functionLinenumberEnd: 1244
    functionName: cubic_quant_partition
    functionSourceFile: /src/opus/celt/bands.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - ec_enc_uint
    - IMIN
    - cubic_quant
    - ec_dec_uint
    - celt_cos_norm32
    - celt_cos_norm2
    - MULT32_32_Q31
    - cubic_quant_partition
    - ec_tell_frac
    - stereo_itheta
    - IMAX
    - cubic_unquant
    linkageType: ''
    returnType: unsigned
    signature: unsigned cubic_quant_partition(struct band_ctx *ctx, celt_norm *X,
      int N, int b, int B, ec_ctx *ec, int LM, opus_val32 gain, int resynth, int encode)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: celt_udiv
      Src: /src/opus/celt/bands.c:1271,1
    - Dst: quant_band_n1
      Src: /src/opus/celt/bands.c:1276,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/bands.c:1285,1
    - Dst: haar1
      Src: /src/opus/celt/bands.c:1295,1
    - Dst: haar1
      Src: /src/opus/celt/bands.c:1297,1
    - Dst: haar1
      Src: /src/opus/celt/bands.c:1307,1
    - Dst: haar1
      Src: /src/opus/celt/bands.c:1309,1
    - Dst: deinterleave_hadamard
      Src: /src/opus/celt/bands.c:1323,1
    - Dst: deinterleave_hadamard
      Src: /src/opus/celt/bands.c:1325,1
    - Dst: cubic_quant_partition
      Src: /src/opus/celt/bands.c:1330,1
    - Dst: quant_partition
      Src: /src/opus/celt/bands.c:1334,1
    - Dst: ARG_QEXT
      Src: /src/opus/celt/bands.c:1334,1
    - Dst: interleave_hadamard
      Src: /src/opus/celt/bands.c:1342,1
    - Dst: haar1
      Src: /src/opus/celt/bands.c:1352,1
    - Dst: haar1
      Src: /src/opus/celt/bands.c:1362,1
    - Dst: celt_sqrt
      Src: /src/opus/celt/bands.c:1371,1
    - Dst: SHL32
      Src: /src/opus/celt/bands.c:1371,1
    - Dst: EXTEND32
      Src: /src/opus/celt/bands.c:1371,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/bands.c:1373,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 71
    argCount: 11
    argNames:
    - ctx
    - X
    - N
    - b
    - B
    - lowband
    - LM
    - lowband_out
    - gain
    - lowband_scratch
    - ARG_QEXT
    argTypes:
    - struct band_ctx*
    - celt_norm*
    - int
    - int
    - int
    - celt_norm*
    - int
    - celt_norm*
    - opus_val32
    - celt_norm*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1378
      start: 1248
    functionDepth: 6
    functionLinenumber: 1248
    functionLinenumberEnd: 1378
    functionName: quant_band
    functionSourceFile: /src/opus/celt/bands.c
    functionUses: 0
    functionsReached:
    - SHL32
    - deinterleave_hadamard
    - OPUS_COPY
    - quant_partition
    - cubic_quant_partition
    - haar1
    - quant_band_n1
    - ARG_QEXT
    - MULT16_32_Q15
    - celt_sqrt
    - EXTEND32
    - interleave_hadamard
    - celt_udiv
    linkageType: ''
    returnType: unsigned
    signature: "unsigned quant_band(struct band_ctx *ctx, celt_norm *X,\n      int
      N, int b, int B, celt_norm *lowband,\n      int LM, celt_norm *lowband_out,\n
      \     opus_val32 gain, celt_norm *lowband_scratch, int fill\n      ARG_QEXT(int
      ext_b))"
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: quant_band_n1
      Src: /src/opus/celt/bands.c:1411,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/bands.c:1418,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/bands.c:1419,1
    - Dst: compute_theta
      Src: /src/opus/celt/bands.c:1422,1
    - Dst: ARG_QEXT
      Src: /src/opus/celt/bands.c:1422,1
    - Dst: celt_cos_norm32
      Src: /src/opus/celt/bands.c:1433,1
    - Dst: celt_cos_norm32
      Src: /src/opus/celt/bands.c:1434,1
    - Dst: SHL32
      Src: /src/opus/celt/bands.c:1436,1
    - Dst: EXTEND32
      Src: /src/opus/celt/bands.c:1436,1
    - Dst: SHL32
      Src: /src/opus/celt/bands.c:1437,1
    - Dst: EXTEND32
      Src: /src/opus/celt/bands.c:1437,1
    - Dst: celt_cos_norm2
      Src: /src/opus/celt/bands.c:1443,1
    - Dst: celt_cos_norm2
      Src: /src/opus/celt/bands.c:1444,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/bands.c:1476,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/bands.c:1476,1
    - Dst: ec_enc_bits
      Src: /src/opus/celt/bands.c:1477,1
    - Dst: ec_dec_bits
      Src: /src/opus/celt/bands.c:1479,1
    - Dst: quant_band
      Src: /src/opus/celt/bands.c:1485,1
    - Dst: ARG_QEXT
      Src: /src/opus/celt/bands.c:1486,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/bands.c:1494,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/bands.c:1495,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/bands.c:1496,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/bands.c:1497,1
    - Dst: SUB32
      Src: /src/opus/celt/bands.c:1499,1
    - Dst: ADD32
      Src: /src/opus/celt/bands.c:1500,1
    - Dst: SUB32
      Src: /src/opus/celt/bands.c:1502,1
    - Dst: ADD32
      Src: /src/opus/celt/bands.c:1503,1
    - Dst: IMAX
      Src: /src/opus/celt/bands.c:1509,1
    - Dst: IMIN
      Src: /src/opus/celt/bands.c:1509,1
    - Dst: IMAX
      Src: /src/opus/celt/bands.c:1519,1
    - Dst: IMIN
      Src: /src/opus/celt/bands.c:1519,1
    - Dst: quant_band
      Src: /src/opus/celt/bands.c:1523,1
    - Dst: ARG_QEXT
      Src: /src/opus/celt/bands.c:1524,1
    - Dst: IMIN
      Src: /src/opus/celt/bands.c:1530,1
    - Dst: quant_band
      Src: /src/opus/celt/bands.c:1534,1
    - Dst: ARG_QEXT
      Src: /src/opus/celt/bands.c:1534,1
    - Dst: IMAX
      Src: /src/opus/celt/bands.c:1539,1
    - Dst: IMIN
      Src: /src/opus/celt/bands.c:1539,1
    - Dst: quant_band
      Src: /src/opus/celt/bands.c:1543,1
    - Dst: ARG_QEXT
      Src: /src/opus/celt/bands.c:1543,1
    - Dst: IMIN
      Src: /src/opus/celt/bands.c:1549,1
    - Dst: quant_band
      Src: /src/opus/celt/bands.c:1553,1
    - Dst: ARG_QEXT
      Src: /src/opus/celt/bands.c:1554,1
    - Dst: stereo_merge
      Src: /src/opus/celt/bands.c:1563,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 103
    argCount: 11
    argNames:
    - ctx
    - X
    - Y
    - N
    - b
    - B
    - lowband
    - LM
    - lowband_out
    - lowband_scratch
    - ARG_QEXT
    argTypes:
    - struct band_ctx*
    - celt_norm*
    - celt_norm*
    - int
    - int
    - int
    - celt_norm*
    - int
    - celt_norm*
    - celt_norm*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1572
      start: 1387
    functionDepth: 7
    functionLinenumber: 1387
    functionLinenumberEnd: 1572
    functionName: quant_band_stereo
    functionSourceFile: /src/opus/celt/bands.c
    functionUses: 0
    functionsReached:
    - celt_cos_norm32
    - celt_cos_norm2
    - MULT32_32_Q31
    - quant_band
    - OPUS_COPY
    - ADD32
    - IMIN
    - ARG_QEXT
    - quant_band_n1
    - compute_theta
    - ec_dec_bits
    - ec_enc_bits
    - EXTEND32
    - stereo_merge
    - SHL32
    - SUB32
    - IMAX
    linkageType: ''
    returnType: unsigned
    signature: "unsigned quant_band_stereo(struct band_ctx *ctx, celt_norm *X, celt_norm
      *Y,\n      int N, int b, int B, celt_norm *lowband,\n      int LM, celt_norm
      *lowband_out,\n      celt_norm *lowband_scratch, int fill\n      ARG_QEXT(int
      ext_b) ARG_QEXT(const int *cap))"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_COPY
      Src: /src/opus/celt/bands.c:1583,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/bands.c:1585,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 6
    argNames:
    - m
    - norm
    - norm2
    - start
    - M
    - dual_stereo
    argTypes:
    - CELTMode*
    - celt_norm*
    - celt_norm*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1586
      start: 1575
    functionDepth: 1
    functionLinenumber: 1575
    functionLinenumberEnd: 1586
    functionName: special_hybrid_folding
    functionSourceFile: /src/opus/celt/bands.c
    functionUses: 0
    functionsReached:
    - OPUS_COPY
    linkageType: ''
    returnType: void
    signature: void special_hybrid_folding(const CELTMode *m, celt_norm *norm, celt_norm
      *norm2, int start, int M, int dual_stereo)
  - BBCount: 28
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/celt/bands.c:1602,1
    - Dst: VARDECL
      Src: /src/opus/celt/bands.c:1603,1
    - Dst: VARDECL
      Src: /src/opus/celt/bands.c:1604,1
    - Dst: VARDECL
      Src: /src/opus/celt/bands.c:1605,1
    - Dst: VARDECL
      Src: /src/opus/celt/bands.c:1606,1
    - Dst: VARDECL
      Src: /src/opus/celt/bands.c:1607,1
    - Dst: VARDECL
      Src: /src/opus/celt/bands.c:1608,1
    - Dst: ALLOC
      Src: /src/opus/celt/bands.c:1638,1
    - Dst: ALLOC
      Src: /src/opus/celt/bands.c:1649,1
    - Dst: ALLOC
      Src: /src/opus/celt/bands.c:1654,1
    - Dst: ALLOC
      Src: /src/opus/celt/bands.c:1655,1
    - Dst: ALLOC
      Src: /src/opus/celt/bands.c:1656,1
    - Dst: ALLOC
      Src: /src/opus/celt/bands.c:1657,1
    - Dst: ALLOC
      Src: /src/opus/celt/bands.c:1658,1
    - Dst: ALLOC
      Src: /src/opus/celt/bands.c:1677,1
    - Dst: ALLOC
      Src: /src/opus/celt/bands.c:1679,1
    - Dst: celt_assert
      Src: /src/opus/celt/bands.c:1705,1
    - Dst: ec_tell_frac
      Src: /src/opus/celt/bands.c:1706,1
    - Dst: ec_tell_frac
      Src: /src/opus/celt/bands.c:1717,1
    - Dst: celt_sudiv
      Src: /src/opus/celt/bands.c:1723,1
    - Dst: IMIN
      Src: /src/opus/celt/bands.c:1723,1
    - Dst: IMAX
      Src: /src/opus/celt/bands.c:1724,1
    - Dst: IMIN
      Src: /src/opus/celt/bands.c:1724,1
    - Dst: IMIN
      Src: /src/opus/celt/bands.c:1724,1
    - Dst: celt_sudiv
      Src: /src/opus/celt/bands.c:1731,1
    - Dst: IMIN
      Src: /src/opus/celt/bands.c:1731,1
    - Dst: IMAX
      Src: /src/opus/celt/bands.c:1732,1
    - Dst: IMIN
      Src: /src/opus/celt/bands.c:1732,1
    - Dst: IMIN
      Src: /src/opus/celt/bands.c:1732,1
    - Dst: special_hybrid_folding
      Src: /src/opus/celt/bands.c:1741,1
    - Dst: IMAX
      Src: /src/opus/celt/bands.c:1767,1
    - Dst: HALF32
      Src: /src/opus/celt/bands.c:1795,1
    - Dst: quant_band
      Src: /src/opus/celt/bands.c:1799,1
    - Dst: ARG_QEXT
      Src: /src/opus/celt/bands.c:1801,1
    - Dst: quant_band
      Src: /src/opus/celt/bands.c:1802,1
    - Dst: ARG_QEXT
      Src: /src/opus/celt/bands.c:1804,1
    - Dst: compute_channel_weights
      Src: /src/opus/celt/bands.c:1822,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/bands.c:1830,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/bands.c:1831,1
    - Dst: quant_band_stereo
      Src: /src/opus/celt/bands.c:1834,1
    - Dst: ARG_QEXT
      Src: /src/opus/celt/bands.c:1836,1
    - Dst: ARG_QEXT
      Src: /src/opus/celt/bands.c:1836,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/bands.c:1837,1
    - Dst: celt_inner_prod_norm_shift
      Src: /src/opus/celt/bands.c:1837,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/bands.c:1837,1
    - Dst: celt_inner_prod_norm_shift
      Src: /src/opus/celt/bands.c:1837,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/bands.c:1846,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/bands.c:1847,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/bands.c:1849,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/bands.c:1854,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/bands.c:1860,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/bands.c:1868,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/bands.c:1869,1
    - Dst: special_hybrid_folding
      Src: /src/opus/celt/bands.c:1872,1
    - Dst: quant_band_stereo
      Src: /src/opus/celt/bands.c:1876,1
    - Dst: ARG_QEXT
      Src: /src/opus/celt/bands.c:1878,1
    - Dst: ARG_QEXT
      Src: /src/opus/celt/bands.c:1878,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/bands.c:1879,1
    - Dst: celt_inner_prod_norm_shift
      Src: /src/opus/celt/bands.c:1879,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/bands.c:1879,1
    - Dst: celt_inner_prod_norm_shift
      Src: /src/opus/celt/bands.c:1879,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/bands.c:1887,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/bands.c:1888,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/bands.c:1890,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/bands.c:1891,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/bands.c:1893,1
    - Dst: quant_band_stereo
      Src: /src/opus/celt/bands.c:1898,1
    - Dst: ARG_QEXT
      Src: /src/opus/celt/bands.c:1900,1
    - Dst: ARG_QEXT
      Src: /src/opus/celt/bands.c:1900,1
    - Dst: quant_band
      Src: /src/opus/celt/bands.c:1903,1
    - Dst: ARG_QEXT
      Src: /src/opus/celt/bands.c:1905,1
    CyclomaticComplexity: 54
    EdgeCount: 54
    ICount: 198
    argCount: 23
    argNames:
    - encode
    - m
    - start
    - end
    - X_
    - Y_
    - collapse_masks
    - bandE
    - pulses
    - shortBlocks
    - spread
    - dual_stereo
    - intensity
    - tf_res
    - total_bits
    - balance
    - ec
    - LM
    - codedBands
    - seed
    - complexity
    - arch
    - ARG_QEXT
    argTypes:
    - int
    - CELTMode*
    - int
    - int
    - celt_norm*
    - celt_norm*
    - unsigned char*
    - celt_ener*
    - int*
    - int
    - int
    - int
    - int
    - int*
    - opus_int32
    - opus_int32
    - ec_ctx*
    - int
    - int
    - opus_uint32*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1922
      start: 1589
    functionDepth: 8
    functionLinenumber: 1589
    functionLinenumberEnd: 1922
    functionName: quant_all_bands
    functionSourceFile: /src/opus/celt/bands.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - celt_inner_prod_norm_shift
    - IMIN
    - quant_band
    - OPUS_COPY
    - ec_tell_frac
    - ARG_QEXT
    - MULT16_32_Q15
    - VARDECL
    - ALLOC
    - HALF32
    - special_hybrid_folding
    - celt_sudiv
    - IMAX
    - compute_channel_weights
    - quant_band_stereo
    linkageType: ''
    returnType: void
    signature: "void quant_all_bands(int encode, const CELTMode *m, int start, int
      end,\n      celt_norm *X_, celt_norm *Y_, unsigned char *collapse_masks,\n      const
      celt_ener *bandE, int *pulses, int shortBlocks, int spread,\n      int dual_stereo,
      int intensity, int *tf_res, opus_int32 total_bits,\n      opus_int32 balance,
      ec_ctx *ec, int LM, int codedBands,\n      opus_uint32 *seed, int complexity,
      int arch, int disable_inv\n      ARG_QEXT(ec_ctx *ext_ec) ARG_QEXT(int *extra_pulses)\n
      \     ARG_QEXT(opus_int32 ext_total_bits) ARG_QEXT(const int *cap))"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/opus/celt/os_support.h:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - size
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 49
    functionName: opus_alloc
    functionSourceFile: /src/opus/celt/os_support.h
    functionUses: 21
    functionsReached:
    - malloc
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE *opus_alloc (size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: realloc
      Src: /src/opus/celt/os_support.h:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ptr
    - size
    argTypes:
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionName: opus_realloc
    functionSourceFile: /src/opus/celt/os_support.h
    functionUses: 4
    functionsReached:
    - realloc
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE *opus_realloc (void *ptr, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_alloc
      Src: /src/opus/celt/os_support.h:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - size
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 66
    functionName: opus_alloc_scratch
    functionSourceFile: /src/opus/celt/os_support.h
    functionUses: 0
    functionsReached:
    - opus_alloc
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE *opus_alloc_scratch (size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: free
      Src: /src/opus/celt/os_support.h:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionName: opus_free
    functionSourceFile: /src/opus/celt/os_support.h
    functionUses: 38
    functionsReached:
    - free
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE opus_free (void *ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - dst
    - ','
    - src
    - ','
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 80
    functionName: OPUS_COPY
    functionSourceFile: /src/opus/celt/os_support.h
    functionUses: 61
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_COPY(dst, src, n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - dst
    - ','
    - src
    - ','
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 86
    functionName: OPUS_MOVE
    functionSourceFile: /src/opus/celt/os_support.h
    functionUses: 14
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_MOVE(dst, src, n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - dst
    - ','
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 91
    functionName: OPUS_CLEAR
    functionSourceFile: /src/opus/celt/os_support.h
    functionUses: 64
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_CLEAR(dst, n)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/celt/pitch.h:69,1
    - Dst: MAC16_16
      Src: /src/opus/celt/pitch.h:79,1
    - Dst: MAC16_16
      Src: /src/opus/celt/pitch.h:80,1
    - Dst: MAC16_16
      Src: /src/opus/celt/pitch.h:81,1
    - Dst: MAC16_16
      Src: /src/opus/celt/pitch.h:82,1
    - Dst: MAC16_16
      Src: /src/opus/celt/pitch.h:85,1
    - Dst: MAC16_16
      Src: /src/opus/celt/pitch.h:86,1
    - Dst: MAC16_16
      Src: /src/opus/celt/pitch.h:87,1
    - Dst: MAC16_16
      Src: /src/opus/celt/pitch.h:88,1
    - Dst: MAC16_16
      Src: /src/opus/celt/pitch.h:91,1
    - Dst: MAC16_16
      Src: /src/opus/celt/pitch.h:92,1
    - Dst: MAC16_16
      Src: /src/opus/celt/pitch.h:93,1
    - Dst: MAC16_16
      Src: /src/opus/celt/pitch.h:94,1
    - Dst: MAC16_16
      Src: /src/opus/celt/pitch.h:97,1
    - Dst: MAC16_16
      Src: /src/opus/celt/pitch.h:98,1
    - Dst: MAC16_16
      Src: /src/opus/celt/pitch.h:99,1
    - Dst: MAC16_16
      Src: /src/opus/celt/pitch.h:100,1
    - Dst: MAC16_16
      Src: /src/opus/celt/pitch.h:106,1
    - Dst: MAC16_16
      Src: /src/opus/celt/pitch.h:107,1
    - Dst: MAC16_16
      Src: /src/opus/celt/pitch.h:108,1
    - Dst: MAC16_16
      Src: /src/opus/celt/pitch.h:109,1
    - Dst: MAC16_16
      Src: /src/opus/celt/pitch.h:115,1
    - Dst: MAC16_16
      Src: /src/opus/celt/pitch.h:116,1
    - Dst: MAC16_16
      Src: /src/opus/celt/pitch.h:117,1
    - Dst: MAC16_16
      Src: /src/opus/celt/pitch.h:118,1
    - Dst: MAC16_16
      Src: /src/opus/celt/pitch.h:124,1
    - Dst: MAC16_16
      Src: /src/opus/celt/pitch.h:125,1
    - Dst: MAC16_16
      Src: /src/opus/celt/pitch.h:126,1
    - Dst: MAC16_16
      Src: /src/opus/celt/pitch.h:127,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 53
    argCount: 4
    argNames:
    - x
    - y
    - sum
    - len
    argTypes:
    - opus_val16*
    - opus_val16*
    - opus_val32[]
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 129
    functionName: xcorr_kernel_c
    functionSourceFile: /src/opus/celt/pitch.h
    functionUses: 0
    functionsReached:
    - celt_assert
    - MAC16_16
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE xcorr_kernel_c(const opus_val16 * x, const opus_val16 *
      y, opus_val32 sum[4], int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - x
    - ','
    - y
    - ','
    - sum
    - ','
    - len
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 134
    functionName: xcorr_kernel
    functionSourceFile: /src/opus/celt/pitch.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xcorr_kernel(x, y, sum, len, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MAC16_16
      Src: /src/opus/celt/pitch.h:145,1
    - Dst: MAC16_16
      Src: /src/opus/celt/pitch.h:146,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 6
    argNames:
    - x
    - y01
    - y02
    - N
    - xy1
    - xy2
    argTypes:
    - opus_val16*
    - opus_val16*
    - opus_val16*
    - int
    - opus_val32*
    - opus_val32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 150
    functionName: dual_inner_prod_c
    functionSourceFile: /src/opus/celt/pitch.h
    functionUses: 0
    functionsReached:
    - MAC16_16
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE dual_inner_prod_c(const opus_val16 *x, const opus_val16
      *y01, const opus_val16 *y02,\n      int N, opus_val32 *xy1, opus_val32 *xy2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 15
    argNames:
    - (
    - x
    - ','
    - y01
    - ','
    - y02
    - ','
    - N
    - ','
    - xy1
    - ','
    - xy2
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 155
    functionName: dual_inner_prod
    functionSourceFile: /src/opus/celt/pitch.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: dual_inner_prod(x, y01, y02, N, xy1, xy2, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MAC16_16
      Src: /src/opus/celt/pitch.h:165,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - x
    - y
    - N
    argTypes:
    - opus_val16*
    - opus_val16*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 167
    functionName: celt_inner_prod_c
    functionSourceFile: /src/opus/celt/pitch.h
    functionUses: 0
    functionsReached:
    - MAC16_16
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE celt_inner_prod_c(const opus_val16 *x,\n      const opus_val16
      *y, int N)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - x
    - ','
    - y
    - ','
    - N
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 172
    functionName: celt_inner_prod
    functionSourceFile: /src/opus/celt/pitch.h
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_inner_prod(x, y, N, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 17
    argNames:
    - (
    - y
    - ','
    - x
    - ','
    - T
    - ','
    - N
    - ','
    - g10
    - ','
    - g11
    - ','
    - g12
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 200
    functionName: comb_filter_const
    functionSourceFile: /src/opus/celt/pitch.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: comb_filter_const(y, x, T, N, g10, g11, g12, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _a
    - ','
    - _b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 47
    functionName: EC_MINI
    functionSourceFile: /src/opus/celt/ecintrin.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EC_MINI(_a,_b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _BitScanReverse
      Src: /src/opus/celt/ecintrin.h:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - _x
    argTypes:
    - unsigned long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 64
    functionName: ec_bsr
    functionSourceFile: /src/opus/celt/ecintrin.h
    functionUses: 0
    functionsReached:
    - _BitScanReverse
    linkageType: ''
    returnType: int
    signature: int ec_bsr(unsigned long _x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 67
    functionName: EC_CLZ
    functionSourceFile: /src/opus/celt/ecintrin.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EC_CLZ(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 71
    functionName: EC_CLZ
    functionSourceFile: /src/opus/celt/ecintrin.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EC_CLZ(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 75
    functionName: EC_CLZ
    functionSourceFile: /src/opus/celt/ecintrin.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EC_CLZ(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 78
    functionName: EC_CLZ
    functionSourceFile: /src/opus/celt/ecintrin.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EC_CLZ(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 87
    functionName: EC_ILOG
    functionSourceFile: /src/opus/celt/ecintrin.h
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EC_ILOG(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - _x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 90
    functionName: EC_ILOG
    functionSourceFile: /src/opus/celt/ecintrin.h
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EC_ILOG(_x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - fs0
    - decay
    argTypes:
    - unsigned
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 49
    functionName: ec_laplace_get_freq1
    functionSourceFile: /src/opus/celt/laplace.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: unsigned
    signature: unsigned ec_laplace_get_freq1(unsigned fs0, int decay)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ec_laplace_get_freq1
      Src: /src/opus/celt/laplace.c:63,1
    - Dst: IMIN
      Src: /src/opus/celt/laplace.c:78,1
    - Dst: IMIN
      Src: /src/opus/celt/laplace.c:80,1
    - Dst: celt_assert
      Src: /src/opus/celt/laplace.c:88,1
    - Dst: celt_assert
      Src: /src/opus/celt/laplace.c:89,1
    - Dst: ec_encode_bin
      Src: /src/opus/celt/laplace.c:91,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 4
    argNames:
    - enc
    - value
    - fs
    - decay
    argTypes:
    - ec_enc*
    - int*
    - unsigned
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 92
    functionName: ec_laplace_encode
    functionSourceFile: /src/opus/celt/laplace.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - IMIN
    - ec_laplace_get_freq1
    - ec_encode_bin
    linkageType: ''
    returnType: void
    signature: void ec_laplace_encode(ec_enc *enc, int *value, unsigned fs, int decay)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ec_decode_bin
      Src: /src/opus/celt/laplace.c:99,1
    - Dst: ec_laplace_get_freq1
      Src: /src/opus/celt/laplace.c:105,1
    - Dst: celt_assert
      Src: /src/opus/celt/laplace.c:128,1
    - Dst: celt_assert
      Src: /src/opus/celt/laplace.c:129,1
    - Dst: celt_assert
      Src: /src/opus/celt/laplace.c:130,1
    - Dst: celt_assert
      Src: /src/opus/celt/laplace.c:131,1
    - Dst: IMIN
      Src: /src/opus/celt/laplace.c:131,1
    - Dst: ec_dec_update
      Src: /src/opus/celt/laplace.c:132,1
    - Dst: IMIN
      Src: /src/opus/celt/laplace.c:132,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 29
    argCount: 3
    argNames:
    - dec
    - fs
    - decay
    argTypes:
    - ec_dec*
    - unsigned
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 134
    functionName: ec_laplace_decode
    functionSourceFile: /src/opus/celt/laplace.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - IMIN
    - ec_laplace_get_freq1
    - ec_dec_update
    - ec_decode_bin
    linkageType: ''
    returnType: int
    signature: int ec_laplace_decode(ec_dec *dec, unsigned fs, int decay)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ec_enc_icdf16
      Src: /src/opus/celt/laplace.c:144,1
    - Dst: abs
      Src: /src/opus/celt/laplace.c:145,1
    - Dst: IMAX
      Src: /src/opus/celt/laplace.c:150,1
    - Dst: IMAX
      Src: /src/opus/celt/laplace.c:153,1
    - Dst: ec_enc_icdf16
      Src: /src/opus/celt/laplace.c:158,1
    - Dst: IMIN
      Src: /src/opus/celt/laplace.c:158,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 4
    argNames:
    - enc
    - value
    - p0
    - decay
    argTypes:
    - ec_enc*
    - int
    - opus_uint16
    - opus_uint16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 136
    functionDepth: 1
    functionLinenumber: 136
    functionLinenumberEnd: 162
    functionName: ec_laplace_encode_p0
    functionSourceFile: /src/opus/celt/laplace.c
    functionUses: 1
    functionsReached:
    - IMIN
    - abs
    - ec_enc_icdf16
    - IMAX
    linkageType: ''
    returnType: void
    signature: void ec_laplace_encode_p0(ec_enc *enc, int value, opus_uint16 p0, opus_uint16
      decay)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ec_dec_icdf16
      Src: /src/opus/celt/laplace.c:172,1
    - Dst: IMAX
      Src: /src/opus/celt/laplace.c:179,1
    - Dst: IMAX
      Src: /src/opus/celt/laplace.c:182,1
    - Dst: ec_dec_icdf16
      Src: /src/opus/celt/laplace.c:187,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 3
    argNames:
    - dec
    - p0
    - decay
    argTypes:
    - ec_dec*
    - opus_uint16
    - opus_uint16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 164
    functionDepth: 1
    functionLinenumber: 164
    functionLinenumberEnd: 192
    functionName: ec_laplace_decode_p0
    functionSourceFile: /src/opus/celt/laplace.c
    functionUses: 1
    functionsReached:
    - ec_dec_icdf16
    - IMAX
    linkageType: ''
    returnType: int
    signature: int ec_laplace_decode_p0(ec_dec *dec, opus_uint16 p0, opus_uint16 decay)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/opus/celt/laplace.c:212,1
    - Dst: ec_enc_init
      Src: /src/opus/celt/laplace.c:213,1
    - Dst: printf
      Src: /src/opus/celt/laplace.c:215,1
    - Dst: printf
      Src: /src/opus/celt/laplace.c:217,1
    - Dst: ec_laplace_encode_p0
      Src: /src/opus/celt/laplace.c:219,1
    - Dst: ec_enc_done
      Src: /src/opus/celt/laplace.c:222,1
    - Dst: ec_dec_init
      Src: /src/opus/celt/laplace.c:224,1
    - Dst: ec_get_buffer
      Src: /src/opus/celt/laplace.c:224,1
    - Dst: ec_range_bytes
      Src: /src/opus/celt/laplace.c:224,1
    - Dst: ec_laplace_decode_p0
      Src: /src/opus/celt/laplace.c:227,1
    - Dst: printf
      Src: /src/opus/celt/laplace.c:230,1
    - Dst: printf
      Src: /src/opus/celt/laplace.c:232,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 199
    functionDepth: 2
    functionLinenumber: 199
    functionLinenumberEnd: 233
    functionName: main
    functionSourceFile: /src/opus/celt/laplace.c
    functionUses: 0
    functionsReached:
    - ec_enc_init
    - ec_enc_done
    - ec_get_buffer
    - ec_dec_init
    - ec_laplace_encode_p0
    - malloc
    - ec_range_bytes
    - ec_laplace_decode_p0
    - printf
    linkageType: ''
    returnType: int
    signature: int main()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 17
    argNames:
    - (
    - _l
    - ','
    - _in
    - ','
    - _out
    - ','
    - _window
    - ','
    - _overlap
    - ','
    - _shift
    - ','
    - _stride
    - ','
    - _arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 89
    functionName: clt_mdct_forward
    functionSourceFile: /src/opus/celt/mdct.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: clt_mdct_forward(_l, _in, _out, _window, _overlap, _shift, _stride,
      _arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 17
    argNames:
    - (
    - _l
    - ','
    - _in
    - ','
    - _out
    - ','
    - _window
    - ','
    - _overlap
    - ','
    - _shift
    - ','
    - _stride
    - ','
    - _arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 99
    functionName: clt_mdct_backward
    functionSourceFile: /src/opus/celt/mdct.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: clt_mdct_backward(_l, _in, _out, _window, _overlap, _shift, _stride,
      _arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 17
    argNames:
    - (
    - _l
    - ','
    - _in
    - ','
    - _out
    - ','
    - _window
    - ','
    - _overlap
    - ','
    - _shift
    - ','
    - _stride
    - ','
    - _arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 104
    functionName: clt_mdct_forward
    functionSourceFile: /src/opus/celt/mdct.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: clt_mdct_forward(_l, _in, _out, _window, _overlap, _shift, _stride,
      _arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 17
    argNames:
    - (
    - _l
    - ','
    - _in
    - ','
    - _out
    - ','
    - _window
    - ','
    - _overlap
    - ','
    - _shift
    - ','
    - _stride
    - ','
    - _arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 107
    functionName: clt_mdct_backward
    functionSourceFile: /src/opus/celt/mdct.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: clt_mdct_backward(_l, _in, _out, _window, _overlap, _shift, _stride,
      _arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 16
    argCount: 1
    argNames:
    - _v
    argTypes:
    - opus_uint32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 62
    functionName: ec_ilog
    functionSourceFile: /src/opus/celt/entcode.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int ec_ilog(opus_uint32 _v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EC_ILOG
      Src: /src/opus/celt/entcode.c:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - _this
    argTypes:
    - ec_ctx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 84
    functionName: ec_tell_frac
    functionSourceFile: /src/opus/celt/entcode.c
    functionUses: 5
    functionsReached:
    - EC_ILOG
    linkageType: ''
    returnType: opus_uint32
    signature: opus_uint32 ec_tell_frac(ec_ctx *_this)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EC_ILOG
      Src: /src/opus/celt/entcode.c:104,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - _this
    argTypes:
    - ec_ctx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 114
    functionName: ec_tell_frac
    functionSourceFile: /src/opus/celt/entcode.c
    functionUses: 5
    functionsReached:
    - EC_ILOG
    linkageType: ''
    returnType: opus_uint32
    signature: opus_uint32 ec_tell_frac(ec_ctx *_this)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - _n
    - _k
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 72
    functionName: fits_in32
    functionSourceFile: /src/opus/celt/rate.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int fits_in32(int _n, int _k)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: opus_alloc
      Src: /src/opus/celt/rate.c:88,1
    - Dst: fits_in32
      Src: /src/opus/celt/rate.c:117,1
    - Dst: get_pulses
      Src: /src/opus/celt/rate.c:117,1
    - Dst: opus_alloc
      Src: /src/opus/celt/rate.c:128,1
    - Dst: get_required_bits
      Src: /src/opus/celt/rate.c:136,1
    - Dst: get_pulses
      Src: /src/opus/celt/rate.c:136,1
    - Dst: get_pulses
      Src: /src/opus/celt/rate.c:138,1
    - Dst: opus_alloc
      Src: /src/opus/celt/rate.c:144,1
    - Dst: IMIN
      Src: /src/opus/celt/rate.c:179,1
    - Dst: IMIN
      Src: /src/opus/celt/rate.c:200,1
    - Dst: celt_assert
      Src: /src/opus/celt/rate.c:201,1
    - Dst: IMIN
      Src: /src/opus/celt/rate.c:215,1
    - Dst: celt_assert
      Src: /src/opus/celt/rate.c:216,1
    - Dst: IMIN
      Src: /src/opus/celt/rate.c:232,1
    - Dst: celt_assert
      Src: /src/opus/celt/rate.c:233,1
    - Dst: celt_assert
      Src: /src/opus/celt/rate.c:237,1
    - Dst: celt_assert
      Src: /src/opus/celt/rate.c:238,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 92
    argCount: 2
    argNames:
    - m
    - LM
    argTypes:
    - CELTMode*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 74
    functionDepth: 1
    functionLinenumber: 74
    functionLinenumberEnd: 243
    functionName: compute_pulse_cache
    functionSourceFile: /src/opus/celt/rate.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - IMIN
    - fits_in32
    - get_required_bits
    - get_pulses
    - opus_alloc
    linkageType: ''
    returnType: void
    signature: void compute_pulse_cache(CELTMode *m, int LM)
  - BBCount: 26
    BranchProfiles: []
    Callsites:
    - Dst: IMIN
      Src: /src/opus/celt/rate.c:284,1
    - Dst: IMIN
      Src: /src/opus/celt/rate.c:310,1
    - Dst: celt_udiv
      Src: /src/opus/celt/rate.c:337,1
    - Dst: IMAX
      Src: /src/opus/celt/rate.c:339,1
    - Dst: IMAX
      Src: /src/opus/celt/rate.c:345,1
    - Dst: rand
      Src: /src/opus/celt/rate.c:362,1
    - Dst: ec_enc_bit_logp
      Src: /src/opus/celt/rate.c:367,1
    - Dst: ec_enc_bit_logp
      Src: /src/opus/celt/rate.c:370,1
    - Dst: ec_dec_bit_logp
      Src: /src/opus/celt/rate.c:371,1
    - Dst: celt_assert
      Src: /src/opus/celt/rate.c:394,1
    - Dst: IMIN
      Src: /src/opus/celt/rate.c:400,1
    - Dst: ec_enc_uint
      Src: /src/opus/celt/rate.c:401,1
    - Dst: ec_dec_uint
      Src: /src/opus/celt/rate.c:404,1
    - Dst: ec_enc_bit_logp
      Src: /src/opus/celt/rate.c:416,1
    - Dst: ec_dec_bit_logp
      Src: /src/opus/celt/rate.c:418,1
    - Dst: celt_udiv
      Src: /src/opus/celt/rate.c:425,1
    - Dst: IMIN
      Src: /src/opus/celt/rate.c:431,1
    - Dst: celt_assert
      Src: /src/opus/celt/rate.c:445,1
    - Dst: MAX32
      Src: /src/opus/celt/rate.c:452,1
    - Dst: IMAX
      Src: /src/opus/celt/rate.c:476,1
    - Dst: celt_udiv
      Src: /src/opus/celt/rate.c:477,1
    - Dst: IMIN
      Src: /src/opus/celt/rate.c:484,1
    - Dst: MAX32
      Src: /src/opus/celt/rate.c:495,1
    - Dst: IMIN
      Src: /src/opus/celt/rate.c:508,1
    - Dst: celt_assert
      Src: /src/opus/celt/rate.c:516,1
    - Dst: celt_assert
      Src: /src/opus/celt/rate.c:517,1
    - Dst: celt_assert
      Src: /src/opus/celt/rate.c:527,1
    CyclomaticComplexity: 43
    EdgeCount: 43
    ICount: 159
    argCount: 24
    argNames:
    - m
    - start
    - end
    - skip_start
    - bits1
    - bits2
    - thresh
    - cap
    - total
    - _balance
    - skip_rsv
    - intensity
    - intensity_rsv
    - dual_stereo
    - dual_stereo_rsv
    - bits
    - ebits
    - fine_priority
    - C
    - LM
    - ec
    - encode
    - prev
    - signalBandwidth
    argTypes:
    - CELTMode*
    - int
    - int
    - int
    - int*
    - int*
    - int*
    - int*
    - opus_int32
    - opus_int32*
    - int
    - int*
    - int
    - int*
    - int
    - int*
    - int*
    - int*
    - int
    - int
    - ec_ctx*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 533
      start: 249
    functionDepth: 1
    functionLinenumber: 249
    functionLinenumberEnd: 533
    functionName: interp_bits2pulses
    functionSourceFile: /src/opus/celt/rate.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - rand
    - IMIN
    - ec_enc_uint
    - ec_dec_uint
    - ec_dec_bit_logp
    - ec_enc_bit_logp
    - MAX32
    - celt_udiv
    - IMAX
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE interp_bits2pulses(const CELTMode *m, int start, int end,
      int skip_start,\n      const int *bits1, const int *bits2, const int *thresh,
      const int *cap, opus_int32 total, opus_int32 *_balance,\n      int skip_rsv,
      int *intensity, int intensity_rsv, int *dual_stereo, int dual_stereo_rsv, int
      *bits,\n      int *ebits, int *fine_priority, int C, int LM, ec_ctx *ec, int
      encode, int prev, int signalBandwidth)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: IMAX
      Src: /src/opus/celt/rate.c:550,1
    - Dst: IMAX
      Src: /src/opus/celt/rate.c:578,1
    - Dst: IMAX
      Src: /src/opus/celt/rate.c:600,1
    - Dst: IMIN
      Src: /src/opus/celt/rate.c:606,1
    - Dst: IMAX
      Src: /src/opus/celt/rate.c:629,1
    - Dst: IMAX
      Src: /src/opus/celt/rate.c:631,1
    - Dst: IMAX
      Src: /src/opus/celt/rate.c:637,1
    - Dst: interp_bits2pulses
      Src: /src/opus/celt/rate.c:641,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 71
    argCount: 19
    argNames:
    - m
    - start
    - end
    - offsets
    - cap
    - alloc_trim
    - intensity
    - dual_stereo
    - total
    - balance
    - pulses
    - ebits
    - fine_priority
    - C
    - LM
    - ec
    - encode
    - prev
    - signalBandwidth
    argTypes:
    - CELTMode*
    - int
    - int
    - int*
    - int*
    - int
    - int*
    - int*
    - opus_int32
    - opus_int32*
    - int*
    - int*
    - int*
    - int
    - int
    - ec_ctx*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 646
      start: 535
    functionDepth: 2
    functionLinenumber: 535
    functionLinenumberEnd: 646
    functionName: clt_compute_allocation
    functionSourceFile: /src/opus/celt/rate.c
    functionUses: 0
    functionsReached:
    - interp_bits2pulses
    - IMIN
    - IMAX
    linkageType: ''
    returnType: int
    signature: "int clt_compute_allocation(const CELTMode *m, int start, int end,
      const int *offsets, const int *cap, int alloc_trim, int *intensity, int *dual_stereo,\n
      \     opus_int32 total, opus_int32 *balance, int *pulses, int *ebits, int *fine_priority,
      int C, int LM, ec_ctx *ec, int encode, int prev, int signalBandwidth)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: ec_enc_icdf
      Src: /src/opus/celt/rate.c:659,1
    - Dst: IMIN
      Src: /src/opus/celt/rate.c:659,1
    - Dst: ec_enc_icdf
      Src: /src/opus/celt/rate.c:661,1
    - Dst: IMIN
      Src: /src/opus/celt/rate.c:661,1
    - Dst: ec_enc_icdf
      Src: /src/opus/celt/rate.c:663,1
    - Dst: ec_enc_uint
      Src: /src/opus/celt/rate.c:666,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 4
    argNames:
    - enc
    - depth
    - cap
    - last
    argTypes:
    - ec_enc*
    - opus_int32
    - opus_int32
    - opus_int32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 668
      start: 653
    functionDepth: 1
    functionLinenumber: 653
    functionLinenumberEnd: 668
    functionName: ec_enc_depth
    functionSourceFile: /src/opus/celt/rate.c
    functionUses: 0
    functionsReached:
    - ec_enc_icdf
    - IMIN
    - ec_enc_uint
    linkageType: ''
    returnType: void
    signature: void ec_enc_depth(ec_enc *enc, opus_int32 depth, opus_int32 cap, opus_int32
      *last)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: ec_dec_icdf
      Src: /src/opus/celt/rate.c:673,1
    - Dst: ec_dec_icdf
      Src: /src/opus/celt/rate.c:676,1
    - Dst: ec_dec_icdf
      Src: /src/opus/celt/rate.c:679,1
    - Dst: ec_dec_uint
      Src: /src/opus/celt/rate.c:684,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 3
    argNames:
    - dec
    - cap
    - last
    argTypes:
    - ec_dec*
    - opus_int32
    - opus_int32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 687
      start: 670
    functionDepth: 1
    functionLinenumber: 670
    functionLinenumberEnd: 687
    functionName: ec_dec_depth
    functionSourceFile: /src/opus/celt/rate.c
    functionUses: 0
    functionsReached:
    - ec_dec_uint
    - ec_dec_icdf
    linkageType: ''
    returnType: int
    signature: int ec_dec_depth(ec_dec *dec, opus_int32 cap, opus_int32 *last)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 690
      start: 689
    functionDepth: 0
    functionLinenumber: 689
    functionLinenumberEnd: 690
    functionName: MSWAP16
    functionSourceFile: /src/opus/celt/rate.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MSWAP16(a,b)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: MSWAP16
      Src: /src/opus/celt/rate.c:712,1
    - Dst: MSWAP16
      Src: /src/opus/celt/rate.c:713,1
    - Dst: MIN16
      Src: /src/opus/celt/rate.c:718,1
    - Dst: MIN16
      Src: /src/opus/celt/rate.c:720,1
    - Dst: MIN16
      Src: /src/opus/celt/rate.c:723,1
    - Dst: MIN16
      Src: /src/opus/celt/rate.c:725,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 29
    argCount: 1
    argNames:
    - x
    argTypes:
    - opus_val16*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 727
      start: 690
    functionDepth: 1
    functionLinenumber: 690
    functionLinenumberEnd: 727
    functionName: median_of_5_val16
    functionSourceFile: /src/opus/celt/rate.c
    functionUses: 0
    functionsReached:
    - MIN16
    - MSWAP16
    linkageType: ''
    returnType: opus_val16
    signature: opus_val16 median_of_5_val16(const opus_val16 *x)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/celt/rate.c:740,1
    - Dst: log
      Src: /src/opus/celt/rate.c:746,1
    - Dst: rand
      Src: /src/opus/celt/rate.c:746,1
    - Dst: FMAX
      Src: /src/opus/celt/rate.c:747,1
    - Dst: FMIN
      Src: /src/opus/celt/rate.c:747,1
    - Dst: celt_assert
      Src: /src/opus/celt/rate.c:750,1
    - Dst: ALLOC
      Src: /src/opus/celt/rate.c:757,1
    - Dst: VARDECL
      Src: /src/opus/celt/rate.c:771,1
    - Dst: VARDECL
      Src: /src/opus/celt/rate.c:773,1
    - Dst: VARDECL
      Src: /src/opus/celt/rate.c:774,1
    - Dst: ALLOC
      Src: /src/opus/celt/rate.c:776,1
    - Dst: ALLOC
      Src: /src/opus/celt/rate.c:777,1
    - Dst: PSHR32
      Src: /src/opus/celt/rate.c:784,1
    - Dst: GCONST
      Src: /src/opus/celt/rate.c:784,1
    - Dst: SHL32
      Src: /src/opus/celt/rate.c:784,1
    - Dst: GCONST
      Src: /src/opus/celt/rate.c:784,1
    - Dst: MAXG
      Src: /src/opus/celt/rate.c:789,1
    - Dst: PSHR32
      Src: /src/opus/celt/rate.c:789,1
    - Dst: GCONST
      Src: /src/opus/celt/rate.c:789,1
    - Dst: SHL32
      Src: /src/opus/celt/rate.c:789,1
    - Dst: GCONST
      Src: /src/opus/celt/rate.c:789,1
    - Dst: QCONST16
      Src: /src/opus/celt/rate.c:792,1
    - Dst: QCONST32
      Src: /src/opus/celt/rate.c:796,1
    - Dst: QCONST16
      Src: /src/opus/celt/rate.c:797,1
    - Dst: PSHR32
      Src: /src/opus/celt/rate.c:803,1
    - Dst: GCONST
      Src: /src/opus/celt/rate.c:803,1
    - Dst: SHL32
      Src: /src/opus/celt/rate.c:803,1
    - Dst: GCONST
      Src: /src/opus/celt/rate.c:803,1
    - Dst: MAXG
      Src: /src/opus/celt/rate.c:807,1
    - Dst: PSHR32
      Src: /src/opus/celt/rate.c:807,1
    - Dst: GCONST
      Src: /src/opus/celt/rate.c:807,1
    - Dst: SHL32
      Src: /src/opus/celt/rate.c:807,1
    - Dst: GCONST
      Src: /src/opus/celt/rate.c:807,1
    - Dst: ALLOC
      Src: /src/opus/celt/rate.c:811,1
    - Dst: median_of_5_val16
      Src: /src/opus/celt/rate.c:813,1
    - Dst: MAX16
      Src: /src/opus/celt/rate.c:818,1
    - Dst: QCONST16
      Src: /src/opus/celt/rate.c:818,1
    - Dst: MAX16
      Src: /src/opus/celt/rate.c:821,1
    - Dst: QCONST16
      Src: /src/opus/celt/rate.c:821,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/rate.c:823,1
    - Dst: PSHR32
      Src: /src/opus/celt/rate.c:823,1
    - Dst: QCONST16
      Src: /src/opus/celt/rate.c:825,1
    - Dst: QCONST16
      Src: /src/opus/celt/rate.c:825,1
    - Dst: MULT16_16
      Src: /src/opus/celt/rate.c:830,1
    - Dst: SHL32
      Src: /src/opus/celt/rate.c:833,1
    - Dst: MIN32
      Src: /src/opus/celt/rate.c:838,1
    - Dst: SHL32
      Src: /src/opus/celt/rate.c:838,1
    - Dst: MAX32
      Src: /src/opus/celt/rate.c:838,1
    - Dst: SHL32
      Src: /src/opus/celt/rate.c:839,1
    - Dst: PSHR32
      Src: /src/opus/celt/rate.c:843,1
    - Dst: MIN32
      Src: /src/opus/celt/rate.c:843,1
    - Dst: SHL32
      Src: /src/opus/celt/rate.c:843,1
    - Dst: MAX32
      Src: /src/opus/celt/rate.c:843,1
    - Dst: floor
      Src: /src/opus/celt/rate.c:845,1
    - Dst: MIN32
      Src: /src/opus/celt/rate.c:845,1
    - Dst: SHL32
      Src: /src/opus/celt/rate.c:845,1
    - Dst: MAX32
      Src: /src/opus/celt/rate.c:845,1
    - Dst: log
      Src: /src/opus/celt/rate.c:848,1
    - Dst: rand
      Src: /src/opus/celt/rate.c:848,1
    - Dst: IMAX
      Src: /src/opus/celt/rate.c:849,1
    - Dst: IMIN
      Src: /src/opus/celt/rate.c:849,1
    - Dst: ec_tell_frac
      Src: /src/opus/celt/rate.c:851,1
    - Dst: ec_enc_depth
      Src: /src/opus/celt/rate.c:852,1
    - Dst: ec_tell_frac
      Src: /src/opus/celt/rate.c:858,1
    - Dst: ec_dec_depth
      Src: /src/opus/celt/rate.c:859,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 123
    argCount: 16
    argNames:
    - m
    - qext_mode
    - start
    - end
    - qext_end
    - bandLogE
    - qext_bandLogE
    - total
    - extra_pulses
    - extra_equant
    - C
    - LM
    - ec
    - encode
    - tone_freq
    - toneishness
    argTypes:
    - CELTMode*
    - CELTMode*
    - int
    - int
    - int
    - celt_glog*
    - celt_glog*
    - opus_int32
    - int*
    - int*
    - int
    - int
    - ec_ctx*
    - int
    - opus_val16
    - opus_val32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 875
      start: 729
    functionDepth: 2
    functionLinenumber: 729
    functionLinenumberEnd: 875
    functionName: clt_compute_extra_allocation
    functionSourceFile: /src/opus/celt/rate.c
    functionUses: 0
    functionsReached:
    - SHL32
    - log
    - PSHR32
    - QCONST32
    - FMIN
    - MULT16_16_Q15
    - floor
    - VARDECL
    - ALLOC
    - QCONST16
    - MAX16
    - celt_assert
    - rand
    - FMAX
    - MAX32
    - IMAX
    - median_of_5_val16
    - IMIN
    - MIN32
    - MAXG
    - MULT16_16
    - GCONST
    - ec_tell_frac
    - ec_dec_depth
    - ec_enc_depth
    linkageType: ''
    returnType: void
    signature: "void clt_compute_extra_allocation(const CELTMode *m, const CELTMode
      *qext_mode, int start, int end, int qext_end, const celt_glog *bandLogE, const
      celt_glog *qext_bandLogE,\n      opus_int32 total, int *extra_pulses, int *extra_equant,
      int C, int LM, ec_ctx *ec, int encode, opus_val16 tone_freq, opus_val32 toneishness)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/celt/opus_custom_demo.c:49,1
    - Dst: fprintf
      Src: /src/opus/celt/opus_custom_demo.c:50,1
    - Dst: fprintf
      Src: /src/opus/celt/opus_custom_demo.c:51,1
    - Dst: fprintf
      Src: /src/opus/celt/opus_custom_demo.c:52,1
    - Dst: opus_get_version_string
      Src: /src/opus/celt/opus_custom_demo.c:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - file
    - line
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 54
    functionName: _opus_ctl_failed
    functionSourceFile: /src/opus/celt/opus_custom_demo.c
    functionUses: 0
    functionsReached:
    - opus_get_version_string
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE _opus_ctl_failed(const char *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 57
    functionName: opus_ctl_failed
    functionSourceFile: /src/opus/celt/opus_custom_demo.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: opus_ctl_failed()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/celt/opus_custom_demo.c:59,1
    - Dst: fprintf
      Src: /src/opus/celt/opus_custom_demo.c:62,1
    - Dst: fprintf
      Src: /src/opus/celt/opus_custom_demo.c:63,1
    - Dst: fprintf
      Src: /src/opus/celt/opus_custom_demo.c:64,1
    - Dst: fprintf
      Src: /src/opus/celt/opus_custom_demo.c:65,1
    - Dst: fprintf
      Src: /src/opus/celt/opus_custom_demo.c:66,1
    - Dst: fprintf
      Src: /src/opus/celt/opus_custom_demo.c:67,1
    - Dst: fprintf
      Src: /src/opus/celt/opus_custom_demo.c:68,1
    - Dst: fprintf
      Src: /src/opus/celt/opus_custom_demo.c:69,1
    - Dst: fprintf
      Src: /src/opus/celt/opus_custom_demo.c:70,1
    - Dst: fprintf
      Src: /src/opus/celt/opus_custom_demo.c:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 1
    argNames:
    - argv
    argTypes:
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 74
    functionName: print_usage
    functionSourceFile: /src/opus/celt/opus_custom_demo.c
    functionUses: 2
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void print_usage(char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - i
    - ch
    argTypes:
    - opus_uint32
    - unsigned char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 82
    functionName: int_to_char
    functionSourceFile: /src/opus/celt/opus_custom_demo.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void int_to_char(opus_uint32 i, unsigned char ch[4])
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ch
    argTypes:
    - unsigned char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 88
    functionName: char_to_int
    functionSourceFile: /src/opus/celt/opus_custom_demo.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: opus_uint32
    signature: opus_uint32 char_to_int(unsigned char ch[4])
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - decode_only
    - ','
    - opt
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 91
    functionName: check_encoder_option
    functionSourceFile: /src/opus/celt/opus_custom_demo.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: check_encoder_option(decode_only, opt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - encode_only
    - ','
    - opt
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 92
    functionName: check_decoder_option
    functionSourceFile: /src/opus/celt/opus_custom_demo.c
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: check_decoder_option(encode_only, opt)
  - BBCount: 69
    BranchProfiles: []
    Callsites:
    - Dst: print_usage
      Src: /src/opus/celt/opus_custom_demo.c:139,1
    - Dst: strcmp
      Src: /src/opus/celt/opus_custom_demo.c:142,1
    - Dst: strcmp
      Src: /src/opus/celt/opus_custom_demo.c:146,1
    - Dst: atol
      Src: /src/opus/celt/opus_custom_demo.c:152,1
    - Dst: fprintf
      Src: /src/opus/celt/opus_custom_demo.c:163,1
    - Dst: atoi
      Src: /src/opus/celt/opus_custom_demo.c:172,1
    - Dst: fprintf
      Src: /src/opus/celt/opus_custom_demo.c:177,1
    - Dst: atoi
      Src: /src/opus/celt/opus_custom_demo.c:181,1
    - Dst: atol
      Src: /src/opus/celt/opus_custom_demo.c:186,1
    - Dst: fprintf
      Src: /src/opus/celt/opus_custom_demo.c:190,1
    - Dst: opus_custom_mode_create
      Src: /src/opus/celt/opus_custom_demo.c:196,1
    - Dst: fprintf
      Src: /src/opus/celt/opus_custom_demo.c:199,1
    - Dst: strcmp
      Src: /src/opus/celt/opus_custom_demo.c:204,1
    - Dst: check_encoder_option
      Src: /src/opus/celt/opus_custom_demo.c:205,1
    - Dst: atoi
      Src: /src/opus/celt/opus_custom_demo.c:207,1
    - Dst: strcmp
      Src: /src/opus/celt/opus_custom_demo.c:209,1
    - Dst: atof
      Src: /src/opus/celt/opus_custom_demo.c:211,1
    - Dst: strcmp
      Src: /src/opus/celt/opus_custom_demo.c:213,1
    - Dst: strcmp
      Src: /src/opus/celt/opus_custom_demo.c:216,1
    - Dst: strcmp
      Src: /src/opus/celt/opus_custom_demo.c:219,1
    - Dst: strcmp
      Src: /src/opus/celt/opus_custom_demo.c:223,1
    - Dst: printf
      Src: /src/opus/celt/opus_custom_demo.c:228,1
    - Dst: print_usage
      Src: /src/opus/celt/opus_custom_demo.c:229,1
    - Dst: opus_custom_encoder_create
      Src: /src/opus/celt/opus_custom_demo.c:234,1
    - Dst: fprintf
      Src: /src/opus/celt/opus_custom_demo.c:237,1
    - Dst: opus_strerror
      Src: /src/opus/celt/opus_custom_demo.c:237,1
    - Dst: opus_custom_encoder_ctl
      Src: /src/opus/celt/opus_custom_demo.c:242,1
    - Dst: OPUS_SET_COMPLEXITY
      Src: /src/opus/celt/opus_custom_demo.c:243,1
    - Dst: opus_ctl_failed
      Src: /src/opus/celt/opus_custom_demo.c:244,1
    - Dst: opus_custom_encoder_ctl
      Src: /src/opus/celt/opus_custom_demo.c:249,1
    - Dst: OPUS_SET_PACKET_LOSS_PERC
      Src: /src/opus/celt/opus_custom_demo.c:250,1
    - Dst: opus_ctl_failed
      Src: /src/opus/celt/opus_custom_demo.c:252,1
    - Dst: opus_custom_encoder_ctl
      Src: /src/opus/celt/opus_custom_demo.c:257,1
    - Dst: OPUS_SET_QEXT
      Src: /src/opus/celt/opus_custom_demo.c:257,1
    - Dst: opus_ctl_failed
      Src: /src/opus/celt/opus_custom_demo.c:258,1
    - Dst: opus_custom_decoder_create
      Src: /src/opus/celt/opus_custom_demo.c:264,1
    - Dst: fprintf
      Src: /src/opus/celt/opus_custom_demo.c:267,1
    - Dst: opus_strerror
      Src: /src/opus/celt/opus_custom_demo.c:267,1
    - Dst: opus_custom_decoder_ctl
      Src: /src/opus/celt/opus_custom_demo.c:270,1
    - Dst: OPUS_GET_LOOKAHEAD
      Src: /src/opus/celt/opus_custom_demo.c:270,1
    - Dst: opus_ctl_failed
      Src: /src/opus/celt/opus_custom_demo.c:271,1
    - Dst: print_usage
      Src: /src/opus/celt/opus_custom_demo.c:277,1
    - Dst: fopen
      Src: /src/opus/celt/opus_custom_demo.c:281,1
    - Dst: fprintf
      Src: /src/opus/celt/opus_custom_demo.c:284,1
    - Dst: fopen
      Src: /src/opus/celt/opus_custom_demo.c:288,1
    - Dst: fprintf
      Src: /src/opus/celt/opus_custom_demo.c:291,1
    - Dst: malloc
      Src: /src/opus/celt/opus_custom_demo.c:294,1
    - Dst: malloc
      Src: /src/opus/celt/opus_custom_demo.c:295,1
    - Dst: malloc
      Src: /src/opus/celt/opus_custom_demo.c:296,1
    - Dst: feof
      Src: /src/opus/celt/opus_custom_demo.c:298,1
    - Dst: fread
      Src: /src/opus/celt/opus_custom_demo.c:304,1
    - Dst: char_to_int
      Src: /src/opus/celt/opus_custom_demo.c:307,1
    - Dst: fprintf
      Src: /src/opus/celt/opus_custom_demo.c:310,1
    - Dst: fread
      Src: /src/opus/celt/opus_custom_demo.c:313,1
    - Dst: char_to_int
      Src: /src/opus/celt/opus_custom_demo.c:316,1
    - Dst: fread
      Src: /src/opus/celt/opus_custom_demo.c:317,1
    - Dst: fprintf
      Src: /src/opus/celt/opus_custom_demo.c:320,1
    - Dst: fread
      Src: /src/opus/celt/opus_custom_demo.c:326,1
    - Dst: feof
      Src: /src/opus/celt/opus_custom_demo.c:327,1
    - Dst: floor
      Src: /src/opus/celt/opus_custom_demo.c:350,1
    - Dst: opus_custom_encode24
      Src: /src/opus/celt/opus_custom_demo.c:353,1
    - Dst: opus_custom_encoder_ctl
      Src: /src/opus/celt/opus_custom_demo.c:354,1
    - Dst: OPUS_GET_FINAL_RANGE
      Src: /src/opus/celt/opus_custom_demo.c:355,1
    - Dst: opus_ctl_failed
      Src: /src/opus/celt/opus_custom_demo.c:356,1
    - Dst: fprintf
      Src: /src/opus/celt/opus_custom_demo.c:360,1
    - Dst: opus_strerror
      Src: /src/opus/celt/opus_custom_demo.c:360,1
    - Dst: int_to_char
      Src: /src/opus/celt/opus_custom_demo.c:366,1
    - Dst: fwrite
      Src: /src/opus/celt/opus_custom_demo.c:367,1
    - Dst: fprintf
      Src: /src/opus/celt/opus_custom_demo.c:368,1
    - Dst: int_to_char
      Src: /src/opus/celt/opus_custom_demo.c:371,1
    - Dst: fwrite
      Src: /src/opus/celt/opus_custom_demo.c:372,1
    - Dst: fprintf
      Src: /src/opus/celt/opus_custom_demo.c:373,1
    - Dst: fwrite
      Src: /src/opus/celt/opus_custom_demo.c:376,1
    - Dst: fprintf
      Src: /src/opus/celt/opus_custom_demo.c:377,1
    - Dst: rand
      Src: /src/opus/celt/opus_custom_demo.c:388,1
    - Dst: atoi
      Src: /src/opus/celt/opus_custom_demo.c:388,1
    - Dst: rand
      Src: /src/opus/celt/opus_custom_demo.c:401,1
    - Dst: rand
      Src: /src/opus/celt/opus_custom_demo.c:401,1
    - Dst: rand
      Src: /src/opus/celt/opus_custom_demo.c:406,1
    - Dst: opus_custom_decode24
      Src: /src/opus/celt/opus_custom_demo.c:409,1
    - Dst: opus_custom_decode24
      Src: /src/opus/celt/opus_custom_demo.c:411,1
    - Dst: opus_custom_decoder_ctl
      Src: /src/opus/celt/opus_custom_demo.c:412,1
    - Dst: OPUS_GET_FINAL_RANGE
      Src: /src/opus/celt/opus_custom_demo.c:413,1
    - Dst: opus_ctl_failed
      Src: /src/opus/celt/opus_custom_demo.c:414,1
    - Dst: fprintf
      Src: /src/opus/celt/opus_custom_demo.c:418,1
    - Dst: opus_strerror
      Src: /src/opus/celt/opus_custom_demo.c:418,1
    - Dst: fwrite
      Src: /src/opus/celt/opus_custom_demo.c:466,1
    - Dst: fprintf
      Src: /src/opus/celt/opus_custom_demo.c:473,1
    - Dst: PRINT_MIPS
      Src: /src/opus/celt/opus_custom_demo.c:485,1
    - Dst: sqrt
      Src: /src/opus/celt/opus_custom_demo.c:492,1
    - Dst: fprintf
      Src: /src/opus/celt/opus_custom_demo.c:493,1
    - Dst: fprintf
      Src: /src/opus/celt/opus_custom_demo.c:494,1
    - Dst: fprintf
      Src: /src/opus/celt/opus_custom_demo.c:497,1
    - Dst: opus_custom_encoder_destroy
      Src: /src/opus/celt/opus_custom_demo.c:503,1
    - Dst: opus_custom_decoder_destroy
      Src: /src/opus/celt/opus_custom_demo.c:504,1
    - Dst: fclose
      Src: /src/opus/celt/opus_custom_demo.c:505,1
    - Dst: fclose
      Src: /src/opus/celt/opus_custom_demo.c:506,1
    - Dst: opus_custom_mode_destroy
      Src: /src/opus/celt/opus_custom_demo.c:507,1
    - Dst: free
      Src: /src/opus/celt/opus_custom_demo.c:508,1
    - Dst: free
      Src: /src/opus/celt/opus_custom_demo.c:509,1
    - Dst: free
      Src: /src/opus/celt/opus_custom_demo.c:510,1
    CyclomaticComplexity: 125
    EdgeCount: 125
    ICount: 318
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 512
      start: 105
    functionDepth: 3
    functionLinenumber: 105
    functionLinenumberEnd: 512
    functionName: main
    functionSourceFile: /src/opus/celt/opus_custom_demo.c
    functionUses: 0
    functionsReached:
    - malloc
    - OPUS_SET_QEXT
    - OPUS_GET_FINAL_RANGE
    - opus_custom_mode_destroy
    - check_encoder_option
    - fprintf
    - opus_custom_encoder_ctl
    - opus_custom_mode_create
    - opus_custom_decoder_create
    - opus_strerror
    - PRINT_MIPS
    - opus_custom_decode24
    - strcmp
    - char_to_int
    - floor
    - fclose
    - OPUS_GET_LOOKAHEAD
    - fwrite
    - printf
    - opus_custom_encode24
    - OPUS_SET_PACKET_LOSS_PERC
    - rand
    - opus_ctl_failed
    - opus_custom_decoder_destroy
    - int_to_char
    - sqrt
    - print_usage
    - feof
    - opus_custom_decoder_ctl
    - atoi
    - atol
    - opus_custom_encoder_create
    - OPUS_SET_COMPLEXITY
    - opus_custom_encoder_destroy
    - atof
    - fread
    - fopen
    - free
    linkageType: ''
    returnType: int
    signature: int main(int argc, char *argv[])
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/celt/celt.c:87,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 24
    argCount: 1
    argNames:
    - rate
    argTypes:
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 62
    functionDepth: 1
    functionLinenumber: 62
    functionLinenumberEnd: 93
    functionName: resampling_factor
    functionSourceFile: /src/opus/celt/celt.c
    functionUses: 2
    functionsReached:
    - celt_assert
    linkageType: ''
    returnType: int
    signature: int resampling_factor(opus_int32 rate)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SHL32
      Src: /src/opus/celt/celt.c:107,1
    - Dst: SHL32
      Src: /src/opus/celt/celt.c:108,1
    - Dst: SHL32
      Src: /src/opus/celt/celt.c:109,1
    - Dst: SHL32
      Src: /src/opus/celt/celt.c:110,1
    - Dst: SHL32
      Src: /src/opus/celt/celt.c:114,1
    - Dst: MAC_COEF_32_ARM
      Src: /src/opus/celt/celt.c:115,1
    - Dst: MAC_COEF_32_ARM
      Src: /src/opus/celt/celt.c:116,1
    - Dst: ADD32
      Src: /src/opus/celt/celt.c:116,1
    - Dst: MAC_COEF_32_ARM
      Src: /src/opus/celt/celt.c:117,1
    - Dst: ADD32
      Src: /src/opus/celt/celt.c:117,1
    - Dst: SATURATE
      Src: /src/opus/celt/celt.c:118,1
    - Dst: SHL32
      Src: /src/opus/celt/celt.c:120,1
    - Dst: MAC_COEF_32_ARM
      Src: /src/opus/celt/celt.c:121,1
    - Dst: MAC_COEF_32_ARM
      Src: /src/opus/celt/celt.c:122,1
    - Dst: ADD32
      Src: /src/opus/celt/celt.c:122,1
    - Dst: MAC_COEF_32_ARM
      Src: /src/opus/celt/celt.c:123,1
    - Dst: ADD32
      Src: /src/opus/celt/celt.c:123,1
    - Dst: SATURATE
      Src: /src/opus/celt/celt.c:124,1
    - Dst: SHL32
      Src: /src/opus/celt/celt.c:126,1
    - Dst: MAC_COEF_32_ARM
      Src: /src/opus/celt/celt.c:127,1
    - Dst: MAC_COEF_32_ARM
      Src: /src/opus/celt/celt.c:128,1
    - Dst: ADD32
      Src: /src/opus/celt/celt.c:128,1
    - Dst: MAC_COEF_32_ARM
      Src: /src/opus/celt/celt.c:129,1
    - Dst: ADD32
      Src: /src/opus/celt/celt.c:129,1
    - Dst: SATURATE
      Src: /src/opus/celt/celt.c:130,1
    - Dst: SHL32
      Src: /src/opus/celt/celt.c:132,1
    - Dst: MAC_COEF_32_ARM
      Src: /src/opus/celt/celt.c:133,1
    - Dst: MAC_COEF_32_ARM
      Src: /src/opus/celt/celt.c:134,1
    - Dst: ADD32
      Src: /src/opus/celt/celt.c:134,1
    - Dst: MAC_COEF_32_ARM
      Src: /src/opus/celt/celt.c:135,1
    - Dst: ADD32
      Src: /src/opus/celt/celt.c:135,1
    - Dst: SATURATE
      Src: /src/opus/celt/celt.c:136,1
    - Dst: SHL32
      Src: /src/opus/celt/celt.c:138,1
    - Dst: MAC_COEF_32_ARM
      Src: /src/opus/celt/celt.c:139,1
    - Dst: MAC_COEF_32_ARM
      Src: /src/opus/celt/celt.c:140,1
    - Dst: ADD32
      Src: /src/opus/celt/celt.c:140,1
    - Dst: MAC_COEF_32_ARM
      Src: /src/opus/celt/celt.c:141,1
    - Dst: ADD32
      Src: /src/opus/celt/celt.c:141,1
    - Dst: SATURATE
      Src: /src/opus/celt/celt.c:142,1
    - Dst: SHL32
      Src: /src/opus/celt/celt.c:149,1
    - Dst: MAC_COEF_32_ARM
      Src: /src/opus/celt/celt.c:150,1
    - Dst: MAC_COEF_32_ARM
      Src: /src/opus/celt/celt.c:151,1
    - Dst: ADD32
      Src: /src/opus/celt/celt.c:151,1
    - Dst: MAC_COEF_32_ARM
      Src: /src/opus/celt/celt.c:152,1
    - Dst: ADD32
      Src: /src/opus/celt/celt.c:152,1
    - Dst: SATURATE
      Src: /src/opus/celt/celt.c:153,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 49
    argCount: 7
    argNames:
    - y
    - x
    - T
    - N
    - g10
    - g11
    - g12
    argTypes:
    - opus_val32*
    - opus_val32*
    - int
    - int
    - celt_coef
    - celt_coef
    - celt_coef
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 161
    functionName: comb_filter_const_c
    functionSourceFile: /src/opus/celt/celt.c
    functionUses: 0
    functionsReached:
    - SHL32
    - SATURATE
    - MAC_COEF_32_ARM
    - ADD32
    linkageType: ''
    returnType: void
    signature: "void comb_filter_const_c(opus_val32 *y, opus_val32 *x, int T, int
      N,\n      celt_coef g10, celt_coef g11, celt_coef g12)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MULT_COEF_32
      Src: /src/opus/celt/celt.c:179,1
    - Dst: MULT_COEF_32
      Src: /src/opus/celt/celt.c:180,1
    - Dst: ADD32
      Src: /src/opus/celt/celt.c:180,1
    - Dst: MULT_COEF_32
      Src: /src/opus/celt/celt.c:181,1
    - Dst: ADD32
      Src: /src/opus/celt/celt.c:181,1
    - Dst: SUB32
      Src: /src/opus/celt/celt.c:184,1
    - Dst: SATURATE
      Src: /src/opus/celt/celt.c:186,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 7
    argNames:
    - y
    - x
    - T
    - N
    - g10
    - g11
    - g12
    argTypes:
    - opus_val32*
    - opus_val32*
    - int
    - int
    - celt_coef
    - celt_coef
    - celt_coef
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 166
    functionDepth: 1
    functionLinenumber: 166
    functionLinenumberEnd: 193
    functionName: comb_filter_const_c
    functionSourceFile: /src/opus/celt/celt.c
    functionUses: 0
    functionsReached:
    - SATURATE
    - SUB32
    - MULT_COEF_32
    - ADD32
    linkageType: ''
    returnType: void
    signature: "void comb_filter_const_c(opus_val32 *y, opus_val32 *x, int T, int
      N,\n      celt_coef g10, celt_coef g11, celt_coef g12)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/celt/celt.c:202,1
    - Dst: VARDECL
      Src: /src/opus/celt/celt.c:203,1
    - Dst: ALLOC
      Src: /src/opus/celt/celt.c:212,1
    - Dst: ALLOC
      Src: /src/opus/celt/celt.c:213,1
    - Dst: comb_filter
      Src: /src/opus/celt/celt.c:229,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 12
    argNames:
    - y
    - x
    - T0
    - T1
    - N
    - g0
    - g1
    - tapset0
    - tapset1
    - window
    - overlap
    - arch
    argTypes:
    - opus_val32*
    - opus_val32*
    - int
    - int
    - int
    - opus_val16
    - opus_val16
    - int
    - int
    - celt_coef*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 198
    functionDepth: 1
    functionLinenumber: 198
    functionLinenumberEnd: 234
    functionName: comb_filter_qext
    functionSourceFile: /src/opus/celt/celt.c
    functionUses: 0
    functionsReached:
    - VARDECL
    - ALLOC
    - comb_filter
    linkageType: ''
    returnType: void
    signature: "void comb_filter_qext(opus_val32 *y, opus_val32 *x, int T0, int T1,
      int N,\n      opus_val16 g0, opus_val16 g1, int tapset0, int tapset1,\n      const
      celt_coef *window, int overlap, int arch)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: QCONST16
      Src: /src/opus/celt/celt.c:247,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt.c:247,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt.c:247,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt.c:248,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt.c:248,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt.c:248,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt.c:249,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt.c:249,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt.c:249,1
    - Dst: comb_filter_qext
      Src: /src/opus/celt/celt.c:252,1
    - Dst: OPUS_MOVE
      Src: /src/opus/celt/celt.c:260,1
    - Dst: IMAX
      Src: /src/opus/celt/celt.c:265,1
    - Dst: IMAX
      Src: /src/opus/celt/celt.c:266,1
    - Dst: MULT_COEF_TAPS
      Src: /src/opus/celt/celt.c:267,1
    - Dst: MULT_COEF_TAPS
      Src: /src/opus/celt/celt.c:268,1
    - Dst: MULT_COEF_TAPS
      Src: /src/opus/celt/celt.c:269,1
    - Dst: MULT_COEF_TAPS
      Src: /src/opus/celt/celt.c:270,1
    - Dst: MULT_COEF_TAPS
      Src: /src/opus/celt/celt.c:271,1
    - Dst: MULT_COEF_TAPS
      Src: /src/opus/celt/celt.c:272,1
    - Dst: MULT_COEF
      Src: /src/opus/celt/celt.c:284,1
    - Dst: MULT_COEF_32
      Src: /src/opus/celt/celt.c:286,1
    - Dst: MULT_COEF
      Src: /src/opus/celt/celt.c:286,1
    - Dst: MULT_COEF_32
      Src: /src/opus/celt/celt.c:287,1
    - Dst: MULT_COEF
      Src: /src/opus/celt/celt.c:287,1
    - Dst: ADD32
      Src: /src/opus/celt/celt.c:287,1
    - Dst: MULT_COEF_32
      Src: /src/opus/celt/celt.c:288,1
    - Dst: MULT_COEF
      Src: /src/opus/celt/celt.c:288,1
    - Dst: ADD32
      Src: /src/opus/celt/celt.c:288,1
    - Dst: MULT_COEF_32
      Src: /src/opus/celt/celt.c:289,1
    - Dst: MULT_COEF
      Src: /src/opus/celt/celt.c:289,1
    - Dst: MULT_COEF_32
      Src: /src/opus/celt/celt.c:290,1
    - Dst: MULT_COEF
      Src: /src/opus/celt/celt.c:290,1
    - Dst: ADD32
      Src: /src/opus/celt/celt.c:290,1
    - Dst: MULT_COEF_32
      Src: /src/opus/celt/celt.c:291,1
    - Dst: MULT_COEF
      Src: /src/opus/celt/celt.c:291,1
    - Dst: ADD32
      Src: /src/opus/celt/celt.c:291,1
    - Dst: SUB32
      Src: /src/opus/celt/celt.c:294,1
    - Dst: SATURATE
      Src: /src/opus/celt/celt.c:296,1
    - Dst: OPUS_MOVE
      Src: /src/opus/celt/celt.c:307,1
    - Dst: comb_filter_const
      Src: /src/opus/celt/celt.c:312,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 41
    argCount: 12
    argNames:
    - y
    - x
    - T0
    - T1
    - N
    - g0
    - g1
    - tapset0
    - tapset1
    - window
    - overlap
    - arch
    argTypes:
    - opus_val32*
    - opus_val32*
    - int
    - int
    - int
    - opus_val16
    - opus_val16
    - int
    - int
    - celt_coef*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 238
    functionDepth: 2
    functionLinenumber: 238
    functionLinenumberEnd: 313
    functionName: comb_filter
    functionSourceFile: /src/opus/celt/celt.c
    functionUses: 1
    functionsReached:
    - comb_filter_qext
    - MULT_COEF_TAPS
    - ADD32
    - SATURATE
    - comb_filter_const
    - OPUS_MOVE
    - MULT_COEF
    - MULT_COEF_32
    - QCONST16
    - SUB32
    - IMAX
    linkageType: ''
    returnType: void
    signature: "void comb_filter(opus_val32 *y, opus_val32 *x, int T0, int T1, int
      N,\n      opus_val16 g0, opus_val16 g1, int tapset0, int tapset1,\n      const
      celt_coef *window, int overlap, int arch)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - m
    - cap
    - LM
    - C
    argTypes:
    - CELTMode*
    - int*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 329
    functionDepth: 0
    functionLinenumber: 329
    functionLinenumberEnd: 338
    functionName: init_caps
    functionSourceFile: /src/opus/celt/celt.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void init_caps(const CELTMode *m,int *cap,int LM,int C)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - error
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 358
      start: 342
    functionDepth: 0
    functionLinenumber: 342
    functionLinenumberEnd: 358
    functionName: opus_strerror
    functionSourceFile: /src/opus/celt/celt.c
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *opus_strerror(int error)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 373
      start: 360
    functionDepth: 0
    functionLinenumber: 360
    functionLinenumberEnd: 373
    functionName: opus_get_version_string
    functionSourceFile: /src/opus/celt/celt.c
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char *opus_get_version_string(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - x
    - ','
    - iy
    - ','
    - K
    - ','
    - N
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: op_pvq_search
    functionSourceFile: /src/opus/celt/vq.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: op_pvq_search(x, iy, K, N, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 30
    functionName: MIN
    functionSourceFile: /src/opus/celt/_kiss_fft_guts.h
    functionUses: 52
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MIN(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 31
    functionName: MAX
    functionSourceFile: /src/opus/celt/_kiss_fft_guts.h
    functionUses: 50
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAX(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 59
    functionName: S_MUL
    functionSourceFile: /src/opus/celt/_kiss_fft_guts.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: S_MUL(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 60
    functionName: S_MUL2
    functionSourceFile: /src/opus/celt/_kiss_fft_guts.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: S_MUL2(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 62
    functionName: S_MUL
    functionSourceFile: /src/opus/celt/_kiss_fft_guts.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: S_MUL(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 63
    functionName: S_MUL2
    functionSourceFile: /src/opus/celt/_kiss_fft_guts.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: S_MUL2(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - m
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 68
    functionName: C_MUL
    functionSourceFile: /src/opus/celt/_kiss_fft_guts.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: C_MUL(m,a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - m
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 72
    functionName: C_MULC
    functionSourceFile: /src/opus/celt/_kiss_fft_guts.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: C_MULC(m,a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - c
    - ','
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 76
    functionName: C_MULBYSCALAR
    functionSourceFile: /src/opus/celt/_kiss_fft_guts.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: C_MULBYSCALAR( c, s )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - k
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionName: DIVSCALAR
    functionSourceFile: /src/opus/celt/_kiss_fft_guts.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DIVSCALAR(x,k)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - c
    - ','
    - div
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 83
    functionName: C_FIXDIV
    functionSourceFile: /src/opus/celt/_kiss_fft_guts.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: C_FIXDIV(c,div)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - res
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 87
    functionName: C_ADD
    functionSourceFile: /src/opus/celt/_kiss_fft_guts.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: C_ADD( res, a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - res
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 90
    functionName: C_SUB
    functionSourceFile: /src/opus/celt/_kiss_fft_guts.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: C_SUB( res, a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - res
    - ','
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 93
    functionName: C_ADDTO
    functionSourceFile: /src/opus/celt/_kiss_fft_guts.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: C_ADDTO( res , a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - res
    - ','
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 97
    functionName: C_SUBFROM
    functionSourceFile: /src/opus/celt/_kiss_fft_guts.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: C_SUBFROM( res , a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 112
    functionName: S_MUL
    functionSourceFile: /src/opus/celt/_kiss_fft_guts.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: S_MUL(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 113
    functionName: S_MUL2
    functionSourceFile: /src/opus/celt/_kiss_fft_guts.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: S_MUL2(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - m
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 116
    functionName: C_MUL
    functionSourceFile: /src/opus/celt/_kiss_fft_guts.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: C_MUL(m,a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - m
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 119
    functionName: C_MULC
    functionSourceFile: /src/opus/celt/_kiss_fft_guts.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: C_MULC(m,a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - m
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 121
    functionName: C_MUL4
    functionSourceFile: /src/opus/celt/_kiss_fft_guts.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: C_MUL4(m,a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - c
    - ','
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 126
    functionName: C_MULBYSCALAR
    functionSourceFile: /src/opus/celt/_kiss_fft_guts.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: C_MULBYSCALAR( c, s )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - res
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 139
    functionName: C_ADD
    functionSourceFile: /src/opus/celt/_kiss_fft_guts.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: C_ADD( res, a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - res
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 145
    functionName: C_SUB
    functionSourceFile: /src/opus/celt/_kiss_fft_guts.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: C_SUB( res, a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - res
    - ','
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 151
    functionName: C_ADDTO
    functionSourceFile: /src/opus/celt/_kiss_fft_guts.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: C_ADDTO( res , a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - res
    - ','
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 158
    functionName: C_SUBFROM
    functionSourceFile: /src/opus/celt/_kiss_fft_guts.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: C_SUBFROM( res , a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - phase
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 163
    functionDepth: 0
    functionLinenumber: 163
    functionLinenumberEnd: 164
    functionName: KISS_FFT_COS
    functionSourceFile: /src/opus/celt/_kiss_fft_guts.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: KISS_FFT_COS(phase)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - phase
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 165
    functionName: KISS_FFT_SIN
    functionSourceFile: /src/opus/celt/_kiss_fft_guts.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: KISS_FFT_SIN(phase)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 166
    functionName: HALF_OF
    functionSourceFile: /src/opus/celt/_kiss_fft_guts.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: HALF_OF(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - phase
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 168
    functionName: KISS_FFT_COS
    functionSourceFile: /src/opus/celt/_kiss_fft_guts.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: KISS_FFT_COS(phase)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - phase
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 169
    functionName: KISS_FFT_SIN
    functionSourceFile: /src/opus/celt/_kiss_fft_guts.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: KISS_FFT_SIN(phase)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 170
    functionName: HALF_OF
    functionSourceFile: /src/opus/celt/_kiss_fft_guts.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: HALF_OF(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - phase
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 172
    functionName: KISS_FFT_COS
    functionSourceFile: /src/opus/celt/_kiss_fft_guts.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: KISS_FFT_COS(phase)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - phase
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 173
    functionName: KISS_FFT_SIN
    functionSourceFile: /src/opus/celt/_kiss_fft_guts.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: KISS_FFT_SIN(phase)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 174
    functionName: HALF_OF
    functionSourceFile: /src/opus/celt/_kiss_fft_guts.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: HALF_OF(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - phase
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 181
    functionName: kf_cexp
    functionSourceFile: /src/opus/celt/_kiss_fft_guts.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: kf_cexp(x,phase)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - phase
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 187
    functionName: kf_cexp2
    functionSourceFile: /src/opus/celt/_kiss_fft_guts.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: kf_cexp2(x,phase)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _this
    argTypes:
    - ec_dec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 93
    functionName: ec_read_byte
    functionSourceFile: /src/opus/celt/entdec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int ec_read_byte(ec_dec *_this)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - _this
    argTypes:
    - ec_dec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 98
    functionName: ec_read_byte_from_end
    functionSourceFile: /src/opus/celt/entdec.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int ec_read_byte_from_end(ec_dec *_this)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ec_read_byte
      Src: /src/opus/celt/entdec.c:111,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - _this
    argTypes:
    - ec_dec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 117
    functionName: ec_dec_normalize
    functionSourceFile: /src/opus/celt/entdec.c
    functionUses: 0
    functionsReached:
    - ec_read_byte
    linkageType: ''
    returnType: void
    signature: void ec_dec_normalize(ec_dec *_this)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ec_read_byte
      Src: /src/opus/celt/entdec.c:132,1
    - Dst: ec_dec_normalize
      Src: /src/opus/celt/entdec.c:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 3
    argNames:
    - _this
    - _buf
    - _storage
    argTypes:
    - ec_dec*
    - unsigned char*
    - opus_uint32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 119
    functionDepth: 2
    functionLinenumber: 119
    functionLinenumberEnd: 137
    functionName: ec_dec_init
    functionSourceFile: /src/opus/celt/entdec.c
    functionUses: 3
    functionsReached:
    - ec_dec_normalize
    - ec_read_byte
    linkageType: ''
    returnType: void
    signature: void ec_dec_init(ec_dec *_this,unsigned char *_buf,opus_uint32 _storage)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_udiv
      Src: /src/opus/celt/entdec.c:141,1
    - Dst: EC_MINI
      Src: /src/opus/celt/entdec.c:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - _this
    - _ft
    argTypes:
    - ec_dec*
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 139
    functionDepth: 1
    functionLinenumber: 139
    functionLinenumberEnd: 144
    functionName: ec_decode
    functionSourceFile: /src/opus/celt/entdec.c
    functionUses: 3
    functionsReached:
    - celt_udiv
    - EC_MINI
    linkageType: ''
    returnType: unsigned
    signature: unsigned ec_decode(ec_dec *_this,unsigned _ft)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EC_MINI
      Src: /src/opus/celt/entdec.c:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - _this
    - _bits
    argTypes:
    - ec_dec*
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 146
    functionDepth: 1
    functionLinenumber: 146
    functionLinenumberEnd: 151
    functionName: ec_decode_bin
    functionSourceFile: /src/opus/celt/entdec.c
    functionUses: 1
    functionsReached:
    - EC_MINI
    linkageType: ''
    returnType: unsigned
    signature: unsigned ec_decode_bin(ec_dec *_this,unsigned _bits)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: IMUL32
      Src: /src/opus/celt/entdec.c:155,1
    - Dst: IMUL32
      Src: /src/opus/celt/entdec.c:157,1
    - Dst: ec_dec_normalize
      Src: /src/opus/celt/entdec.c:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 4
    argNames:
    - _this
    - _fl
    - _fh
    - _ft
    argTypes:
    - ec_dec*
    - unsigned
    - unsigned
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 153
    functionDepth: 2
    functionLinenumber: 153
    functionLinenumberEnd: 159
    functionName: ec_dec_update
    functionSourceFile: /src/opus/celt/entdec.c
    functionUses: 3
    functionsReached:
    - IMUL32
    - ec_dec_normalize
    linkageType: ''
    returnType: void
    signature: void ec_dec_update(ec_dec *_this,unsigned _fl,unsigned _fh,unsigned
      _ft)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ec_dec_normalize
      Src: /src/opus/celt/entdec.c:173,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - _this
    - _logp
    argTypes:
    - ec_dec*
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 162
    functionDepth: 2
    functionLinenumber: 162
    functionLinenumberEnd: 175
    functionName: ec_dec_bit_logp
    functionSourceFile: /src/opus/celt/entdec.c
    functionUses: 7
    functionsReached:
    - ec_dec_normalize
    linkageType: ''
    returnType: int
    signature: int ec_dec_bit_logp(ec_dec *_this,unsigned _logp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: IMUL32
      Src: /src/opus/celt/entdec.c:189,1
    - Dst: ec_dec_normalize
      Src: /src/opus/celt/entdec.c:194,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 3
    argNames:
    - _this
    - _icdf
    - _ftb
    argTypes:
    - ec_dec*
    - unsigned char*
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 177
    functionDepth: 2
    functionLinenumber: 177
    functionLinenumberEnd: 196
    functionName: ec_dec_icdf
    functionSourceFile: /src/opus/celt/entdec.c
    functionUses: 9
    functionsReached:
    - IMUL32
    - ec_dec_normalize
    linkageType: ''
    returnType: int
    signature: int ec_dec_icdf(ec_dec *_this,const unsigned char *_icdf,unsigned _ftb)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: IMUL32
      Src: /src/opus/celt/entdec.c:210,1
    - Dst: ec_dec_normalize
      Src: /src/opus/celt/entdec.c:215,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 3
    argNames:
    - _this
    - _icdf
    - _ftb
    argTypes:
    - ec_dec*
    - opus_uint16*
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 198
    functionDepth: 2
    functionLinenumber: 198
    functionLinenumberEnd: 217
    functionName: ec_dec_icdf16
    functionSourceFile: /src/opus/celt/entdec.c
    functionUses: 1
    functionsReached:
    - IMUL32
    - ec_dec_normalize
    linkageType: ''
    returnType: int
    signature: int ec_dec_icdf16(ec_dec *_this,const opus_uint16 *_icdf,unsigned _ftb)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/celt/entdec.c:224,1
    - Dst: EC_ILOG
      Src: /src/opus/celt/entdec.c:226,1
    - Dst: ec_decode
      Src: /src/opus/celt/entdec.c:231,1
    - Dst: ec_dec_update
      Src: /src/opus/celt/entdec.c:232,1
    - Dst: ec_dec_bits
      Src: /src/opus/celt/entdec.c:233,1
    - Dst: ec_decode
      Src: /src/opus/celt/entdec.c:240,1
    - Dst: ec_dec_update
      Src: /src/opus/celt/entdec.c:241,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 2
    argNames:
    - _this
    - _ft
    argTypes:
    - ec_dec*
    - opus_uint32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 219
    functionDepth: 3
    functionLinenumber: 219
    functionLinenumberEnd: 244
    functionName: ec_dec_uint
    functionSourceFile: /src/opus/celt/entdec.c
    functionUses: 8
    functionsReached:
    - celt_assert
    - ec_dec_bits
    - ec_dec_update
    - ec_decode
    - EC_ILOG
    linkageType: ''
    returnType: opus_uint32
    signature: opus_uint32 ec_dec_uint(ec_dec *_this,opus_uint32 _ft)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ec_read_byte_from_end
      Src: /src/opus/celt/entdec.c:254,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 2
    argNames:
    - _this
    - _bits
    argTypes:
    - ec_dec*
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 246
    functionDepth: 1
    functionLinenumber: 246
    functionLinenumberEnd: 266
    functionName: ec_dec_bits
    functionSourceFile: /src/opus/celt/entdec.c
    functionUses: 8
    functionsReached:
    - ec_read_byte_from_end
    linkageType: ''
    returnType: opus_uint32
    signature: opus_uint32 ec_dec_bits(ec_dec *_this,unsigned _bits)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/celt/celt_lpc.c:299,1
    - Dst: ALLOC
      Src: /src/opus/celt/celt_lpc.c:301,1
    - Dst: celt_assert
      Src: /src/opus/celt/celt_lpc.c:302,1
    - Dst: celt_assert
      Src: /src/opus/celt/celt_lpc.c:303,1
    - Dst: COEF2VAL16
      Src: /src/opus/celt/celt_lpc.c:312,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/celt_lpc.c:313,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/celt_lpc.c:314,1
    - Dst: celt_ilog2
      Src: /src/opus/celt/celt_lpc.c:322,1
    - Dst: SHR32
      Src: /src/opus/celt/celt_lpc.c:324,1
    - Dst: MULT16_16
      Src: /src/opus/celt/celt_lpc.c:324,1
    - Dst: SHR32
      Src: /src/opus/celt/celt_lpc.c:327,1
    - Dst: MULT16_16
      Src: /src/opus/celt/celt_lpc.c:327,1
    - Dst: SHR32
      Src: /src/opus/celt/celt_lpc.c:328,1
    - Dst: MULT16_16
      Src: /src/opus/celt/celt_lpc.c:328,1
    - Dst: SHR32
      Src: /src/opus/celt/celt_lpc.c:331,1
    - Dst: celt_ilog2
      Src: /src/opus/celt/celt_lpc.c:333,1
    - Dst: PSHR32
      Src: /src/opus/celt/celt_lpc.c:338,1
    - Dst: celt_pitch_xcorr
      Src: /src/opus/celt/celt_lpc.c:344,1
    - Dst: MAC16_16
      Src: /src/opus/celt/celt_lpc.c:348,1
    - Dst: SHL32
      Src: /src/opus/celt/celt_lpc.c:354,1
    - Dst: EC_ILOG
      Src: /src/opus/celt/celt_lpc.c:357,1
    - Dst: SHL32
      Src: /src/opus/celt/celt_lpc.c:359,1
    - Dst: SHR32
      Src: /src/opus/celt/celt_lpc.c:367,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 58
    argCount: 7
    argNames:
    - x
    - ac
    - window
    - overlap
    - lag
    - n
    - arch
    argTypes:
    - opus_val16*
    - opus_val32*
    - celt_coef*
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 284
    functionDepth: 1
    functionLinenumber: 284
    functionLinenumberEnd: 374
    functionName: _celt_autocorr
    functionSourceFile: /src/opus/celt/celt_lpc.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - MAC16_16
    - MULT16_16
    - celt_ilog2
    - MULT16_16_Q15
    - VARDECL
    - ALLOC
    - celt_pitch_xcorr
    - SHR32
    - COEF2VAL16
    - SHL32
    - PSHR32
    - EC_ILOG
    linkageType: ''
    returnType: int
    signature: "int _celt_autocorr(\n                   const opus_val16 *x,   /*
      \ in: [0...n-1] samples x   */\n                   opus_val32       *ac,  /*
      out: [0...lag-1] ac values */\n                   const celt_coef  *window,\n
      \                  int          overlap,\n                   int          lag,\n
      \                  int          n,\n                   int          arch\n                  )"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: opus_fft_alloc
      Src: /src/opus/celt/mdct.c:77,1
    - Dst: opus_fft_alloc_twiddles
      Src: /src/opus/celt/mdct.c:79,1
    - Dst: opus_alloc
      Src: /src/opus/celt/mdct.c:85,1
    - Dst: celt_cos_norm
      Src: /src/opus/celt/mdct.c:94,1
    - Dst: DIV32
      Src: /src/opus/celt/mdct.c:94,1
    - Dst: ADD32
      Src: /src/opus/celt/mdct.c:94,1
    - Dst: SHL32
      Src: /src/opus/celt/mdct.c:94,1
    - Dst: EXTEND32
      Src: /src/opus/celt/mdct.c:94,1
    - Dst: MAX32
      Src: /src/opus/celt/mdct.c:97,1
    - Dst: MIN32
      Src: /src/opus/celt/mdct.c:97,1
    - Dst: floor
      Src: /src/opus/celt/mdct.c:97,1
    - Dst: cos
      Src: /src/opus/celt/mdct.c:97,1
    - Dst: cos
      Src: /src/opus/celt/mdct.c:101,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 25
    argCount: 4
    argNames:
    - l
    - N
    - maxshift
    - arch
    argTypes:
    - mdct_lookup*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 66
    functionDepth: 4
    functionLinenumber: 66
    functionLinenumberEnd: 108
    functionName: clt_mdct_init
    functionSourceFile: /src/opus/celt/mdct.c
    functionUses: 0
    functionsReached:
    - MIN32
    - celt_cos_norm
    - ADD32
    - DIV32
    - opus_fft_alloc_twiddles
    - floor
    - MAX32
    - EXTEND32
    - SHL32
    - opus_fft_alloc
    - opus_alloc
    - cos
    linkageType: ''
    returnType: int
    signature: int clt_mdct_init(mdct_lookup *l,int N, int maxshift, int arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_fft_free
      Src: /src/opus/celt/mdct.c:114,1
    - Dst: opus_free
      Src: /src/opus/celt/mdct.c:115,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - l
    - arch
    argTypes:
    - mdct_lookup*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 110
    functionDepth: 2
    functionLinenumber: 110
    functionLinenumberEnd: 116
    functionName: clt_mdct_clear
    functionSourceFile: /src/opus/celt/mdct.c
    functionUses: 0
    functionsReached:
    - opus_fft_free
    - opus_free
    linkageType: ''
    returnType: void
    signature: void clt_mdct_clear(mdct_lookup *l, int arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/celt/mdct.c:127,1
    - Dst: VARDECL
      Src: /src/opus/celt/mdct.c:128,1
    - Dst: ALLOC
      Src: /src/opus/celt/mdct.c:152,1
    - Dst: ALLOC
      Src: /src/opus/celt/mdct.c:153,1
    - Dst: S_MUL
      Src: /src/opus/celt/mdct.c:167,1
    - Dst: S_MUL
      Src: /src/opus/celt/mdct.c:167,1
    - Dst: S_MUL
      Src: /src/opus/celt/mdct.c:168,1
    - Dst: S_MUL
      Src: /src/opus/celt/mdct.c:168,1
    - Dst: S_MUL
      Src: /src/opus/celt/mdct.c:187,1
    - Dst: S_MUL
      Src: /src/opus/celt/mdct.c:187,1
    - Dst: S_MUL
      Src: /src/opus/celt/mdct.c:188,1
    - Dst: S_MUL
      Src: /src/opus/celt/mdct.c:188,1
    - Dst: S_MUL
      Src: /src/opus/celt/mdct.c:211,1
    - Dst: S_MUL
      Src: /src/opus/celt/mdct.c:211,1
    - Dst: S_MUL
      Src: /src/opus/celt/mdct.c:212,1
    - Dst: S_MUL
      Src: /src/opus/celt/mdct.c:212,1
    - Dst: S_MUL2
      Src: /src/opus/celt/mdct.c:219,1
    - Dst: S_MUL2
      Src: /src/opus/celt/mdct.c:220,1
    - Dst: MAX32
      Src: /src/opus/celt/mdct.c:223,1
    - Dst: MAX32
      Src: /src/opus/celt/mdct.c:223,1
    - Dst: ABS32
      Src: /src/opus/celt/mdct.c:223,1
    - Dst: ABS32
      Src: /src/opus/celt/mdct.c:223,1
    - Dst: IMAX
      Src: /src/opus/celt/mdct.c:228,1
    - Dst: IMIN
      Src: /src/opus/celt/mdct.c:228,1
    - Dst: celt_ilog2
      Src: /src/opus/celt/mdct.c:228,1
    - Dst: S_MUL2
      Src: /src/opus/celt/mdct.c:248,1
    - Dst: S_MUL2
      Src: /src/opus/celt/mdct.c:249,1
    - Dst: PSHR32
      Src: /src/opus/celt/mdct.c:254,1
    - Dst: S_MUL
      Src: /src/opus/celt/mdct.c:254,1
    - Dst: S_MUL
      Src: /src/opus/celt/mdct.c:254,1
    - Dst: PSHR32
      Src: /src/opus/celt/mdct.c:255,1
    - Dst: S_MUL
      Src: /src/opus/celt/mdct.c:255,1
    - Dst: S_MUL
      Src: /src/opus/celt/mdct.c:255,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 76
    argCount: 8
    argNames:
    - l
    - in
    - OPUS_RESTRICT
    - window
    - overlap
    - shift
    - stride
    - arch
    argTypes:
    - mdct_lookup*
    - kiss_fft_scalar*
    - kiss_fft_scalar*
    - celt_coef*
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 264
    functionName: clt_mdct_forward_c
    functionSourceFile: /src/opus/celt/mdct.c
    functionUses: 0
    functionsReached:
    - IMIN
    - S_MUL2
    - celt_ilog2
    - VARDECL
    - ALLOC
    - MAX32
    - S_MUL
    - ABS32
    - PSHR32
    - IMAX
    linkageType: ''
    returnType: void
    signature: "void clt_mdct_forward_c(const mdct_lookup *l, kiss_fft_scalar *in,
      kiss_fft_scalar * OPUS_RESTRICT out,\n      const celt_coef *window, int overlap,
      int shift, int stride, int arch)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: S_MUL2
      Src: /src/opus/celt/mdct.c:248,1
    - Dst: S_MUL2
      Src: /src/opus/celt/mdct.c:249,1
    - Dst: PSHR32
      Src: /src/opus/celt/mdct.c:254,1
    - Dst: S_MUL
      Src: /src/opus/celt/mdct.c:254,1
    - Dst: S_MUL
      Src: /src/opus/celt/mdct.c:254,1
    - Dst: PSHR32
      Src: /src/opus/celt/mdct.c:255,1
    - Dst: S_MUL
      Src: /src/opus/celt/mdct.c:255,1
    - Dst: S_MUL
      Src: /src/opus/celt/mdct.c:255,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 1
    argNames:
    - ARG_FIXED
    argTypes:
    - f2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 233
    functionDepth: 1
    functionLinenumber: 233
    functionLinenumberEnd: 262
    functionName: opus_fft_impl
    functionSourceFile: /src/opus/celt/mdct.c
    functionUses: 0
    functionsReached:
    - S_MUL2
    - PSHR32
    - S_MUL
    linkageType: ''
    returnType: void
    signature: void opus_fft_impl(st, f2 ARG_FIXED(scale_shift-headroom))
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MAX32
      Src: /src/opus/celt/mdct.c:294,1
    - Dst: ABS32
      Src: /src/opus/celt/mdct.c:294,1
    - Dst: ADD32_ovflw
      Src: /src/opus/celt/mdct.c:295,1
    - Dst: ABS32
      Src: /src/opus/celt/mdct.c:295,1
    - Dst: SHR32
      Src: /src/opus/celt/mdct.c:295,1
    - Dst: IMAX
      Src: /src/opus/celt/mdct.c:297,1
    - Dst: celt_zlog2
      Src: /src/opus/celt/mdct.c:297,1
    - Dst: IMAX
      Src: /src/opus/celt/mdct.c:299,1
    - Dst: celt_ilog2
      Src: /src/opus/celt/mdct.c:299,1
    - Dst: ABS32
      Src: /src/opus/celt/mdct.c:299,1
    - Dst: IMIN
      Src: /src/opus/celt/mdct.c:300,1
    - Dst: SHL32_ovflw
      Src: /src/opus/celt/mdct.c:318,1
    - Dst: SHL32_ovflw
      Src: /src/opus/celt/mdct.c:319,1
    - Dst: ADD32_ovflw
      Src: /src/opus/celt/mdct.c:320,1
    - Dst: S_MUL
      Src: /src/opus/celt/mdct.c:320,1
    - Dst: S_MUL
      Src: /src/opus/celt/mdct.c:320,1
    - Dst: SUB32_ovflw
      Src: /src/opus/celt/mdct.c:321,1
    - Dst: S_MUL
      Src: /src/opus/celt/mdct.c:321,1
    - Dst: S_MUL
      Src: /src/opus/celt/mdct.c:321,1
    - Dst: opus_fft_impl
      Src: /src/opus/celt/mdct.c:331,1
    - Dst: ARG_FIXED
      Src: /src/opus/celt/mdct.c:331,1
    - Dst: PSHR32_ovflw
      Src: /src/opus/celt/mdct.c:351,1
    - Dst: ADD32_ovflw
      Src: /src/opus/celt/mdct.c:351,1
    - Dst: S_MUL
      Src: /src/opus/celt/mdct.c:351,1
    - Dst: S_MUL
      Src: /src/opus/celt/mdct.c:351,1
    - Dst: PSHR32_ovflw
      Src: /src/opus/celt/mdct.c:352,1
    - Dst: SUB32_ovflw
      Src: /src/opus/celt/mdct.c:352,1
    - Dst: S_MUL
      Src: /src/opus/celt/mdct.c:352,1
    - Dst: S_MUL
      Src: /src/opus/celt/mdct.c:352,1
    - Dst: PSHR32_ovflw
      Src: /src/opus/celt/mdct.c:362,1
    - Dst: ADD32_ovflw
      Src: /src/opus/celt/mdct.c:362,1
    - Dst: S_MUL
      Src: /src/opus/celt/mdct.c:362,1
    - Dst: S_MUL
      Src: /src/opus/celt/mdct.c:362,1
    - Dst: PSHR32_ovflw
      Src: /src/opus/celt/mdct.c:363,1
    - Dst: SUB32_ovflw
      Src: /src/opus/celt/mdct.c:363,1
    - Dst: S_MUL
      Src: /src/opus/celt/mdct.c:363,1
    - Dst: S_MUL
      Src: /src/opus/celt/mdct.c:363,1
    - Dst: SUB32_ovflw
      Src: /src/opus/celt/mdct.c:383,1
    - Dst: S_MUL
      Src: /src/opus/celt/mdct.c:383,1
    - Dst: S_MUL
      Src: /src/opus/celt/mdct.c:383,1
    - Dst: ADD32_ovflw
      Src: /src/opus/celt/mdct.c:384,1
    - Dst: S_MUL
      Src: /src/opus/celt/mdct.c:384,1
    - Dst: S_MUL
      Src: /src/opus/celt/mdct.c:384,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 65
    argCount: 8
    argNames:
    - l
    - in
    - OPUS_RESTRICT
    - OPUS_RESTRICT
    - overlap
    - shift
    - stride
    - arch
    argTypes:
    - mdct_lookup*
    - kiss_fft_scalar*
    - kiss_fft_scalar*
    - celt_coef*
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 389
      start: 268
    functionDepth: 1
    functionLinenumber: 268
    functionLinenumberEnd: 389
    functionName: clt_mdct_backward_c
    functionSourceFile: /src/opus/celt/mdct.c
    functionUses: 0
    functionsReached:
    - IMIN
    - S_MUL
    - PSHR32_ovflw
    - celt_ilog2
    - SUB32_ovflw
    - celt_zlog2
    - ADD32_ovflw
    - ARG_FIXED
    - MAX32
    - SHR32
    - ABS32
    - opus_fft_impl
    - IMAX
    - SHL32_ovflw
    linkageType: ''
    returnType: void
    signature: "void clt_mdct_backward_c(const mdct_lookup *l, kiss_fft_scalar *in,
      kiss_fft_scalar * OPUS_RESTRICT out,\n      const celt_coef * OPUS_RESTRICT
      window, int overlap, int shift, int stride, int arch)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 36
    functionName: MULT16_16SU
    functionSourceFile: /src/opus/celt/fixed_c6x.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_16SU(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 39
    functionName: MULT_16_16
    functionSourceFile: /src/opus/celt/fixed_c6x.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT_16_16(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 41
    functionName: celt_ilog2
    functionSourceFile: /src/opus/celt/fixed_c6x.h
    functionUses: 24
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_ilog2(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 45
    functionName: MULT16_32_Q15
    functionSourceFile: /src/opus/celt/fixed_c6x.h
    functionUses: 16
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_32_Q15(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 51
    functionName: MAX16
    functionSourceFile: /src/opus/celt/fixed_c6x.h
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAX16(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 54
    functionName: MIN16
    functionSourceFile: /src/opus/celt/fixed_c6x.h
    functionUses: 12
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MIN16(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 57
    functionName: MAX32
    functionSourceFile: /src/opus/celt/fixed_c6x.h
    functionUses: 28
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAX32(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 60
    functionName: MIN32
    functionSourceFile: /src/opus/celt/fixed_c6x.h
    functionUses: 23
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MIN32(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 63
    functionName: VSHR32
    functionSourceFile: /src/opus/celt/fixed_c6x.h
    functionUses: 17
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VSHR32(a, shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 66
    functionName: MULT16_16_Q15
    functionSourceFile: /src/opus/celt/fixed_c6x.h
    functionUses: 16
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_16_Q15(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - len
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 68
    functionName: celt_maxabs16
    functionSourceFile: /src/opus/celt/fixed_c6x.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_maxabs16(x, len)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionName: opus_select_arch
    functionSourceFile: /src/opus/celt/cpu_support.h
    functionUses: 13
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE opus_select_arch(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_custom_mode_create
      Src: /src/opus/celt/celt_encoder.c:147,1
    - Dst: opus_custom_mode_create
      Src: /src/opus/celt/celt_encoder.c:149,1
    - Dst: opus_custom_encoder_get_size
      Src: /src/opus/celt/celt_encoder.c:151,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - channels
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 144
    functionDepth: 1
    functionLinenumber: 144
    functionLinenumberEnd: 152
    functionName: celt_encoder_get_size
    functionSourceFile: /src/opus/celt/celt_encoder.c
    functionUses: 1
    functionsReached:
    - opus_custom_mode_create
    - opus_custom_encoder_get_size
    linkageType: ''
    returnType: int
    signature: int celt_encoder_get_size(int channels)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QEXT_SCALE
      Src: /src/opus/celt/celt_encoder.c:167,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - mode
    - channels
    argTypes:
    - CELTMode*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 154
    functionDepth: 1
    functionLinenumber: 154
    functionLinenumberEnd: 174
    functionName: opus_custom_encoder_get_size
    functionSourceFile: /src/opus/celt/celt_encoder.c
    functionUses: 1
    functionsReached:
    - QEXT_SCALE
    linkageType: ''
    returnType: OPUS_CUSTOM_NOSTATIC
    signature: OPUS_CUSTOM_NOSTATIC opus_custom_encoder_get_size(const CELTMode *mode,
      int channels)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: opus_alloc
      Src: /src/opus/celt/celt_encoder.c:180,1
    - Dst: opus_custom_encoder_get_size
      Src: /src/opus/celt/celt_encoder.c:180,1
    - Dst: opus_custom_encoder_init
      Src: /src/opus/celt/celt_encoder.c:182,1
    - Dst: opus_custom_encoder_destroy
      Src: /src/opus/celt/celt_encoder.c:185,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 3
    argNames:
    - mode
    - channels
    - error
    argTypes:
    - CELTMode*
    - int
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 177
    functionDepth: 2
    functionLinenumber: 177
    functionLinenumberEnd: 191
    functionName: opus_custom_encoder_create
    functionSourceFile: /src/opus/celt/celt_encoder.c
    functionUses: 1
    functionsReached:
    - opus_custom_encoder_get_size
    - opus_custom_encoder_init
    - opus_alloc
    - opus_custom_encoder_destroy
    linkageType: ''
    returnType: CELTEncoder
    signature: CELTEncoder *opus_custom_encoder_create(const CELTMode *mode, int channels,
      int *error)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_CLEAR
      Src: /src/opus/celt/celt_encoder.c:203,1
    - Dst: opus_custom_encoder_get_size
      Src: /src/opus/celt/celt_encoder.c:203,1
    - Dst: opus_custom_encoder_ctl
      Src: /src/opus/celt/celt_encoder.c:228,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 4
    argNames:
    - st
    - mode
    - channels
    - arch
    argTypes:
    - CELTEncoder*
    - CELTMode*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 231
      start: 194
    functionDepth: 2
    functionLinenumber: 194
    functionLinenumberEnd: 231
    functionName: opus_custom_encoder_init_arch
    functionSourceFile: /src/opus/celt/celt_encoder.c
    functionUses: 0
    functionsReached:
    - opus_custom_encoder_ctl
    - OPUS_CLEAR
    - opus_custom_encoder_get_size
    linkageType: ''
    returnType: int
    signature: "int opus_custom_encoder_init_arch(CELTEncoder *st, const CELTMode
      *mode,\n                                         int channels, int arch)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_custom_encoder_init_arch
      Src: /src/opus/celt/celt_encoder.c:236,1
    - Dst: opus_select_arch
      Src: /src/opus/celt/celt_encoder.c:236,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - st
    - mode
    - channels
    argTypes:
    - CELTEncoder*
    - CELTMode*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 237
      start: 234
    functionDepth: 3
    functionLinenumber: 234
    functionLinenumberEnd: 237
    functionName: opus_custom_encoder_init
    functionSourceFile: /src/opus/celt/celt_encoder.c
    functionUses: 1
    functionsReached:
    - opus_custom_encoder_init_arch
    - opus_select_arch
    linkageType: ''
    returnType: int
    signature: int opus_custom_encoder_init(CELTEncoder *st, const CELTMode *mode,
      int channels)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: opus_custom_encoder_init_arch
      Src: /src/opus/celt/celt_encoder.c:247,1
    - Dst: opus_custom_mode_create
      Src: /src/opus/celt/celt_encoder.c:248,1
    - Dst: opus_custom_encoder_init_arch
      Src: /src/opus/celt/celt_encoder.c:251,1
    - Dst: opus_custom_mode_create
      Src: /src/opus/celt/celt_encoder.c:252,1
    - Dst: resampling_factor
      Src: /src/opus/celt/celt_encoder.c:255,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 4
    argNames:
    - st
    - sampling_rate
    - channels
    - arch
    argTypes:
    - CELTEncoder*
    - opus_int32
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 240
    functionDepth: 3
    functionLinenumber: 240
    functionLinenumberEnd: 257
    functionName: celt_encoder_init
    functionSourceFile: /src/opus/celt/celt_encoder.c
    functionUses: 1
    functionsReached:
    - opus_custom_encoder_init_arch
    - opus_custom_mode_create
    - resampling_factor
    linkageType: ''
    returnType: int
    signature: "int celt_encoder_init(CELTEncoder *st, opus_int32 sampling_rate, int
      channels,\n                      int arch)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_free
      Src: /src/opus/celt/celt_encoder.c:262,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - st
    argTypes:
    - CELTEncoder*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 260
    functionDepth: 1
    functionLinenumber: 260
    functionLinenumberEnd: 263
    functionName: opus_custom_encoder_destroy
    functionSourceFile: /src/opus/celt/celt_encoder.c
    functionUses: 2
    functionsReached:
    - opus_free
    linkageType: ''
    returnType: void
    signature: void opus_custom_encoder_destroy(CELTEncoder *st)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/celt/celt_encoder.c:272,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:283,1
    - Dst: IMAX
      Src: /src/opus/celt/celt_encoder.c:298,1
    - Dst: celt_ilog2
      Src: /src/opus/celt/celt_encoder.c:298,1
    - Dst: celt_maxabs32
      Src: /src/opus/celt/celt_encoder.c:298,1
    - Dst: ALLOC
      Src: /src/opus/celt/celt_encoder.c:300,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:312,1
    - Dst: SHR32
      Src: /src/opus/celt/celt_encoder.c:331,1
    - Dst: ADD32
      Src: /src/opus/celt/celt_encoder.c:332,1
    - Dst: SHL32
      Src: /src/opus/celt/celt_encoder.c:334,1
    - Dst: SHR32
      Src: /src/opus/celt/celt_encoder.c:335,1
    - Dst: SROUND16
      Src: /src/opus/celt/celt_encoder.c:345,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/celt/celt_encoder.c:350,1
    - Dst: celt_ilog2
      Src: /src/opus/celt/celt_encoder.c:356,1
    - Dst: MAX16
      Src: /src/opus/celt/celt_encoder.c:356,1
    - Dst: celt_maxabs16
      Src: /src/opus/celt/celt_encoder.c:356,1
    - Dst: SHL16
      Src: /src/opus/celt/celt_encoder.c:360,1
    - Dst: PSHR32
      Src: /src/opus/celt/celt_encoder.c:371,1
    - Dst: MULT16_16
      Src: /src/opus/celt/celt_encoder.c:371,1
    - Dst: MULT16_16
      Src: /src/opus/celt/celt_encoder.c:371,1
    - Dst: PSHR32
      Src: /src/opus/celt/celt_encoder.c:372,1
    - Dst: PSHR32
      Src: /src/opus/celt/celt_encoder.c:375,1
    - Dst: PSHR32
      Src: /src/opus/celt/celt_encoder.c:376,1
    - Dst: PSHR32
      Src: /src/opus/celt/celt_encoder.c:391,1
    - Dst: SHL32
      Src: /src/opus/celt/celt_encoder.c:391,1
    - Dst: PSHR32
      Src: /src/opus/celt/celt_encoder.c:392,1
    - Dst: MAX16
      Src: /src/opus/celt/celt_encoder.c:393,1
    - Dst: MAX16
      Src: /src/opus/celt/celt_encoder.c:397,1
    - Dst: MULT16_16
      Src: /src/opus/celt/celt_encoder.c:410,1
    - Dst: celt_sqrt
      Src: /src/opus/celt/celt_encoder.c:410,1
    - Dst: celt_sqrt
      Src: /src/opus/celt/celt_encoder.c:410,1
    - Dst: MULT16_16
      Src: /src/opus/celt/celt_encoder.c:410,1
    - Dst: celt_sqrt
      Src: /src/opus/celt/celt_encoder.c:412,1
    - Dst: SHL32
      Src: /src/opus/celt/celt_encoder.c:415,1
    - Dst: EXTEND32
      Src: /src/opus/celt/celt_encoder.c:415,1
    - Dst: ADD32
      Src: /src/opus/celt/celt_encoder.c:415,1
    - Dst: SHR32
      Src: /src/opus/celt/celt_encoder.c:415,1
    - Dst: celt_assert
      Src: /src/opus/celt/celt_encoder.c:423,1
    - Dst: celt_isnan
      Src: /src/opus/celt/celt_encoder.c:423,1
    - Dst: celt_assert
      Src: /src/opus/celt/celt_encoder.c:424,1
    - Dst: celt_isnan
      Src: /src/opus/celt/celt_encoder.c:424,1
    - Dst: MAX32
      Src: /src/opus/celt/celt_encoder.c:429,1
    - Dst: MIN32
      Src: /src/opus/celt/celt_encoder.c:429,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/celt_encoder.c:429,1
    - Dst: MAX32
      Src: /src/opus/celt/celt_encoder.c:431,1
    - Dst: MIN32
      Src: /src/opus/celt/celt_encoder.c:431,1
    - Dst: floor
      Src: /src/opus/celt/celt_encoder.c:431,1
    - Dst: QCONST32
      Src: /src/opus/celt/celt_encoder.c:447,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:447,1
    - Dst: MAX16
      Src: /src/opus/celt/celt_encoder.c:459,1
    - Dst: celt_sqrt
      Src: /src/opus/celt/celt_encoder.c:459,1
    - Dst: celt_sqrt
      Src: /src/opus/celt/celt_encoder.c:461,1
    - Dst: MAX32
      Src: /src/opus/celt/celt_encoder.c:461,1
    - Dst: SHL32
      Src: /src/opus/celt/celt_encoder.c:461,1
    - Dst: MULT16_16
      Src: /src/opus/celt/celt_encoder.c:461,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:461,1
    - Dst: MIN16
      Src: /src/opus/celt/celt_encoder.c:461,1
    - Dst: QCONST32
      Src: /src/opus/celt/celt_encoder.c:461,1
    - Dst: rand
      Src: /src/opus/celt/celt_encoder.c:465,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 80
    argCount: 9
    argNames:
    - OPUS_RESTRICT
    - len
    - C
    - tf_estimate
    - tf_chan
    - allow_weak_transients
    - weak_transient
    - tone_freq
    - toneishness
    argTypes:
    - opus_val32*
    - int
    - int
    - opus_val16*
    - int*
    - int
    - int*
    - opus_val16
    - opus_val32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 469
      start: 267
    functionDepth: 1
    functionLinenumber: 267
    functionLinenumberEnd: 469
    functionName: transient_analysis
    functionSourceFile: /src/opus/celt/celt_encoder.c
    functionUses: 0
    functionsReached:
    - OPUS_CLEAR
    - celt_isnan
    - MIN16
    - SHL32
    - PSHR32
    - QCONST32
    - MULT16_32_Q15
    - floor
    - VARDECL
    - ALLOC
    - celt_maxabs32
    - QCONST16
    - MAX16
    - celt_assert
    - rand
    - SROUND16
    - EXTEND32
    - SHR32
    - MAX32
    - IMAX
    - SHL16
    - MIN32
    - ADD32
    - MULT16_16
    - celt_ilog2
    - celt_sqrt
    - celt_maxabs16
    linkageType: ''
    returnType: int
    signature: "int transient_analysis(const opus_val32 * OPUS_RESTRICT in, int len,
      int C,\n                              opus_val16 *tf_estimate, int *tf_chan,
      int allow_weak_transients,\n                              int *weak_transient,
      opus_val16 tone_freq, opus_val32 toneishness)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: MAXG
      Src: /src/opus/celt/celt_encoder.c:485,1
    - Dst: GCONST
      Src: /src/opus/celt/celt_encoder.c:485,1
    - Dst: MAXG
      Src: /src/opus/celt/celt_encoder.c:487,1
    - Dst: MAXG
      Src: /src/opus/celt/celt_encoder.c:489,1
    - Dst: GCONST
      Src: /src/opus/celt/celt_encoder.c:489,1
    - Dst: MAXG
      Src: /src/opus/celt/celt_encoder.c:490,1
    - Dst: MAXG
      Src: /src/opus/celt/celt_encoder.c:493,1
    - Dst: GCONST
      Src: /src/opus/celt/celt_encoder.c:493,1
    - Dst: IMAX
      Src: /src/opus/celt/celt_encoder.c:496,1
    - Dst: MAXG
      Src: /src/opus/celt/celt_encoder.c:499,1
    - Dst: MAXG
      Src: /src/opus/celt/celt_encoder.c:500,1
    - Dst: ADD32
      Src: /src/opus/celt/celt_encoder.c:501,1
    - Dst: MAXG
      Src: /src/opus/celt/celt_encoder.c:501,1
    - Dst: SUB32
      Src: /src/opus/celt/celt_encoder.c:501,1
    - Dst: DIV32
      Src: /src/opus/celt/celt_encoder.c:504,1
    - Dst: IMAX
      Src: /src/opus/celt/celt_encoder.c:504,1
    - Dst: GCONST
      Src: /src/opus/celt/celt_encoder.c:506,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 6
    argNames:
    - newE
    - oldE
    - nbEBands
    - start
    - end
    - C
    argTypes:
    - celt_glog*
    - celt_glog*
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 507
      start: 473
    functionDepth: 1
    functionLinenumber: 473
    functionLinenumberEnd: 507
    functionName: patch_transient_decision
    functionSourceFile: /src/opus/celt/celt_encoder.c
    functionUses: 0
    functionsReached:
    - MAXG
    - ADD32
    - GCONST
    - DIV32
    - SUB32
    - IMAX
    linkageType: ''
    returnType: int
    signature: "int patch_transient_decision(celt_glog *newE, celt_glog *oldE, int
      nbEBands,\n      int start, int end, int C)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: clt_mdct_forward
      Src: /src/opus/celt/celt_encoder.c:534,1
    - Dst: ADD32
      Src: /src/opus/celt/celt_encoder.c:542,1
    - Dst: HALF32
      Src: /src/opus/celt/celt_encoder.c:542,1
    - Dst: HALF32
      Src: /src/opus/celt/celt_encoder.c:542,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/celt/celt_encoder.c:551,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 9
    argNames:
    - mode
    - shortBlocks
    - OPUS_RESTRICT
    - OPUS_RESTRICT
    - C
    - CC
    - LM
    - upsample
    - arch
    argTypes:
    - CELTMode*
    - int
    - celt_sig*
    - celt_sig*
    - int
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 554
      start: 511
    functionDepth: 1
    functionLinenumber: 511
    functionLinenumberEnd: 554
    functionName: compute_mdcts
    functionSourceFile: /src/opus/celt/celt_encoder.c
    functionUses: 0
    functionsReached:
    - clt_mdct_forward
    - HALF32
    - OPUS_CLEAR
    - ADD32
    linkageType: ''
    returnType: void
    signature: "void compute_mdcts(const CELTMode *mode, int shortBlocks, celt_sig
      * OPUS_RESTRICT in,\n                          celt_sig * OPUS_RESTRICT out,
      int C, int CC, int LM, int upsample,\n                          int arch)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: RES2SIG
      Src: /src/opus/celt/celt_encoder.c:574,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/celt_encoder.c:577,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/celt/celt_encoder.c:586,1
    - Dst: RES2SIG
      Src: /src/opus/celt/celt_encoder.c:589,1
    - Dst: MAX32
      Src: /src/opus/celt/celt_encoder.c:596,1
    - Dst: MIN32
      Src: /src/opus/celt/celt_encoder.c:596,1
    - Dst: MAX32
      Src: /src/opus/celt/celt_encoder.c:603,1
    - Dst: MIN32
      Src: /src/opus/celt/celt_encoder.c:603,1
    - Dst: SHL32
      Src: /src/opus/celt/celt_encoder.c:615,1
    - Dst: PSHR32
      Src: /src/opus/celt/celt_encoder.c:615,1
    - Dst: MULT16_16
      Src: /src/opus/celt/celt_encoder.c:615,1
    - Dst: QCONST32
      Src: /src/opus/celt/celt_encoder.c:615,1
    - Dst: MULT16_16
      Src: /src/opus/celt/celt_encoder.c:615,1
    - Dst: celt_assert
      Src: /src/opus/celt/celt_encoder.c:616,1
    - Dst: SHL32
      Src: /src/opus/celt/celt_encoder.c:626,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/celt_encoder.c:626,1
    - Dst: SHL32
      Src: /src/opus/celt/celt_encoder.c:628,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/celt_encoder.c:628,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/celt_encoder.c:631,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/celt_encoder.c:631,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/celt_encoder.c:642,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 44
    argCount: 8
    argNames:
    - OPUS_RESTRICT
    - OPUS_RESTRICT
    - N
    - CC
    - upsample
    - coef
    - mem
    - clip
    argTypes:
    - opus_res*
    - celt_sig*
    - int
    - int
    - int
    - opus_val16*
    - celt_sig*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 646
      start: 557
    functionDepth: 1
    functionLinenumber: 557
    functionLinenumberEnd: 646
    functionName: celt_preemphasis
    functionSourceFile: /src/opus/celt/celt_encoder.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - RES2SIG
    - OPUS_CLEAR
    - MIN32
    - MULT32_32_Q31
    - MULT16_16
    - MULT16_32_Q15
    - MAX32
    - SHL32
    - PSHR32
    - QCONST32
    linkageType: ''
    returnType: void
    signature: "void celt_preemphasis(const opus_res * OPUS_RESTRICT pcmp, celt_sig
      * OPUS_RESTRICT inp,\n                        int N, int CC, int upsample, const
      opus_val16 *coef, celt_sig *mem, int clip)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXTEND32
      Src: /src/opus/celt/celt_encoder.c:656,1
    - Dst: ABS16
      Src: /src/opus/celt/celt_encoder.c:656,1
    - Dst: SHR32
      Src: /src/opus/celt/celt_encoder.c:656,1
    - Dst: MAC16_32_Q15
      Src: /src/opus/celt/celt_encoder.c:658,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 4
    argNames:
    - tmp
    - N
    - LM
    - bias
    argTypes:
    - celt_norm*
    - int
    - int
    - opus_val16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 661
      start: 650
    functionDepth: 1
    functionLinenumber: 650
    functionLinenumberEnd: 661
    functionName: l1_metric
    functionSourceFile: /src/opus/celt/celt_encoder.c
    functionUses: 0
    functionsReached:
    - SHR32
    - MAC16_32_Q15
    - EXTEND32
    - ABS16
    linkageType: ''
    returnType: opus_val32
    signature: opus_val32 l1_metric(const celt_norm *tmp, int N, int LM, opus_val16
      bias)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/celt/celt_encoder.c:673,1
    - Dst: VARDECL
      Src: /src/opus/celt/celt_encoder.c:674,1
    - Dst: MULT16_16_Q14
      Src: /src/opus/celt/celt_encoder.c:681,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:681,1
    - Dst: MAX16
      Src: /src/opus/celt/celt_encoder.c:681,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:681,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:681,1
    - Dst: ALLOC
      Src: /src/opus/celt/celt_encoder.c:685,1
    - Dst: ALLOC
      Src: /src/opus/celt/celt_encoder.c:686,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/celt_encoder.c:699,1
    - Dst: l1_metric
      Src: /src/opus/celt/celt_encoder.c:704,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/celt_encoder.c:709,1
    - Dst: haar1
      Src: /src/opus/celt/celt_encoder.c:710,1
    - Dst: l1_metric
      Src: /src/opus/celt/celt_encoder.c:711,1
    - Dst: haar1
      Src: /src/opus/celt/celt_encoder.c:728,1
    - Dst: l1_metric
      Src: /src/opus/celt/celt_encoder.c:730,1
    - Dst: abs
      Src: /src/opus/celt/celt_encoder.c:755,1
    - Dst: abs
      Src: /src/opus/celt/celt_encoder.c:756,1
    - Dst: IMIN
      Src: /src/opus/celt/celt_encoder.c:760,1
    - Dst: IMIN
      Src: /src/opus/celt/celt_encoder.c:761,1
    - Dst: abs
      Src: /src/opus/celt/celt_encoder.c:762,1
    - Dst: abs
      Src: /src/opus/celt/celt_encoder.c:763,1
    - Dst: IMIN
      Src: /src/opus/celt/celt_encoder.c:765,1
    - Dst: abs
      Src: /src/opus/celt/celt_encoder.c:772,1
    - Dst: abs
      Src: /src/opus/celt/celt_encoder.c:773,1
    - Dst: abs
      Src: /src/opus/celt/celt_encoder.c:801,1
    - Dst: abs
      Src: /src/opus/celt/celt_encoder.c:802,1
    - Dst: rand
      Src: /src/opus/celt/celt_encoder.c:816,1
    - Dst: rand
      Src: /src/opus/celt/celt_encoder.c:817,1
    - Dst: rand
      Src: /src/opus/celt/celt_encoder.c:819,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 96
    argCount: 11
    argNames:
    - m
    - len
    - isTransient
    - tf_res
    - lambda
    - X
    - N0
    - LM
    - tf_estimate
    - tf_chan
    - importance
    argTypes:
    - CELTMode*
    - int
    - int
    - int*
    - int
    - celt_norm*
    - int
    - int
    - opus_val16
    - int
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 822
      start: 663
    functionDepth: 2
    functionLinenumber: 663
    functionLinenumberEnd: 822
    functionName: tf_analysis
    functionSourceFile: /src/opus/celt/celt_encoder.c
    functionUses: 0
    functionsReached:
    - rand
    - IMIN
    - MULT16_16_Q14
    - OPUS_COPY
    - abs
    - haar1
    - VARDECL
    - ALLOC
    - l1_metric
    - QCONST16
    - MAX16
    linkageType: ''
    returnType: int
    signature: "int tf_analysis(const CELTMode *m, int len, int isTransient,\n      int
      *tf_res, int lambda, celt_norm *X, int N0, int LM,\n      opus_val16 tf_estimate,
      int tf_chan, int *importance)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: ec_tell
      Src: /src/opus/celt/celt_encoder.c:833,1
    - Dst: ec_enc_bit_logp
      Src: /src/opus/celt/celt_encoder.c:843,1
    - Dst: ec_tell
      Src: /src/opus/celt/celt_encoder.c:844,1
    - Dst: ec_enc_bit_logp
      Src: /src/opus/celt/celt_encoder.c:856,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 7
    argNames:
    - start
    - end
    - isTransient
    - tf_res
    - LM
    - tf_select
    - enc
    argTypes:
    - int
    - int
    - int
    - int*
    - int
    - int
    - ec_enc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 862
      start: 824
    functionDepth: 2
    functionLinenumber: 824
    functionLinenumberEnd: 862
    functionName: tf_encode
    functionSourceFile: /src/opus/celt/celt_encoder.c
    functionUses: 0
    functionsReached:
    - ec_tell
    - ec_enc_bit_logp
    linkageType: ''
    returnType: void
    signature: void tf_encode(int start, int end, int isTransient, int *tf_res, int
      LM, int tf_select, ec_enc *enc)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:874,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:879,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:882,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:882,1
    - Dst: celt_inner_prod_norm_shift
      Src: /src/opus/celt/celt_encoder.c:892,1
    - Dst: ADD16
      Src: /src/opus/celt/celt_encoder.c:894,1
    - Dst: EXTRACT16
      Src: /src/opus/celt/celt_encoder.c:894,1
    - Dst: SHR32
      Src: /src/opus/celt/celt_encoder.c:894,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/celt_encoder.c:896,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:896,1
    - Dst: MIN16
      Src: /src/opus/celt/celt_encoder.c:897,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:897,1
    - Dst: ABS16
      Src: /src/opus/celt/celt_encoder.c:897,1
    - Dst: celt_inner_prod_norm_shift
      Src: /src/opus/celt/celt_encoder.c:902,1
    - Dst: MIN16
      Src: /src/opus/celt/celt_encoder.c:904,1
    - Dst: ABS16
      Src: /src/opus/celt/celt_encoder.c:904,1
    - Dst: EXTRACT16
      Src: /src/opus/celt/celt_encoder.c:904,1
    - Dst: SHR32
      Src: /src/opus/celt/celt_encoder.c:904,1
    - Dst: MIN16
      Src: /src/opus/celt/celt_encoder.c:906,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:906,1
    - Dst: ABS16
      Src: /src/opus/celt/celt_encoder.c:906,1
    - Dst: celt_log2
      Src: /src/opus/celt/celt_encoder.c:909,1
    - Dst: QCONST32
      Src: /src/opus/celt/celt_encoder.c:909,1
    - Dst: MULT16_16
      Src: /src/opus/celt/celt_encoder.c:909,1
    - Dst: MAX16
      Src: /src/opus/celt/celt_encoder.c:911,1
    - Dst: HALF16
      Src: /src/opus/celt/celt_encoder.c:911,1
    - Dst: celt_log2
      Src: /src/opus/celt/celt_encoder.c:911,1
    - Dst: QCONST32
      Src: /src/opus/celt/celt_encoder.c:911,1
    - Dst: MULT16_16
      Src: /src/opus/celt/celt_encoder.c:911,1
    - Dst: PSHR32
      Src: /src/opus/celt/celt_encoder.c:914,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:914,1
    - Dst: PSHR32
      Src: /src/opus/celt/celt_encoder.c:915,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:915,1
    - Dst: MAX16
      Src: /src/opus/celt/celt_encoder.c:918,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:918,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/celt_encoder.c:918,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:918,1
    - Dst: MIN16
      Src: /src/opus/celt/celt_encoder.c:919,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:919,1
    - Dst: HALF16
      Src: /src/opus/celt/celt_encoder.c:919,1
    - Dst: SHR32
      Src: /src/opus/celt/celt_encoder.c:926,1
    - Dst: MAX32
      Src: /src/opus/celt/celt_encoder.c:931,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:931,1
    - Dst: MIN32
      Src: /src/opus/celt/celt_encoder.c:931,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:931,1
    - Dst: SHR32
      Src: /src/opus/celt/celt_encoder.c:931,1
    - Dst: QCONST32
      Src: /src/opus/celt/celt_encoder.c:931,1
    - Dst: SHR16
      Src: /src/opus/celt/celt_encoder.c:932,1
    - Dst: SHR16
      Src: /src/opus/celt/celt_encoder.c:933,1
    - Dst: MAX16
      Src: /src/opus/celt/celt_encoder.c:937,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:937,1
    - Dst: MIN16
      Src: /src/opus/celt/celt_encoder.c:937,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:937,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:938,1
    - Dst: PSHR32
      Src: /src/opus/celt/celt_encoder.c:945,1
    - Dst: floor
      Src: /src/opus/celt/celt_encoder.c:947,1
    - Dst: IMAX
      Src: /src/opus/celt/celt_encoder.c:949,1
    - Dst: IMIN
      Src: /src/opus/celt/celt_encoder.c:949,1
    - Dst: rand
      Src: /src/opus/celt/celt_encoder.c:952,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 46
    argCount: 14
    argNames:
    - m
    - X
    - bandLogE
    - end
    - LM
    - C
    - N0
    - analysis
    - stereo_saving
    - tf_estimate
    - intensity
    - surround_trim
    - equiv_rate
    - arch
    argTypes:
    - CELTMode*
    - celt_norm*
    - celt_glog*
    - int
    - int
    - int
    - int
    - AnalysisInfo*
    - opus_val16*
    - opus_val16
    - int
    - celt_glog
    - opus_int32
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 955
      start: 865
    functionDepth: 1
    functionLinenumber: 865
    functionLinenumberEnd: 955
    functionName: alloc_trim_analysis
    functionSourceFile: /src/opus/celt/celt_encoder.c
    functionUses: 0
    functionsReached:
    - MIN16
    - PSHR32
    - QCONST32
    - celt_inner_prod_norm_shift
    - EXTRACT16
    - MULT16_16_Q15
    - floor
    - ADD16
    - QCONST16
    - MAX16
    - rand
    - celt_log2
    - MAX32
    - SHR32
    - IMAX
    - IMIN
    - MIN32
    - MULT16_16
    - SHR16
    - ABS16
    - HALF16
    linkageType: ''
    returnType: int
    signature: "int alloc_trim_analysis(const CELTMode *m, const celt_norm *X,\n      const
      celt_glog *bandLogE, int end, int LM, int C, int N0,\n      AnalysisInfo *analysis,
      opus_val16 *stereo_saving, opus_val16 tf_estimate,\n      int intensity, celt_glog
      surround_trim, opus_int32 equiv_rate, int arch)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SHR32
      Src: /src/opus/celt/celt_encoder.c:972,1
    - Dst: SHR32
      Src: /src/opus/celt/celt_encoder.c:973,1
    - Dst: ADD32
      Src: /src/opus/celt/celt_encoder.c:974,1
    - Dst: SUB32
      Src: /src/opus/celt/celt_encoder.c:975,1
    - Dst: ADD32
      Src: /src/opus/celt/celt_encoder.c:976,1
    - Dst: ADD32
      Src: /src/opus/celt/celt_encoder.c:976,1
    - Dst: ABS32
      Src: /src/opus/celt/celt_encoder.c:976,1
    - Dst: ABS32
      Src: /src/opus/celt/celt_encoder.c:976,1
    - Dst: ADD32
      Src: /src/opus/celt/celt_encoder.c:977,1
    - Dst: ADD32
      Src: /src/opus/celt/celt_encoder.c:977,1
    - Dst: ABS32
      Src: /src/opus/celt/celt_encoder.c:977,1
    - Dst: ABS32
      Src: /src/opus/celt/celt_encoder.c:977,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/celt_encoder.c:980,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:980,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/celt_encoder.c:985,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/celt_encoder.c:986,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 4
    argNames:
    - m
    - X
    - LM
    - N0
    argTypes:
    - CELTMode*
    - celt_norm*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 987
      start: 957
    functionDepth: 1
    functionLinenumber: 957
    functionLinenumberEnd: 987
    functionName: stereo_analysis
    functionSourceFile: /src/opus/celt/celt_encoder.c
    functionUses: 0
    functionsReached:
    - ADD32
    - MULT16_32_Q15
    - SHR32
    - QCONST16
    - ABS32
    - SUB32
    linkageType: ''
    returnType: int
    signature: "int stereo_analysis(const CELTMode *m, const celt_norm *X,\n      int
      LM, int N0)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 990
      start: 989
    functionDepth: 0
    functionLinenumber: 989
    functionLinenumberEnd: 990
    functionName: MSWAP
    functionSourceFile: /src/opus/celt/celt_encoder.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MSWAP(a,b)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: MSWAP
      Src: /src/opus/celt/celt_encoder.c:1012,1
    - Dst: MSWAP
      Src: /src/opus/celt/celt_encoder.c:1013,1
    - Dst: MING
      Src: /src/opus/celt/celt_encoder.c:1018,1
    - Dst: MING
      Src: /src/opus/celt/celt_encoder.c:1020,1
    - Dst: MING
      Src: /src/opus/celt/celt_encoder.c:1023,1
    - Dst: MING
      Src: /src/opus/celt/celt_encoder.c:1025,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 29
    argCount: 1
    argNames:
    - x
    argTypes:
    - celt_glog*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1027
      start: 990
    functionDepth: 1
    functionLinenumber: 990
    functionLinenumberEnd: 1027
    functionName: median_of_5
    functionSourceFile: /src/opus/celt/celt_encoder.c
    functionUses: 0
    functionsReached:
    - MING
    - MSWAP
    linkageType: ''
    returnType: celt_glog
    signature: celt_glog median_of_5(const celt_glog *x)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - x
    argTypes:
    - celt_glog*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1047
      start: 1029
    functionDepth: 0
    functionLinenumber: 1029
    functionLinenumberEnd: 1047
    functionName: median_of_3
    functionSourceFile: /src/opus/celt/celt_encoder.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: celt_glog
    signature: celt_glog median_of_3(const celt_glog *x)
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/celt/celt_encoder.c:1059,1
    - Dst: VARDECL
      Src: /src/opus/celt/celt_encoder.c:1060,1
    - Dst: VARDECL
      Src: /src/opus/celt/celt_encoder.c:1061,1
    - Dst: ALLOC
      Src: /src/opus/celt/celt_encoder.c:1063,1
    - Dst: ALLOC
      Src: /src/opus/celt/celt_encoder.c:1064,1
    - Dst: ALLOC
      Src: /src/opus/celt/celt_encoder.c:1065,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/celt/celt_encoder.c:1066,1
    - Dst: GCONST
      Src: /src/opus/celt/celt_encoder.c:1068,1
    - Dst: GCONST
      Src: /src/opus/celt/celt_encoder.c:1073,1
    - Dst: GCONST
      Src: /src/opus/celt/celt_encoder.c:1074,1
    - Dst: SHL32
      Src: /src/opus/celt/celt_encoder.c:1074,1
    - Dst: SHL32
      Src: /src/opus/celt/celt_encoder.c:1074,1
    - Dst: GCONST
      Src: /src/opus/celt/celt_encoder.c:1075,1
    - Dst: MAXG
      Src: /src/opus/celt/celt_encoder.c:1080,1
    - Dst: VARDECL
      Src: /src/opus/celt/celt_encoder.c:1085,1
    - Dst: VARDECL
      Src: /src/opus/celt/celt_encoder.c:1086,1
    - Dst: ALLOC
      Src: /src/opus/celt/celt_encoder.c:1087,1
    - Dst: ALLOC
      Src: /src/opus/celt/celt_encoder.c:1088,1
    - Dst: MAXG
      Src: /src/opus/celt/celt_encoder.c:1094,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/celt_encoder.c:1096,1
    - Dst: MAXG
      Src: /src/opus/celt/celt_encoder.c:1098,1
    - Dst: GCONST
      Src: /src/opus/celt/celt_encoder.c:1098,1
    - Dst: MAXG
      Src: /src/opus/celt/celt_encoder.c:1100,1
    - Dst: GCONST
      Src: /src/opus/celt/celt_encoder.c:1100,1
    - Dst: MAXG
      Src: /src/opus/celt/celt_encoder.c:1104,1
    - Dst: MAXG
      Src: /src/opus/celt/celt_encoder.c:1104,1
    - Dst: GCONST
      Src: /src/opus/celt/celt_encoder.c:1104,1
    - Dst: PSHR32
      Src: /src/opus/celt/celt_encoder.c:1108,1
    - Dst: MAXG
      Src: /src/opus/celt/celt_encoder.c:1108,1
    - Dst: GCONST
      Src: /src/opus/celt/celt_encoder.c:1108,1
    - Dst: MING
      Src: /src/opus/celt/celt_encoder.c:1108,1
    - Dst: IMIN
      Src: /src/opus/celt/celt_encoder.c:1110,1
    - Dst: IMAX
      Src: /src/opus/celt/celt_encoder.c:1110,1
    - Dst: floor
      Src: /src/opus/celt/celt_encoder.c:1110,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/celt_encoder.c:1129,1
    - Dst: IMIN
      Src: /src/opus/celt/celt_encoder.c:1135,1
    - Dst: MAXG
      Src: /src/opus/celt/celt_encoder.c:1135,1
    - Dst: GCONST
      Src: /src/opus/celt/celt_encoder.c:1144,1
    - Dst: MING
      Src: /src/opus/celt/celt_encoder.c:1146,1
    - Dst: GCONST
      Src: /src/opus/celt/celt_encoder.c:1146,1
    - Dst: MING
      Src: /src/opus/celt/celt_encoder.c:1149,1
    - Dst: MING
      Src: /src/opus/celt/celt_encoder.c:1149,1
    - Dst: GCONST
      Src: /src/opus/celt/celt_encoder.c:1149,1
    - Dst: GCONST
      Src: /src/opus/celt/celt_encoder.c:1154,1
    - Dst: MAXG
      Src: /src/opus/celt/celt_encoder.c:1156,1
    - Dst: median_of_5
      Src: /src/opus/celt/celt_encoder.c:1156,1
    - Dst: median_of_3
      Src: /src/opus/celt/celt_encoder.c:1157,1
    - Dst: MAXG
      Src: /src/opus/celt/celt_encoder.c:1158,1
    - Dst: MAXG
      Src: /src/opus/celt/celt_encoder.c:1159,1
    - Dst: median_of_3
      Src: /src/opus/celt/celt_encoder.c:1160,1
    - Dst: MAXG
      Src: /src/opus/celt/celt_encoder.c:1161,1
    - Dst: MAXG
      Src: /src/opus/celt/celt_encoder.c:1162,1
    - Dst: MAXG
      Src: /src/opus/celt/celt_encoder.c:1165,1
    - Dst: MAXG
      Src: /src/opus/celt/celt_encoder.c:1172,1
    - Dst: GCONST
      Src: /src/opus/celt/celt_encoder.c:1172,1
    - Dst: MAXG
      Src: /src/opus/celt/celt_encoder.c:1173,1
    - Dst: GCONST
      Src: /src/opus/celt/celt_encoder.c:1173,1
    - Dst: HALF32
      Src: /src/opus/celt/celt_encoder.c:1174,1
    - Dst: MAXG
      Src: /src/opus/celt/celt_encoder.c:1174,1
    - Dst: MAXG
      Src: /src/opus/celt/celt_encoder.c:1174,1
    - Dst: MAXG
      Src: /src/opus/celt/celt_encoder.c:1179,1
    - Dst: MAXG
      Src: /src/opus/celt/celt_encoder.c:1183,1
    - Dst: PSHR32
      Src: /src/opus/celt/celt_encoder.c:1187,1
    - Dst: celt_exp2_db
      Src: /src/opus/celt/celt_encoder.c:1187,1
    - Dst: MING
      Src: /src/opus/celt/celt_encoder.c:1187,1
    - Dst: GCONST
      Src: /src/opus/celt/celt_encoder.c:1187,1
    - Dst: floor
      Src: /src/opus/celt/celt_encoder.c:1189,1
    - Dst: celt_exp2_db
      Src: /src/opus/celt/celt_encoder.c:1189,1
    - Dst: MING
      Src: /src/opus/celt/celt_encoder.c:1189,1
    - Dst: GCONST
      Src: /src/opus/celt/celt_encoder.c:1189,1
    - Dst: HALF32
      Src: /src/opus/celt/celt_encoder.c:1196,1
    - Dst: HALF32
      Src: /src/opus/celt/celt_encoder.c:1203,1
    - Dst: QCONST32
      Src: /src/opus/celt/celt_encoder.c:1206,1
    - Dst: PSHR32
      Src: /src/opus/celt/celt_encoder.c:1208,1
    - Dst: QEXT_SCALE
      Src: /src/opus/celt/celt_encoder.c:1208,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:1208,1
    - Dst: floor
      Src: /src/opus/celt/celt_encoder.c:1210,1
    - Dst: QEXT_SCALE
      Src: /src/opus/celt/celt_encoder.c:1210,1
    - Dst: GCONST
      Src: /src/opus/celt/celt_encoder.c:1213,1
    - Dst: GCONST
      Src: /src/opus/celt/celt_encoder.c:1214,1
    - Dst: GCONST
      Src: /src/opus/celt/celt_encoder.c:1215,1
    - Dst: GCONST
      Src: /src/opus/celt/celt_encoder.c:1216,1
    - Dst: GCONST
      Src: /src/opus/celt/celt_encoder.c:1219,1
    - Dst: GCONST
      Src: /src/opus/celt/celt_encoder.c:1220,1
    - Dst: IMIN
      Src: /src/opus/celt/celt_encoder.c:1228,1
    - Dst: GCONST
      Src: /src/opus/celt/celt_encoder.c:1229,1
    - Dst: MING
      Src: /src/opus/celt/celt_encoder.c:1238,1
    - Dst: GCONST
      Src: /src/opus/celt/celt_encoder.c:1238,1
    - Dst: SHR32
      Src: /src/opus/celt/celt_encoder.c:1240,1
    - Dst: SHR32
      Src: /src/opus/celt/celt_encoder.c:1244,1
    - Dst: SHR32
      Src: /src/opus/celt/celt_encoder.c:1247,1
    - Dst: SHR32
      Src: /src/opus/celt/celt_encoder.c:1250,1
    CyclomaticComplexity: 53
    EdgeCount: 53
    ICount: 145
    argCount: 24
    argNames:
    - bandLogE
    - bandLogE2
    - oldBandE
    - nbEBands
    - start
    - end
    - C
    - offsets
    - lsb_depth
    - logN
    - isTransient
    - vbr
    - constrained_vbr
    - eBands
    - LM
    - effectiveBytes
    - tot_boost_
    - lfe
    - surround_dynalloc
    - analysis
    - importance
    - spread_weight
    - tone_freq
    - "toneishness\n      ARG_QEXT"
    argTypes:
    - celt_glog*
    - celt_glog*
    - celt_glog*
    - int
    - int
    - int
    - int
    - int*
    - int
    - opus_int16*
    - int
    - int
    - int
    - opus_int16*
    - int
    - int
    - opus_int32*
    - int
    - celt_glog*
    - AnalysisInfo*
    - int*
    - int*
    - opus_val16
    - opus_val32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1273
      start: 1049
    functionDepth: 2
    functionLinenumber: 1049
    functionLinenumberEnd: 1273
    functionName: dynalloc_analysis
    functionSourceFile: /src/opus/celt/celt_encoder.c
    functionUses: 0
    functionsReached:
    - QEXT_SCALE
    - OPUS_CLEAR
    - celt_exp2_db
    - OPUS_COPY
    - median_of_3
    - SHL32
    - PSHR32
    - QCONST32
    - floor
    - MING
    - VARDECL
    - ALLOC
    - HALF32
    - QCONST16
    - median_of_5
    - SHR32
    - IMAX
    - IMIN
    - MAXG
    - GCONST
    linkageType: ''
    returnType: celt_glog
    signature: "celt_glog dynalloc_analysis(const celt_glog *bandLogE, const celt_glog
      *bandLogE2, const celt_glog *oldBandE,\n      int nbEBands, int start, int end,
      int C, int *offsets, int lsb_depth, const opus_int16 *logN,\n      int isTransient,
      int vbr, int constrained_vbr, const opus_int16 *eBands, int LM,\n      int effectiveBytes,
      opus_int32 *tot_boost_, int lfe, celt_glog *surround_dynalloc,\n      AnalysisInfo
      *analysis, int *importance, int *spread_weight, opus_val16 tone_freq, opus_val32
      toneishness\n      ARG_QEXT(int qext_scale))"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ADD32
      Src: /src/opus/celt/celt_encoder.c:1281,1
    - Dst: SHR32
      Src: /src/opus/celt/celt_encoder.c:1281,1
    - Dst: MULT16_16
      Src: /src/opus/celt/celt_encoder.c:1281,1
    - Dst: celt_ilog2
      Src: /src/opus/celt/celt_encoder.c:1283,1
    - Dst: PSHR32
      Src: /src/opus/celt/celt_encoder.c:1286,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - x
    - len
    argTypes:
    - opus_val16*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1289
      start: 1276
    functionDepth: 0
    functionLinenumber: 1276
    functionLinenumberEnd: 1289
    functionName: normalize_tone_input
    functionSourceFile: /src/opus/celt/celt_encoder.c
    functionUses: 0
    functionsReached:
    - ADD32
    - MULT16_16
    - celt_ilog2
    - SHR32
    - PSHR32
    linkageType: ''
    returnType: void
    signature: void normalize_tone_input(opus_val16 *x, int len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: abs
      Src: /src/opus/celt/celt_encoder.c:1294,1
    - Dst: celt_sqrt
      Src: /src/opus/celt/celt_encoder.c:1298,1
    - Dst: IMAX
      Src: /src/opus/celt/celt_encoder.c:1298,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - x
    argTypes:
    - opus_val32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1301
      start: 1290
    functionDepth: 1
    functionLinenumber: 1290
    functionLinenumberEnd: 1301
    functionName: acos_approx
    functionSourceFile: /src/opus/celt/celt_encoder.c
    functionUses: 0
    functionsReached:
    - abs
    - IMAX
    - celt_sqrt
    linkageType: ''
    returnType: int
    signature: int acos_approx(opus_val32 x)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/celt/celt_encoder.c:1310,1
    - Dst: MULT16_16
      Src: /src/opus/celt/celt_encoder.c:1313,1
    - Dst: MULT16_16
      Src: /src/opus/celt/celt_encoder.c:1314,1
    - Dst: MULT16_16
      Src: /src/opus/celt/celt_encoder.c:1315,1
    - Dst: MULT16_16
      Src: /src/opus/celt/celt_encoder.c:1318,1
    - Dst: MULT16_16
      Src: /src/opus/celt/celt_encoder.c:1318,1
    - Dst: MULT16_16
      Src: /src/opus/celt/celt_encoder.c:1321,1
    - Dst: MULT16_16
      Src: /src/opus/celt/celt_encoder.c:1321,1
    - Dst: MULT16_16
      Src: /src/opus/celt/celt_encoder.c:1324,1
    - Dst: MULT16_16
      Src: /src/opus/celt/celt_encoder.c:1324,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/celt_encoder.c:1343,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/celt_encoder.c:1343,1
    - Dst: SHR32
      Src: /src/opus/celt/celt_encoder.c:1345,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/celt_encoder.c:1345,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/celt_encoder.c:1347,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/celt_encoder.c:1349,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/celt_encoder.c:1349,1
    - Dst: QCONST32
      Src: /src/opus/celt/celt_encoder.c:1350,1
    - Dst: QCONST32
      Src: /src/opus/celt/celt_encoder.c:1351,1
    - Dst: frac_div32_q29
      Src: /src/opus/celt/celt_encoder.c:1352,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/celt_encoder.c:1353,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/celt_encoder.c:1353,1
    - Dst: HALF32
      Src: /src/opus/celt/celt_encoder.c:1354,1
    - Dst: QCONST32
      Src: /src/opus/celt/celt_encoder.c:1354,1
    - Dst: HALF32
      Src: /src/opus/celt/celt_encoder.c:1355,1
    - Dst: QCONST32
      Src: /src/opus/celt/celt_encoder.c:1355,1
    - Dst: frac_div32_q29
      Src: /src/opus/celt/celt_encoder.c:1356,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 50
    argCount: 4
    argNames:
    - x
    - len
    - delay
    - lpc
    argTypes:
    - opus_val16*
    - int
    - int
    - opus_val32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1359
      start: 1305
    functionDepth: 1
    functionLinenumber: 1305
    functionLinenumberEnd: 1359
    functionName: tone_lpc
    functionSourceFile: /src/opus/celt/celt_encoder.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - MULT32_32_Q31
    - MULT16_16
    - frac_div32_q29
    - HALF32
    - SHR32
    - QCONST32
    linkageType: ''
    returnType: int
    signature: int tone_lpc(const opus_val16 *x, int len, int delay, opus_val32 *lpc)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/celt/celt_encoder.c:1368,1
    - Dst: ALLOC
      Src: /src/opus/celt/celt_encoder.c:1370,1
    - Dst: PSHR32
      Src: /src/opus/celt/celt_encoder.c:1373,1
    - Dst: ADD32
      Src: /src/opus/celt/celt_encoder.c:1373,1
    - Dst: SHR32
      Src: /src/opus/celt/celt_encoder.c:1373,1
    - Dst: SHR32
      Src: /src/opus/celt/celt_encoder.c:1373,1
    - Dst: PSHR32
      Src: /src/opus/celt/celt_encoder.c:1375,1
    - Dst: normalize_tone_input
      Src: /src/opus/celt/celt_encoder.c:1378,1
    - Dst: tone_lpc
      Src: /src/opus/celt/celt_encoder.c:1380,1
    - Dst: QCONST32
      Src: /src/opus/celt/celt_encoder.c:1382,1
    - Dst: tone_lpc
      Src: /src/opus/celt/celt_encoder.c:1384,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/celt_encoder.c:1387,1
    - Dst: MULT32_32_Q31
      Src: /src/opus/celt/celt_encoder.c:1387,1
    - Dst: QCONST32
      Src: /src/opus/celt/celt_encoder.c:1387,1
    - Dst: acos_approx
      Src: /src/opus/celt/celt_encoder.c:1391,1
    - Dst: acos
      Src: /src/opus/celt/celt_encoder.c:1393,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 27
    argCount: 5
    argNames:
    - in
    - CC
    - N
    - toneishness
    - Fs
    argTypes:
    - celt_sig*
    - int
    - int
    - opus_val32*
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1402
      start: 1362
    functionDepth: 2
    functionLinenumber: 1362
    functionLinenumberEnd: 1402
    functionName: tone_detect
    functionSourceFile: /src/opus/celt/celt_encoder.c
    functionUses: 0
    functionsReached:
    - MULT32_32_Q31
    - acos
    - ADD32
    - VARDECL
    - ALLOC
    - normalize_tone_input
    - SHR32
    - tone_lpc
    - PSHR32
    - QCONST32
    - acos_approx
    linkageType: ''
    returnType: opus_val16
    signature: opus_val16 tone_detect(const celt_sig *in, int CC, int N, opus_val32
      *toneishness, opus_int32 Fs)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/celt/celt_encoder.c:1409,1
    - Dst: QEXT_SCALE
      Src: /src/opus/celt/celt_encoder.c:1423,1
    - Dst: QEXT_SCALE
      Src: /src/opus/celt/celt_encoder.c:1424,1
    - Dst: ALLOC
      Src: /src/opus/celt/celt_encoder.c:1427,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/celt_encoder.c:1434,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/celt_encoder.c:1435,1
    - Dst: QCONST32
      Src: /src/opus/celt/celt_encoder.c:1440,1
    - Dst: QEXT_SCALE
      Src: /src/opus/celt/celt_encoder.c:1444,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:1444,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:1444,1
    - Dst: QEXT_SCALE
      Src: /src/opus/celt/celt_encoder.c:1447,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:1447,1
    - Dst: QEXT_SCALE
      Src: /src/opus/celt/celt_encoder.c:1448,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:1448,1
    - Dst: IMIN
      Src: /src/opus/celt/celt_encoder.c:1450,1
    - Dst: QEXT_SCALE
      Src: /src/opus/celt/celt_encoder.c:1450,1
    - Dst: QEXT_SCALE
      Src: /src/opus/celt/celt_encoder.c:1450,1
    - Dst: IMIN
      Src: /src/opus/celt/celt_encoder.c:1452,1
    - Dst: floor
      Src: /src/opus/celt/celt_encoder.c:1452,1
    - Dst: QEXT_SCALE
      Src: /src/opus/celt/celt_encoder.c:1452,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:1460,1
    - Dst: VARDECL
      Src: /src/opus/celt/celt_encoder.c:1462,1
    - Dst: ALLOC
      Src: /src/opus/celt/celt_encoder.c:1463,1
    - Dst: pitch_downsample
      Src: /src/opus/celt/celt_encoder.c:1465,1
    - Dst: pitch_search
      Src: /src/opus/celt/celt_encoder.c:1468,1
    - Dst: remove_doubling
      Src: /src/opus/celt/celt_encoder.c:1473,1
    - Dst: QEXT_SCALE
      Src: /src/opus/celt/celt_encoder.c:1475,1
    - Dst: QEXT_SCALE
      Src: /src/opus/celt/celt_encoder.c:1476,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/celt_encoder.c:1480,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:1480,1
    - Dst: HALF32
      Src: /src/opus/celt/celt_encoder.c:1483,1
    - Dst: HALF32
      Src: /src/opus/celt/celt_encoder.c:1485,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:1499,1
    - Dst: abs
      Src: /src/opus/celt/celt_encoder.c:1502,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:1504,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:1506,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:1510,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:1512,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:1513,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:1514,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:1515,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:1516,1
    - Dst: MAX16
      Src: /src/opus/celt/celt_encoder.c:1519,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:1519,1
    - Dst: ABS16
      Src: /src/opus/celt/celt_encoder.c:1528,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:1528,1
    - Dst: floor
      Src: /src/opus/celt/celt_encoder.c:1534,1
    - Dst: IMAX
      Src: /src/opus/celt/celt_encoder.c:1536,1
    - Dst: IMIN
      Src: /src/opus/celt/celt_encoder.c:1536,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:1537,1
    - Dst: IMAX
      Src: /src/opus/celt/celt_encoder.c:1545,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/celt_encoder.c:1546,1
    - Dst: ABS32
      Src: /src/opus/celt/celt_encoder.c:1547,1
    - Dst: SHR32
      Src: /src/opus/celt/celt_encoder.c:1547,1
    - Dst: comb_filter
      Src: /src/opus/celt/celt_encoder.c:1549,1
    - Dst: comb_filter
      Src: /src/opus/celt/celt_encoder.c:1553,1
    - Dst: ABS32
      Src: /src/opus/celt/celt_encoder.c:1556,1
    - Dst: SHR32
      Src: /src/opus/celt/celt_encoder.c:1556,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/celt_encoder.c:1561,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/celt_encoder.c:1561,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:1561,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/celt_encoder.c:1561,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:1561,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/celt_encoder.c:1562,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/celt_encoder.c:1562,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:1562,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/celt_encoder.c:1562,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:1562,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/celt_encoder.c:1575,1
    - Dst: comb_filter
      Src: /src/opus/celt/celt_encoder.c:1576,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/celt_encoder.c:1586,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/celt_encoder.c:1590,1
    - Dst: OPUS_MOVE
      Src: /src/opus/celt/celt_encoder.c:1592,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/celt_encoder.c:1593,1
    CyclomaticComplexity: 35
    EdgeCount: 35
    ICount: 128
    argCount: 16
    argNames:
    - st
    - in
    - prefilter_mem
    - CC
    - N
    - prefilter_tapset
    - pitch
    - gain
    - qgain
    - enabled
    - complexity
    - tf_estimate
    - nbAvailableBytes
    - analysis
    - tone_freq
    - toneishness ARG_QEXT
    argTypes:
    - CELTEncoder*
    - celt_sig*
    - celt_sig*
    - int
    - int
    - int
    - int*
    - opus_val16*
    - int*
    - int
    - int
    - opus_val16
    - int
    - AnalysisInfo*
    - opus_val16
    - opus_val32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1602
      start: 1404
    functionDepth: 1
    functionLinenumber: 1404
    functionLinenumberEnd: 1602
    functionName: run_prefilter
    functionSourceFile: /src/opus/celt/celt_encoder.c
    functionUses: 0
    functionsReached:
    - QEXT_SCALE
    - OPUS_COPY
    - OPUS_MOVE
    - ABS32
    - QCONST32
    - remove_doubling
    - MULT16_32_Q15
    - floor
    - MULT16_16_Q15
    - VARDECL
    - ALLOC
    - HALF32
    - QCONST16
    - comb_filter
    - MAX16
    - abs
    - SHR32
    - IMAX
    - IMIN
    - ABS16
    - pitch_downsample
    - pitch_search
    linkageType: ''
    returnType: int
    signature: "int run_prefilter(CELTEncoder *st, celt_sig *in, celt_sig *prefilter_mem,
      int CC, int N,\n      int prefilter_tapset, int *pitch, opus_val16 *gain, int
      *qgain, int enabled, int complexity, opus_val16 tf_estimate,\n      int nbAvailableBytes,
      AnalysisInfo *analysis, opus_val16 tone_freq, opus_val32 toneishness ARG_QEXT(int
      qext_scale))"
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: IMIN
      Src: /src/opus/celt/celt_encoder.c:1625,1
    - Dst: IMIN
      Src: /src/opus/celt/celt_encoder.c:1640,1
    - Dst: DIV32_16
      Src: /src/opus/celt/celt_encoder.c:1643,1
    - Dst: MULT16_16
      Src: /src/opus/celt/celt_encoder.c:1643,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:1643,1
    - Dst: MIN16
      Src: /src/opus/celt/celt_encoder.c:1644,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:1644,1
    - Dst: MIN32
      Src: /src/opus/celt/celt_encoder.c:1646,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/celt_encoder.c:1646,1
    - Dst: SHR32
      Src: /src/opus/celt/celt_encoder.c:1647,1
    - Dst: MULT16_16
      Src: /src/opus/celt/celt_encoder.c:1647,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:1647,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:1652,1
    - Dst: SHL32
      Src: /src/opus/celt/celt_encoder.c:1653,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/celt_encoder.c:1653,1
    - Dst: MAX16
      Src: /src/opus/celt/celt_encoder.c:1663,1
    - Dst: SHR32
      Src: /src/opus/celt/celt_encoder.c:1677,1
    - Dst: MULT16_16
      Src: /src/opus/celt/celt_encoder.c:1677,1
    - Dst: SHR32
      Src: /src/opus/celt/celt_encoder.c:1677,1
    - Dst: IMAX
      Src: /src/opus/celt/celt_encoder.c:1679,1
    - Dst: SHR32
      Src: /src/opus/celt/celt_encoder.c:1690,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/celt_encoder.c:1690,1
    - Dst: IMAX
      Src: /src/opus/celt/celt_encoder.c:1691,1
    - Dst: IMIN
      Src: /src/opus/celt/celt_encoder.c:1692,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/celt_encoder.c:1700,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:1700,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:1703,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/celt_encoder.c:1707,1
    - Dst: QCONST16
      Src: /src/opus/celt/celt_encoder.c:1707,1
    - Dst: IMAX
      Src: /src/opus/celt/celt_encoder.c:1707,1
    - Dst: IMIN
      Src: /src/opus/celt/celt_encoder.c:1707,1
    - Dst: SHR32
      Src: /src/opus/celt/celt_encoder.c:1708,1
    - Dst: MULT16_16
      Src: /src/opus/celt/celt_encoder.c:1708,1
    - Dst: SHR32
      Src: /src/opus/celt/celt_encoder.c:1708,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/celt_encoder.c:1709,1
    - Dst: IMIN
      Src: /src/opus/celt/celt_encoder.c:1713,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 49
    argCount: 18
    argNames:
    - mode
    - analysis
    - base_target
    - LM
    - bitrate
    - lastCodedBands
    - C
    - intensity
    - constrained_vbr
    - stereo_saving
    - tot_boost
    - tf_estimate
    - pitch_change
    - maxDepth
    - lfe
    - has_surround_mask
    - surround_masking
    - temporal_vbr ARG_QEXT
    argTypes:
    - CELTMode*
    - AnalysisInfo*
    - opus_int32
    - int
    - opus_int32
    - int
    - int
    - int
    - int
    - opus_val16
    - int
    - opus_val16
    - int
    - celt_glog
    - int
    - int
    - celt_glog
    - celt_glog
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1716
      start: 1604
    functionDepth: 1
    functionLinenumber: 1604
    functionLinenumberEnd: 1716
    functionName: compute_vbr
    functionSourceFile: /src/opus/celt/celt_encoder.c
    functionUses: 0
    functionsReached:
    - IMIN
    - MIN32
    - MULT16_16
    - MULT16_32_Q15
    - MULT16_16_Q15
    - MIN16
    - IMAX
    - SHR32
    - QCONST16
    - SHL32
    - DIV32_16
    - MAX16
    linkageType: ''
    returnType: int
    signature: "int compute_vbr(const CELTMode *mode, AnalysisInfo *analysis, opus_int32
      base_target,\n      int LM, opus_int32 bitrate, int lastCodedBands, int C, int
      intensity,\n      int constrained_vbr, opus_val16 stereo_saving, int tot_boost,\n
      \     opus_val16 tf_estimate, int pitch_change, celt_glog maxDepth,\n      int
      lfe, int has_surround_mask, celt_glog surround_masking,\n      celt_glog temporal_vbr
      ARG_QEXT(int enable_qext))"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ec_enc_uint
      Src: /src/opus/celt/celt_encoder.c:1720,1
    - Dst: ec_enc_bit_logp
      Src: /src/opus/celt/celt_encoder.c:1721,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 4
    argNames:
    - ec
    - qext_end
    - qext_intensity
    - qext_dual_stereo
    argTypes:
    - ec_enc*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1722
      start: 1719
    functionDepth: 1
    functionLinenumber: 1719
    functionLinenumberEnd: 1722
    functionName: encode_qext_stereo_params
    functionSourceFile: /src/opus/celt/celt_encoder.c
    functionUses: 0
    functionsReached:
    - ec_enc_uint
    - ec_enc_bit_logp
    linkageType: ''
    returnType: void
    signature: void encode_qext_stereo_params(ec_enc *ec, int qext_end, int qext_intensity,
      int qext_dual_stereo)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: opus_alloc
      Src: /src/opus/celt/modes.c:99,1
    - Dst: opus_alloc
      Src: /src/opus/celt/modes.c:117,1
    - Dst: celt_assert
      Src: /src/opus/celt/modes.c:159,1
    - Dst: celt_assert
      Src: /src/opus/celt/modes.c:161,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 48
    argCount: 4
    argNames:
    - Fs
    - frame_size
    - res
    - nbEBands
    argTypes:
    - opus_int32
    - int
    - int
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 90
    functionDepth: 1
    functionLinenumber: 90
    functionLinenumberEnd: 165
    functionName: compute_ebands
    functionSourceFile: /src/opus/celt/modes.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - opus_alloc
    linkageType: ''
    returnType: opus_int16
    signature: opus_int16 *compute_ebands(opus_int32 Fs, int frame_size, int res,
      int *nbEBands)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: opus_alloc
      Src: /src/opus/celt/modes.c:174,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 28
    argCount: 1
    argNames:
    - mode
    argTypes:
    - CELTMode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 167
    functionDepth: 1
    functionLinenumber: 167
    functionLinenumberEnd: 223
    functionName: compute_allocation_table
    functionSourceFile: /src/opus/celt/modes.c
    functionUses: 0
    functionsReached:
    - opus_alloc
    linkageType: ''
    returnType: void
    signature: void compute_allocation_table(CELTMode *mode)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: opus_select_arch
      Src: /src/opus/celt/modes.c:443,1
    - Dst: opus_free
      Src: /src/opus/celt/modes.c:461,1
    - Dst: opus_free
      Src: /src/opus/celt/modes.c:462,1
    - Dst: opus_free
      Src: /src/opus/celt/modes.c:463,1
    - Dst: opus_free
      Src: /src/opus/celt/modes.c:465,1
    - Dst: opus_free
      Src: /src/opus/celt/modes.c:466,1
    - Dst: opus_free
      Src: /src/opus/celt/modes.c:468,1
    - Dst: opus_free
      Src: /src/opus/celt/modes.c:469,1
    - Dst: opus_free
      Src: /src/opus/celt/modes.c:471,1
    - Dst: opus_free
      Src: /src/opus/celt/modes.c:472,1
    - Dst: opus_free
      Src: /src/opus/celt/modes.c:473,1
    - Dst: clt_mdct_clear
      Src: /src/opus/celt/modes.c:474,1
    - Dst: opus_free
      Src: /src/opus/celt/modes.c:476,1
    - Dst: celt_assert
      Src: /src/opus/celt/modes.c:479,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 26
    argCount: 1
    argNames:
    - mode
    argTypes:
    - CELTMode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 481
      start: 441
    functionDepth: 3
    functionLinenumber: 441
    functionLinenumberEnd: 481
    functionName: opus_custom_mode_destroy
    functionSourceFile: /src/opus/celt/modes.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - clt_mdct_clear
    - opus_select_arch
    - opus_free
    linkageType: ''
    returnType: void
    signature: void opus_custom_mode_destroy(CELTMode *mode)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: OPUS_COPY
      Src: /src/opus/celt/modes.c:503,1
    - Dst: celt_assert
      Src: /src/opus/celt/modes.c:511,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/modes.c:518,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 2
    argNames:
    - qext
    - m
    argTypes:
    - CELTMode*
    - CELTMode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 519
      start: 501
    functionDepth: 1
    functionLinenumber: 501
    functionLinenumberEnd: 519
    functionName: compute_qext_mode
    functionSourceFile: /src/opus/celt/modes.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - OPUS_COPY
    linkageType: ''
    returnType: void
    signature: void compute_qext_mode(CELTMode *qext, const CELTMode *m)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_cvt_ss2si
      Src: /src/opus/celt/float_cast.h:68,1
    - Dst: _mm_set_ss
      Src: /src/opus/celt/float_cast.h:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: float2int
    functionSourceFile: /src/opus/celt/float_cast.h
    functionUses: 9
    functionsReached:
    - _mm_set_ss
    - _mm_cvt_ss2si
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE float2int(float x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_cvtss_si32
      Src: /src/opus/celt/float_cast.h:79,1
    - Dst: _mm_load_ss
      Src: /src/opus/celt/float_cast.h:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - value
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 80
    functionName: float2int
    functionSourceFile: /src/opus/celt/float_cast.h
    functionUses: 9
    functionsReached:
    - _mm_load_ss
    - _mm_cvtss_si32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE float2int(float value)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - flt
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 100
    functionName: opus_int32
    functionSourceFile: /src/opus/celt/float_cast.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE opus_int32\n        float2int (float flt)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vcvtns_s32_f32
      Src: /src/opus/celt/float_cast.h:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - flt
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 107
    functionName: float2int
    functionSourceFile: /src/opus/celt/float_cast.h
    functionUses: 9
    functionsReached:
    - vcvtns_s32_f32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE float2int(float flt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 126
    functionName: float2int
    functionSourceFile: /src/opus/celt/float_cast.h
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: float2int(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 137
    functionName: float2int
    functionSourceFile: /src/opus/celt/float_cast.h
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: float2int(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - flt
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 147
    functionName: float2int
    functionSourceFile: /src/opus/celt/float_cast.h
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: float2int(flt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MAX32
      Src: /src/opus/celt/float_cast.h:153,1
    - Dst: MIN32
      Src: /src/opus/celt/float_cast.h:154,1
    - Dst: float2int
      Src: /src/opus/celt/float_cast.h:155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 150
    functionDepth: 1
    functionLinenumber: 150
    functionLinenumberEnd: 156
    functionName: FLOAT2INT16
    functionSourceFile: /src/opus/celt/float_cast.h
    functionUses: 2
    functionsReached:
    - float2int
    - MIN32
    - MAX32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE FLOAT2INT16(float x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MAX32
      Src: /src/opus/celt/float_cast.h:161,1
    - Dst: MIN32
      Src: /src/opus/celt/float_cast.h:162,1
    - Dst: float2int
      Src: /src/opus/celt/float_cast.h:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 164
    functionName: FLOAT2INT24
    functionSourceFile: /src/opus/celt/float_cast.h
    functionUses: 0
    functionsReached:
    - float2int
    - MIN32
    - MAX32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE FLOAT2INT24(float x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MAX32
      Src: /src/opus/celt/float_cast.h:169,1
    - Dst: MIN32
      Src: /src/opus/celt/float_cast.h:170,1
    - Dst: float2int
      Src: /src/opus/celt/float_cast.h:171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 166
    functionDepth: 1
    functionLinenumber: 166
    functionLinenumberEnd: 172
    functionName: FLOAT2SIG
    functionSourceFile: /src/opus/celt/float_cast.h
    functionUses: 1
    functionsReached:
    - float2int
    - MIN32
    - MAX32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE FLOAT2SIG(float x)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - _this
    - _value
    argTypes:
    - ec_enc*
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 64
    functionName: ec_write_byte
    functionSourceFile: /src/opus/celt/entenc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int ec_write_byte(ec_enc *_this,unsigned _value)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - _this
    - _value
    argTypes:
    - ec_enc*
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 70
    functionName: ec_write_byte_at_end
    functionSourceFile: /src/opus/celt/entenc.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int ec_write_byte_at_end(ec_enc *_this,unsigned _value)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ec_write_byte
      Src: /src/opus/celt/entenc.c:89,1
    - Dst: ec_write_byte
      Src: /src/opus/celt/entenc.c:93,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - _this
    - _c
    argTypes:
    - ec_enc*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 99
    functionName: ec_enc_carry_out
    functionSourceFile: /src/opus/celt/entenc.c
    functionUses: 0
    functionsReached:
    - ec_write_byte
    linkageType: ''
    returnType: void
    signature: void ec_enc_carry_out(ec_enc *_this,int _c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ec_enc_carry_out
      Src: /src/opus/celt/entenc.c:104,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - _this
    argTypes:
    - ec_enc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 101
    functionDepth: 2
    functionLinenumber: 101
    functionLinenumberEnd: 110
    functionName: ec_enc_normalize
    functionSourceFile: /src/opus/celt/entenc.c
    functionUses: 0
    functionsReached:
    - ec_enc_carry_out
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE ec_enc_normalize(ec_enc *_this)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 3
    argNames:
    - _this
    - _buf
    - _size
    argTypes:
    - ec_enc*
    - unsigned char*
    - opus_uint32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 126
    functionName: ec_enc_init
    functionSourceFile: /src/opus/celt/entenc.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ec_enc_init(ec_enc *_this,unsigned char *_buf,opus_uint32 _size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: celt_udiv
      Src: /src/opus/celt/entenc.c:130,1
    - Dst: IMUL32
      Src: /src/opus/celt/entenc.c:132,1
    - Dst: IMUL32
      Src: /src/opus/celt/entenc.c:133,1
    - Dst: IMUL32
      Src: /src/opus/celt/entenc.c:135,1
    - Dst: ec_enc_normalize
      Src: /src/opus/celt/entenc.c:136,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - _this
    - _fl
    - _fh
    - _ft
    argTypes:
    - ec_enc*
    - unsigned
    - unsigned
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 128
    functionDepth: 3
    functionLinenumber: 128
    functionLinenumberEnd: 137
    functionName: ec_encode
    functionSourceFile: /src/opus/celt/entenc.c
    functionUses: 2
    functionsReached:
    - ec_enc_normalize
    - celt_udiv
    - IMUL32
    linkageType: ''
    returnType: void
    signature: void ec_encode(ec_enc *_this,unsigned _fl,unsigned _fh,unsigned _ft)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: IMUL32
      Src: /src/opus/celt/entenc.c:143,1
    - Dst: IMUL32
      Src: /src/opus/celt/entenc.c:144,1
    - Dst: IMUL32
      Src: /src/opus/celt/entenc.c:146,1
    - Dst: ec_enc_normalize
      Src: /src/opus/celt/entenc.c:147,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - _this
    - _fl
    - _fh
    - _bits
    argTypes:
    - ec_enc*
    - unsigned
    - unsigned
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 139
    functionDepth: 3
    functionLinenumber: 139
    functionLinenumberEnd: 148
    functionName: ec_encode_bin
    functionSourceFile: /src/opus/celt/entenc.c
    functionUses: 1
    functionsReached:
    - ec_enc_normalize
    - IMUL32
    linkageType: ''
    returnType: void
    signature: void ec_encode_bin(ec_enc *_this,unsigned _fl,unsigned _fh,unsigned
      _bits)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ec_enc_normalize
      Src: /src/opus/celt/entenc.c:161,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 3
    argNames:
    - _this
    - _val
    - _logp
    argTypes:
    - ec_enc*
    - int
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 151
    functionDepth: 3
    functionLinenumber: 151
    functionLinenumberEnd: 162
    functionName: ec_enc_bit_logp
    functionSourceFile: /src/opus/celt/entenc.c
    functionUses: 7
    functionsReached:
    - ec_enc_normalize
    linkageType: ''
    returnType: void
    signature: void ec_enc_bit_logp(ec_enc *_this,int _val,unsigned _logp)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: IMUL32
      Src: /src/opus/celt/entenc.c:168,1
    - Dst: IMUL32
      Src: /src/opus/celt/entenc.c:169,1
    - Dst: IMUL32
      Src: /src/opus/celt/entenc.c:171,1
    - Dst: ec_enc_normalize
      Src: /src/opus/celt/entenc.c:172,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - _this
    - _s
    - _icdf
    - _ftb
    argTypes:
    - ec_enc*
    - int
    - unsigned char*
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 164
    functionDepth: 3
    functionLinenumber: 164
    functionLinenumberEnd: 173
    functionName: ec_enc_icdf
    functionSourceFile: /src/opus/celt/entenc.c
    functionUses: 9
    functionsReached:
    - ec_enc_normalize
    - IMUL32
    linkageType: ''
    returnType: void
    signature: void ec_enc_icdf(ec_enc *_this,int _s,const unsigned char *_icdf,unsigned
      _ftb)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: IMUL32
      Src: /src/opus/celt/entenc.c:179,1
    - Dst: IMUL32
      Src: /src/opus/celt/entenc.c:180,1
    - Dst: IMUL32
      Src: /src/opus/celt/entenc.c:182,1
    - Dst: ec_enc_normalize
      Src: /src/opus/celt/entenc.c:183,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 4
    argNames:
    - _this
    - _s
    - _icdf
    - _ftb
    argTypes:
    - ec_enc*
    - int
    - opus_uint16*
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 175
    functionDepth: 3
    functionLinenumber: 175
    functionLinenumberEnd: 184
    functionName: ec_enc_icdf16
    functionSourceFile: /src/opus/celt/entenc.c
    functionUses: 1
    functionsReached:
    - ec_enc_normalize
    - IMUL32
    linkageType: ''
    returnType: void
    signature: void ec_enc_icdf16(ec_enc *_this,int _s,const opus_uint16 *_icdf,unsigned
      _ftb)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/celt/entenc.c:191,1
    - Dst: EC_ILOG
      Src: /src/opus/celt/entenc.c:193,1
    - Dst: ec_encode
      Src: /src/opus/celt/entenc.c:198,1
    - Dst: ec_enc_bits
      Src: /src/opus/celt/entenc.c:199,1
    - Dst: ec_encode
      Src: /src/opus/celt/entenc.c:201,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 3
    argNames:
    - _this
    - _fl
    - _ft
    argTypes:
    - ec_enc*
    - opus_uint32
    - opus_uint32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 186
    functionDepth: 4
    functionLinenumber: 186
    functionLinenumberEnd: 202
    functionName: ec_enc_uint
    functionSourceFile: /src/opus/celt/entenc.c
    functionUses: 9
    functionsReached:
    - ec_enc_bits
    - celt_assert
    - ec_encode
    - EC_ILOG
    linkageType: ''
    returnType: void
    signature: void ec_enc_uint(ec_enc *_this,opus_uint32 _fl,opus_uint32 _ft)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/celt/entenc.c:209,1
    - Dst: ec_write_byte_at_end
      Src: /src/opus/celt/entenc.c:212,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 3
    argNames:
    - _this
    - _fl
    - _bits
    argTypes:
    - ec_enc*
    - opus_uint32
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 204
    functionDepth: 1
    functionLinenumber: 204
    functionLinenumberEnd: 223
    functionName: ec_enc_bits
    functionSourceFile: /src/opus/celt/entenc.c
    functionUses: 8
    functionsReached:
    - celt_assert
    - ec_write_byte_at_end
    linkageType: ''
    returnType: void
    signature: void ec_enc_bits(ec_enc *_this,opus_uint32 _fl,unsigned _bits)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/celt/entenc.c:228,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - _this
    - _val
    - _nbits
    argTypes:
    - ec_enc*
    - unsigned
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 225
    functionDepth: 1
    functionLinenumber: 225
    functionLinenumberEnd: 246
    functionName: ec_enc_patch_initial_bits
    functionSourceFile: /src/opus/celt/entenc.c
    functionUses: 1
    functionsReached:
    - celt_assert
    linkageType: ''
    returnType: void
    signature: void ec_enc_patch_initial_bits(ec_enc *_this,unsigned _val,unsigned
      _nbits)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/celt/entenc.c:249,1
    - Dst: OPUS_MOVE
      Src: /src/opus/celt/entenc.c:250,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - _this
    - _size
    argTypes:
    - ec_enc*
    - opus_uint32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 248
    functionDepth: 1
    functionLinenumber: 248
    functionLinenumberEnd: 253
    functionName: ec_enc_shrink
    functionSourceFile: /src/opus/celt/entenc.c
    functionUses: 2
    functionsReached:
    - celt_assert
    - OPUS_MOVE
    linkageType: ''
    returnType: void
    signature: void ec_enc_shrink(ec_enc *_this,opus_uint32 _size)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: EC_ILOG
      Src: /src/opus/celt/entenc.c:263,1
    - Dst: ec_enc_carry_out
      Src: /src/opus/celt/entenc.c:272,1
    - Dst: ec_enc_carry_out
      Src: /src/opus/celt/entenc.c:277,1
    - Dst: ec_write_byte_at_end
      Src: /src/opus/celt/entenc.c:282,1
    - Dst: OPUS_CLEAR
      Src: /src/opus/celt/entenc.c:288,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 38
    argCount: 1
    argNames:
    - _this
    argTypes:
    - ec_enc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 255
    functionDepth: 2
    functionLinenumber: 255
    functionLinenumberEnd: 305
    functionName: ec_enc_done
    functionSourceFile: /src/opus/celt/entenc.c
    functionUses: 3
    functionsReached:
    - OPUS_CLEAR
    - ec_write_byte_at_end
    - EC_ILOG
    - ec_enc_carry_out
    linkageType: ''
    returnType: void
    signature: void ec_enc_done(ec_enc *_this)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _maj
    - ','
    - _min
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionName: __GNUC_PREREQ
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: __GNUC_PREREQ(_maj,_min)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _maj
    - ','
    - _min
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 46
    functionName: __GNUC_PREREQ
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: __GNUC_PREREQ(_maj,_min)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 51
    functionName: opus_likely
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: opus_likely(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 52
    functionName: opus_unlikely
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: opus_unlikely(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 54
    functionName: opus_likely
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: opus_likely(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 55
    functionName: opus_unlikely
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: opus_unlikely(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - str
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 60
    functionName: CELT_FATAL
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CELT_FATAL(str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/celt/arch.h:75,1
    - Dst: _set_abort_behavior
      Src: /src/opus/celt/arch.h:77,1
    - Dst: abort
      Src: /src/opus/celt/arch.h:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - str
    - file
    - line
    argTypes:
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 80
    functionName: celt_fatal
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 0
    functionsReached:
    - _set_abort_behavior
    - abort
    - fprintf
    linkageType: ''
    returnType: void
    signature: void celt_fatal(const char *str, const char *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - cond
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 84
    functionName: celt_assert
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 186
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_assert(cond)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - cond
    - ','
    - message
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 85
    functionName: celt_assert2
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_assert2(cond, message)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - call
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 86
    functionName: MUST_SUCCEED
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MUST_SUCCEED(call)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - cond
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 88
    functionName: celt_assert
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 186
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_assert(cond)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - cond
    - ','
    - message
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 89
    functionName: celt_assert2
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_assert2(cond, message)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - call
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 90
    functionName: MUST_SUCCEED
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MUST_SUCCEED(call)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - cond
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 94
    functionName: celt_sig_assert
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 14
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_sig_assert(cond)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - cond
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 96
    functionName: celt_sig_assert
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 14
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_sig_assert(cond)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 99
    functionName: IMUL32
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IMUL32(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 101
    functionName: MIN16
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 15
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MIN16(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 102
    functionName: MAX16
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 15
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAX16(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 103
    functionName: MIN32
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 30
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MIN32(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 104
    functionName: MAX32
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 34
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAX32(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 105
    functionName: IMIN
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 58
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IMIN(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 106
    functionName: IMAX
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 55
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: IMAX(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 107
    functionName: FMIN
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FMIN(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 108
    functionName: FMAX
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FMAX(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 109
    functionName: UADD32
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: UADD32(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 110
    functionName: USUB32
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: USUB32(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 111
    functionName: MAXG
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAXG(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 112
    functionName: MING
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MING(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - arg
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 132
    functionName: ARG_FIXED
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ARG_FIXED(arg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 153
    functionName: SIG2RES
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SIG2RES(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 154
    functionName: RES2INT16
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RES2INT16(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 155
    functionName: RES2INT24
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RES2INT24(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 156
    functionName: RES2FLOAT
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RES2FLOAT(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 157
    functionName: INT16TORES
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: INT16TORES(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 158
    functionName: INT24TORES
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: INT24TORES(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 159
    functionName: ADD_RES
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ADD_RES(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 160
    functionName: FLOAT2RES
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FLOAT2RES(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 160
    functionDepth: 0
    functionLinenumber: 160
    functionLinenumberEnd: 161
    functionName: RES2SIG
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RES2SIG(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 162
    functionName: MULT16_RES_Q15
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_RES_Q15(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 167
    functionName: SIG2RES
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SIG2RES(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 168
    functionName: RES2INT16
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RES2INT16(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 169
    functionName: RES2INT24
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RES2INT24(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 170
    functionName: RES2FLOAT
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RES2FLOAT(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 171
    functionName: INT16TORES
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: INT16TORES(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 172
    functionName: INT24TORES
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: INT24TORES(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 173
    functionName: ADD_RES
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ADD_RES(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 174
    functionName: FLOAT2RES
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FLOAT2RES(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 174
    functionDepth: 0
    functionLinenumber: 174
    functionLinenumberEnd: 175
    functionName: RES2SIG
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RES2SIG(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 176
    functionName: MULT16_RES_Q15
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_RES_Q15(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 180
    functionName: RES2VAL16
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RES2VAL16(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 181
    functionName: INT16TOSIG
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: INT16TOSIG(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 182
    functionName: INT24TOSIG
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: INT24TOSIG(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 188
    functionName: MULT_COEF_32
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT_COEF_32(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - c
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 189
    functionName: MAC_COEF_32_ARM
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAC_COEF_32_ARM(c, a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 190
    functionName: MULT_COEF
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT_COEF(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 191
    functionName: MULT_COEF_TAPS
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT_COEF_TAPS(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 192
    functionName: COEF2VAL16
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: COEF2VAL16(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 196
    functionName: MULT_COEF_32
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT_COEF_32(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 197
    functionName: MAC_COEF_32_ARM
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAC_COEF_32_ARM(a, b, c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 198
    functionName: MULT_COEF
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT_COEF(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 199
    functionName: MULT_COEF_TAPS
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT_COEF_TAPS(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 200
    functionName: COEF2VAL16
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: COEF2VAL16(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 203
    functionName: celt_isnan
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_isnan(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 227
    functionDepth: 0
    functionLinenumber: 227
    functionLinenumberEnd: 228
    functionName: ABS16
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ABS16(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 228
    functionDepth: 0
    functionLinenumber: 228
    functionLinenumberEnd: 229
    functionName: ABS32
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ABS32(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 230
    functionDepth: 0
    functionLinenumber: 230
    functionLinenumberEnd: 232
    functionName: SAT16
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 41
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE SAT16(opus_int32 x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 273
    functionDepth: 0
    functionLinenumber: 273
    functionLinenumberEnd: 278
    functionName: celt_isnan
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE celt_isnan(float x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 283
    functionDepth: 0
    functionLinenumber: 283
    functionLinenumberEnd: 284
    functionName: celt_isnan
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_isnan(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 289
    functionDepth: 0
    functionLinenumber: 289
    functionLinenumberEnd: 290
    functionName: COEF2VAL16
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: COEF2VAL16(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 300
      start: 299
    functionDepth: 0
    functionLinenumber: 299
    functionLinenumberEnd: 300
    functionName: ABS16
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ABS16(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 300
    functionDepth: 0
    functionLinenumber: 300
    functionLinenumberEnd: 301
    functionName: ABS32
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ABS32(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - bits
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 302
    functionDepth: 0
    functionLinenumber: 302
    functionLinenumberEnd: 303
    functionName: QCONST16
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 16
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: QCONST16(x,bits)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - bits
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 303
    functionDepth: 0
    functionLinenumber: 303
    functionLinenumberEnd: 304
    functionName: QCONST32
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 16
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: QCONST32(x,bits)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 304
    functionDepth: 0
    functionLinenumber: 304
    functionLinenumberEnd: 305
    functionName: GCONST
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 15
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GCONST(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 307
      start: 306
    functionDepth: 0
    functionLinenumber: 306
    functionLinenumberEnd: 307
    functionName: NEG16
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NEG16(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 308
      start: 307
    functionDepth: 0
    functionLinenumber: 307
    functionLinenumberEnd: 308
    functionName: NEG32
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NEG32(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 308
    functionDepth: 0
    functionLinenumber: 308
    functionLinenumberEnd: 309
    functionName: NEG32_ovflw
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NEG32_ovflw(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 309
    functionDepth: 0
    functionLinenumber: 309
    functionLinenumberEnd: 310
    functionName: EXTRACT16
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EXTRACT16(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 311
      start: 310
    functionDepth: 0
    functionLinenumber: 310
    functionLinenumberEnd: 311
    functionName: EXTEND32
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 18
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EXTEND32(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 311
    functionDepth: 0
    functionLinenumber: 311
    functionLinenumberEnd: 312
    functionName: SHR16
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SHR16(a,shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 312
    functionDepth: 0
    functionLinenumber: 312
    functionLinenumberEnd: 313
    functionName: SHL16
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SHL16(a,shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 313
    functionDepth: 0
    functionLinenumber: 313
    functionLinenumberEnd: 314
    functionName: SHR32
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 61
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SHR32(a,shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 314
    functionDepth: 0
    functionLinenumber: 314
    functionLinenumberEnd: 315
    functionName: SHL32
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 49
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SHL32(a,shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 315
    functionDepth: 0
    functionLinenumber: 315
    functionLinenumberEnd: 316
    functionName: PSHR32
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 27
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PSHR32(a,shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 317
      start: 316
    functionDepth: 0
    functionLinenumber: 316
    functionLinenumberEnd: 317
    functionName: VSHR32
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 17
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VSHR32(a,shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 319
      start: 318
    functionDepth: 0
    functionLinenumber: 318
    functionLinenumberEnd: 319
    functionName: SHR64
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SHR64(a,shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 321
      start: 320
    functionDepth: 0
    functionLinenumber: 320
    functionLinenumberEnd: 321
    functionName: PSHR
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PSHR(a,shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 321
    functionDepth: 0
    functionLinenumber: 321
    functionLinenumberEnd: 322
    functionName: SHR
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SHR(a,shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 322
    functionDepth: 0
    functionLinenumber: 322
    functionLinenumberEnd: 323
    functionName: SHL
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SHL(a,shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 323
    functionDepth: 0
    functionLinenumber: 323
    functionLinenumberEnd: 324
    functionName: SATURATE
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SATURATE(x,a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 324
    functionDepth: 0
    functionLinenumber: 324
    functionLinenumberEnd: 325
    functionName: SATURATE16
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SATURATE16(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 327
      start: 326
    functionDepth: 0
    functionLinenumber: 326
    functionLinenumberEnd: 327
    functionName: ROUND16
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ROUND16(a,shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 327
    functionDepth: 0
    functionLinenumber: 327
    functionLinenumberEnd: 328
    functionName: SROUND16
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SROUND16(a,shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 328
    functionDepth: 0
    functionLinenumber: 328
    functionLinenumberEnd: 329
    functionName: HALF16
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: HALF16(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 329
    functionDepth: 0
    functionLinenumber: 329
    functionLinenumberEnd: 330
    functionName: HALF32
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: HALF32(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 331
    functionDepth: 0
    functionLinenumber: 331
    functionLinenumberEnd: 332
    functionName: ADD16
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 12
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ADD16(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 333
      start: 332
    functionDepth: 0
    functionLinenumber: 332
    functionLinenumberEnd: 333
    functionName: SUB16
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SUB16(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 333
    functionDepth: 0
    functionLinenumber: 333
    functionLinenumberEnd: 334
    functionName: ADD32
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 53
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ADD32(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 335
      start: 334
    functionDepth: 0
    functionLinenumber: 334
    functionLinenumberEnd: 335
    functionName: SUB32
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 31
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SUB32(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 335
    functionDepth: 0
    functionLinenumber: 335
    functionLinenumberEnd: 336
    functionName: ADD32_ovflw
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 13
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ADD32_ovflw(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 337
      start: 336
    functionDepth: 0
    functionLinenumber: 336
    functionLinenumberEnd: 337
    functionName: SUB32_ovflw
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 13
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SUB32_ovflw(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 337
    functionDepth: 0
    functionLinenumber: 337
    functionLinenumberEnd: 338
    functionName: SHL32_ovflw
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SHL32_ovflw(a,shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 338
    functionDepth: 0
    functionLinenumber: 338
    functionLinenumberEnd: 339
    functionName: PSHR32_ovflw
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PSHR32_ovflw(a,shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 340
    functionDepth: 0
    functionLinenumber: 340
    functionLinenumberEnd: 341
    functionName: MULT16_16_16
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_16_16(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 341
    functionDepth: 0
    functionLinenumber: 341
    functionLinenumberEnd: 342
    functionName: MULT16_16
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 21
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_16(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - c
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 342
    functionDepth: 0
    functionLinenumber: 342
    functionLinenumberEnd: 343
    functionName: MAC16_16
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 13
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAC16_16(c,a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 344
    functionDepth: 0
    functionLinenumber: 344
    functionLinenumberEnd: 345
    functionName: MULT16_32_Q15
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 21
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_32_Q15(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 345
    functionDepth: 0
    functionLinenumber: 345
    functionLinenumberEnd: 346
    functionName: MULT16_32_Q16
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_32_Q16(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 348
      start: 347
    functionDepth: 0
    functionLinenumber: 347
    functionLinenumberEnd: 348
    functionName: MULT32_32_Q16
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT32_32_Q16(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 348
    functionDepth: 0
    functionLinenumber: 348
    functionLinenumberEnd: 349
    functionName: MULT32_32_Q31
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 26
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT32_32_Q31(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 350
      start: 349
    functionDepth: 0
    functionLinenumber: 349
    functionLinenumberEnd: 350
    functionName: MULT32_32_P31
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT32_32_P31(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 351
      start: 350
    functionDepth: 0
    functionLinenumber: 350
    functionLinenumberEnd: 351
    functionName: MULT32_32_P31_ovflw
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT32_32_P31_ovflw(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - c
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 353
      start: 352
    functionDepth: 0
    functionLinenumber: 352
    functionLinenumberEnd: 353
    functionName: MAC16_32_Q15
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAC16_32_Q15(c,a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - c
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 353
    functionDepth: 0
    functionLinenumber: 353
    functionLinenumberEnd: 354
    functionName: MAC16_32_Q16
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAC16_32_Q16(c,a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - c
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 355
      start: 354
    functionDepth: 0
    functionLinenumber: 354
    functionLinenumberEnd: 355
    functionName: MAC_COEF_32_ARM
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAC_COEF_32_ARM(c,a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 356
    functionDepth: 0
    functionLinenumber: 356
    functionLinenumberEnd: 357
    functionName: MULT16_16_Q11_32
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_16_Q11_32(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 358
      start: 357
    functionDepth: 0
    functionLinenumber: 357
    functionLinenumberEnd: 358
    functionName: MULT16_16_Q11
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_16_Q11(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 358
    functionDepth: 0
    functionLinenumber: 358
    functionLinenumberEnd: 359
    functionName: MULT16_16_Q13
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_16_Q13(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 359
    functionDepth: 0
    functionLinenumber: 359
    functionLinenumberEnd: 360
    functionName: MULT16_16_Q14
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_16_Q14(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 361
      start: 360
    functionDepth: 0
    functionLinenumber: 360
    functionLinenumberEnd: 361
    functionName: MULT16_16_Q15
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 19
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_16_Q15(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 361
    functionDepth: 0
    functionLinenumber: 361
    functionLinenumberEnd: 362
    functionName: MULT16_16_P15
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_16_P15(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 363
      start: 362
    functionDepth: 0
    functionLinenumber: 362
    functionLinenumberEnd: 363
    functionName: MULT16_16_P13
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_16_P13(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 363
    functionDepth: 0
    functionLinenumber: 363
    functionLinenumberEnd: 364
    functionName: MULT16_16_P14
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_16_P14(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 365
      start: 364
    functionDepth: 0
    functionLinenumber: 364
    functionLinenumberEnd: 365
    functionName: MULT16_32_P16
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_32_P16(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 367
      start: 366
    functionDepth: 0
    functionLinenumber: 366
    functionLinenumberEnd: 367
    functionName: MULT_COEF_32
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT_COEF_32(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 367
    functionDepth: 0
    functionLinenumber: 367
    functionLinenumberEnd: 368
    functionName: MULT_COEF
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT_COEF(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 368
    functionDepth: 0
    functionLinenumber: 368
    functionLinenumberEnd: 369
    functionName: MULT_COEF_TAPS
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT_COEF_TAPS(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 370
    functionDepth: 0
    functionLinenumber: 370
    functionLinenumberEnd: 371
    functionName: DIV32_16
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 31
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DIV32_16(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 372
      start: 371
    functionDepth: 0
    functionLinenumber: 371
    functionLinenumberEnd: 372
    functionName: DIV32
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 18
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DIV32(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 373
    functionDepth: 0
    functionLinenumber: 373
    functionLinenumberEnd: 374
    functionName: SIG2RES
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SIG2RES(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 374
    functionDepth: 0
    functionLinenumber: 374
    functionLinenumberEnd: 375
    functionName: RES2INT16
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RES2INT16(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 375
    functionDepth: 0
    functionLinenumber: 375
    functionLinenumberEnd: 376
    functionName: RES2INT24
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RES2INT24(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 376
    functionDepth: 0
    functionLinenumber: 376
    functionLinenumberEnd: 377
    functionName: RES2FLOAT
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RES2FLOAT(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 378
      start: 377
    functionDepth: 0
    functionLinenumber: 377
    functionLinenumberEnd: 378
    functionName: INT16TORES
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: INT16TORES(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 378
    functionDepth: 0
    functionLinenumber: 378
    functionLinenumberEnd: 379
    functionName: INT24TORES
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: INT24TORES(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 379
    functionDepth: 0
    functionLinenumber: 379
    functionLinenumberEnd: 380
    functionName: ADD_RES
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ADD_RES(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 381
      start: 380
    functionDepth: 0
    functionLinenumber: 380
    functionLinenumberEnd: 381
    functionName: FLOAT2RES
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FLOAT2RES(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 382
      start: 381
    functionDepth: 0
    functionLinenumber: 381
    functionLinenumberEnd: 382
    functionName: RES2SIG
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RES2SIG(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 383
      start: 382
    functionDepth: 0
    functionLinenumber: 382
    functionLinenumberEnd: 383
    functionName: MULT16_RES_Q15
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_RES_Q15(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 384
    functionDepth: 0
    functionLinenumber: 384
    functionLinenumberEnd: 385
    functionName: RES2VAL16
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: RES2VAL16(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 386
      start: 385
    functionDepth: 0
    functionLinenumber: 385
    functionLinenumberEnd: 386
    functionName: FLOAT2SIG
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FLOAT2SIG(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 386
    functionDepth: 0
    functionLinenumber: 386
    functionLinenumberEnd: 387
    functionName: INT16TOSIG
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: INT16TOSIG(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 387
    functionDepth: 0
    functionLinenumber: 387
    functionLinenumberEnd: 388
    functionName: INT24TOSIG
    functionSourceFile: /src/opus/celt/arch.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: INT24TOSIG(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 13
    argNames:
    - (
    - x
    - ','
    - num
    - ','
    - y
    - ','
    - N
    - ','
    - ord
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: celt_fir
    functionSourceFile: /src/opus/celt/celt_lpc.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_fir(x, num, y, N, ord, arch)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: celt_ilog2
      Src: /src/opus/celt/pitch.c:59,1
    - Dst: ADD32
      Src: /src/opus/celt/pitch.c:69,1
    - Dst: SHR32
      Src: /src/opus/celt/pitch.c:69,1
    - Dst: MULT16_16
      Src: /src/opus/celt/pitch.c:69,1
    - Dst: EXTRACT16
      Src: /src/opus/celt/pitch.c:76,1
    - Dst: VSHR32
      Src: /src/opus/celt/pitch.c:76,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/pitch.c:82,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/pitch.c:83,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/pitch.c:83,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/pitch.c:85,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/pitch.c:85,1
    - Dst: SHR32
      Src: /src/opus/celt/pitch.c:100,1
    - Dst: MULT16_16
      Src: /src/opus/celt/pitch.c:100,1
    - Dst: SHR32
      Src: /src/opus/celt/pitch.c:100,1
    - Dst: MULT16_16
      Src: /src/opus/celt/pitch.c:100,1
    - Dst: MAX32
      Src: /src/opus/celt/pitch.c:101,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 33
    argCount: 7
    argNames:
    - xcorr
    - y
    - len
    - max_pitch
    - best_pitch
    - yshift
    - maxcorr
    argTypes:
    - opus_val32*
    - opus_val16*
    - int
    - int
    - int*
    - int
    - opus_val32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 103
    functionName: find_best_pitch
    functionSourceFile: /src/opus/celt/pitch.c
    functionUses: 0
    functionsReached:
    - ADD32
    - MULT16_16
    - EXTRACT16
    - celt_ilog2
    - MULT16_32_Q15
    - MULT16_16_Q15
    - MAX32
    - SHR32
    - VSHR32
    linkageType: ''
    returnType: void
    signature: "void find_best_pitch(opus_val32 *xcorr, opus_val16 *y, int len,\n
      \                           int max_pitch, int *best_pitch\n#ifdef FIXED_POINT\n
      \                           , int yshift, opus_val32 maxcorr\n#endif\n                            )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SHL32
      Src: /src/opus/celt/pitch.c:124,1
    - Dst: EXTEND32
      Src: /src/opus/celt/pitch.c:124,1
    - Dst: MAC16_16
      Src: /src/opus/celt/pitch.c:125,1
    - Dst: MAC16_16
      Src: /src/opus/celt/pitch.c:126,1
    - Dst: MAC16_16
      Src: /src/opus/celt/pitch.c:127,1
    - Dst: MAC16_16
      Src: /src/opus/celt/pitch.c:128,1
    - Dst: MAC16_16
      Src: /src/opus/celt/pitch.c:129,1
    - Dst: ROUND16
      Src: /src/opus/celt/pitch.c:135,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 3
    argNames:
    - x
    - num
    - N
    argTypes:
    - opus_val16*
    - opus_val16*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 137
    functionName: celt_fir5
    functionSourceFile: /src/opus/celt/pitch.c
    functionUses: 0
    functionsReached:
    - SHL32
    - MAC16_16
    - ROUND16
    - EXTEND32
    linkageType: ''
    returnType: void
    signature: "void celt_fir5(opus_val16 *x,\n         const opus_val16 *num,\n         int
      N)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: celt_ilog2
      Src: /src/opus/celt/pitch.c:427,1
    - Dst: celt_ilog2
      Src: /src/opus/celt/pitch.c:428,1
    - Dst: SHR32
      Src: /src/opus/celt/pitch.c:430,1
    - Dst: MULT16_16
      Src: /src/opus/celt/pitch.c:430,1
    - Dst: VSHR32
      Src: /src/opus/celt/pitch.c:430,1
    - Dst: VSHR32
      Src: /src/opus/celt/pitch.c:430,1
    - Dst: celt_rsqrt_norm
      Src: /src/opus/celt/pitch.c:441,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/pitch.c:442,1
    - Dst: VSHR32
      Src: /src/opus/celt/pitch.c:443,1
    - Dst: EXTRACT16
      Src: /src/opus/celt/pitch.c:444,1
    - Dst: MAX32
      Src: /src/opus/celt/pitch.c:444,1
    - Dst: MIN32
      Src: /src/opus/celt/pitch.c:444,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 20
    argCount: 3
    argNames:
    - xy
    - xx
    - yy
    argTypes:
    - opus_val32
    - opus_val32
    - opus_val32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 445
      start: 419
    functionDepth: 0
    functionLinenumber: 419
    functionLinenumberEnd: 445
    functionName: compute_pitch_gain
    functionSourceFile: /src/opus/celt/pitch.c
    functionUses: 0
    functionsReached:
    - MIN32
    - MULT16_16
    - EXTRACT16
    - celt_ilog2
    - MULT16_32_Q15
    - MAX32
    - SHR32
    - celt_rsqrt_norm
    - VSHR32
    linkageType: ''
    returnType: opus_val16
    signature: opus_val16 compute_pitch_gain(opus_val32 xy, opus_val32 xx, opus_val32
      yy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_sqrt
      Src: /src/opus/celt/pitch.c:449,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - xy
    - xx
    - yy
    argTypes:
    - opus_val32
    - opus_val32
    - opus_val32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 450
      start: 447
    functionDepth: 0
    functionLinenumber: 447
    functionLinenumberEnd: 450
    functionName: compute_pitch_gain
    functionSourceFile: /src/opus/celt/pitch.c
    functionUses: 0
    functionsReached:
    - celt_sqrt
    linkageType: ''
    returnType: opus_val16
    signature: opus_val16 compute_pitch_gain(opus_val32 xy, opus_val32 xx, opus_val32
      yy)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/celt/pitch.c:465,1
    - Dst: ALLOC
      Src: /src/opus/celt/pitch.c:479,1
    - Dst: dual_inner_prod
      Src: /src/opus/celt/pitch.c:480,1
    - Dst: MULT16_16
      Src: /src/opus/celt/pitch.c:485,1
    - Dst: MULT16_16
      Src: /src/opus/celt/pitch.c:485,1
    - Dst: MAX32
      Src: /src/opus/celt/pitch.c:486,1
    - Dst: compute_pitch_gain
      Src: /src/opus/celt/pitch.c:491,1
    - Dst: celt_udiv
      Src: /src/opus/celt/pitch.c:499,1
    - Dst: celt_udiv
      Src: /src/opus/celt/pitch.c:511,1
    - Dst: dual_inner_prod
      Src: /src/opus/celt/pitch.c:513,1
    - Dst: HALF32
      Src: /src/opus/celt/pitch.c:514,1
    - Dst: HALF32
      Src: /src/opus/celt/pitch.c:515,1
    - Dst: compute_pitch_gain
      Src: /src/opus/celt/pitch.c:516,1
    - Dst: abs
      Src: /src/opus/celt/pitch.c:517,1
    - Dst: abs
      Src: /src/opus/celt/pitch.c:519,1
    - Dst: HALF16
      Src: /src/opus/celt/pitch.c:520,1
    - Dst: MAX16
      Src: /src/opus/celt/pitch.c:523,1
    - Dst: QCONST16
      Src: /src/opus/celt/pitch.c:523,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/pitch.c:523,1
    - Dst: QCONST16
      Src: /src/opus/celt/pitch.c:523,1
    - Dst: MAX16
      Src: /src/opus/celt/pitch.c:527,1
    - Dst: QCONST16
      Src: /src/opus/celt/pitch.c:527,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/pitch.c:527,1
    - Dst: QCONST16
      Src: /src/opus/celt/pitch.c:527,1
    - Dst: MAX16
      Src: /src/opus/celt/pitch.c:529,1
    - Dst: QCONST16
      Src: /src/opus/celt/pitch.c:529,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/pitch.c:529,1
    - Dst: QCONST16
      Src: /src/opus/celt/pitch.c:529,1
    - Dst: MAX32
      Src: /src/opus/celt/pitch.c:538,1
    - Dst: SHR32
      Src: /src/opus/celt/pitch.c:542,1
    - Dst: frac_div32
      Src: /src/opus/celt/pitch.c:542,1
    - Dst: celt_inner_prod
      Src: /src/opus/celt/pitch.c:545,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/pitch.c:546,1
    - Dst: QCONST16
      Src: /src/opus/celt/pitch.c:546,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/pitch.c:548,1
    - Dst: QCONST16
      Src: /src/opus/celt/pitch.c:548,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 75
    argCount: 8
    argNames:
    - x
    - maxperiod
    - minperiod
    - N
    - T0_
    - prev_period
    - prev_gain
    - arch
    argTypes:
    - opus_val16*
    - int
    - int
    - int
    - int*
    - int
    - opus_val16
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 560
      start: 454
    functionDepth: 1
    functionLinenumber: 454
    functionLinenumberEnd: 560
    functionName: remove_doubling
    functionSourceFile: /src/opus/celt/pitch.c
    functionUses: 1
    functionsReached:
    - dual_inner_prod
    - celt_inner_prod
    - MULT16_16
    - abs
    - MULT16_32_Q15
    - MULT16_16_Q15
    - VARDECL
    - ALLOC
    - HALF32
    - compute_pitch_gain
    - MAX32
    - HALF16
    - SHR32
    - QCONST16
    - frac_div32
    - celt_udiv
    - MAX16
    linkageType: ''
    returnType: opus_val16
    signature: "opus_val16 remove_doubling(opus_val16 *x, int maxperiod, int minperiod,\n
      \     int N, int *T0_, int prev_period, opus_val16 prev_gain, int arch)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 45
    functionName: MULT16_16U
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_16U(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 46
    functionName: MULT16_16SU
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_16SU(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 47
    functionName: MULT32_32_Q31
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 26
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT32_32_Q31(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 48
    functionName: MULT32_32_P31
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT32_32_P31(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 49
    functionName: MULT32_32_P31_ovflw
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT32_32_P31_ovflw(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 50
    functionName: MULT32_32_Q32
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT32_32_Q32(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 53
    functionName: MULT16_32_Q16
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_32_Q16(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 55
    functionName: MULT16_32_P16
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_32_P16(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - bits
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 57
    functionName: QCONST16
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 17
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: QCONST16(x,bits)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - bits
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 58
    functionName: QCONST32
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 16
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: QCONST32(x,bits)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - bits
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 59
    functionName: GCONST2
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GCONST2(x,bits)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 60
    functionName: GCONST
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 15
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: GCONST(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 62
    functionName: VERIFY_SHORT
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VERIFY_SHORT(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 63
    functionName: VERIFY_INT
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VERIFY_INT(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 64
    functionName: VERIFY_UINT
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VERIFY_UINT(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 66
    functionName: SHR
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SHR(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 67
    functionName: PSHR
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PSHR(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 70
    functionName: ADD32_ovflw
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 13
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ADD32_ovflw(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 72
    functionName: SUB32_ovflw
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 13
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SUB32_ovflw(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 75
    functionName: NEG32_ovflw
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NEG32_ovflw(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 77
    functionName: SHL32_ovflw
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SHL32_ovflw(a,shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 79
    functionName: PSHR32_ovflw
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PSHR32_ovflw(a,shift)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:83,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:85,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:87,1
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:91,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:93,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:95,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - x
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 100
    functionName: NEG16
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 2
    functionsReached:
    - celt_assert
    - VERIFY_SHORT
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE short
    signature: OPUS_INLINE short NEG16(int x)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: VERIFY_INT
      Src: /src/opus/celt/fixed_debug.h:104,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:106,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:108,1
    - Dst: VERIFY_INT
      Src: /src/opus/celt/fixed_debug.h:112,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:114,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:116,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - x
    argTypes:
    - opus_int64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 121
    functionName: NEG32
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached:
    - celt_assert
    - fprintf
    - VERIFY_INT
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE NEG32(opus_int64 x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 124
    functionName: EXTRACT16
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EXTRACT16(x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:127,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:129,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:131,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - x
    - file
    - line
    argTypes:
    - int
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 137
    functionName: EXTRACT16_
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached:
    - celt_assert
    - VERIFY_SHORT
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE short
    signature: OPUS_INLINE short EXTRACT16_(int x, char *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 140
    functionName: EXTEND32
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 19
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: EXTEND32(x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:143,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:145,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:147,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - x
    - file
    - line
    argTypes:
    - int
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 153
    functionName: EXTEND32_
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached:
    - celt_assert
    - VERIFY_SHORT
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE EXTEND32_(int x, char *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 156
    functionName: SHR16
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SHR16(a, shift)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:159,1
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:159,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:161,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:163,1
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:167,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:169,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:171,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 4
    argNames:
    - a
    - shift
    - file
    - line
    argTypes:
    - int
    - int
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 156
    functionDepth: 1
    functionLinenumber: 156
    functionLinenumberEnd: 176
    functionName: SHR16_
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached:
    - celt_assert
    - VERIFY_SHORT
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE short
    signature: OPUS_INLINE short SHR16_(int a, int shift, char *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 178
    functionName: SHL16
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SHL16(a, shift)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:181,1
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:181,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:183,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:185,1
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:189,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:191,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:193,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 4
    argNames:
    - a
    - shift
    - file
    - line
    argTypes:
    - int
    - int
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 178
    functionDepth: 1
    functionLinenumber: 178
    functionLinenumberEnd: 198
    functionName: SHL16_
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached:
    - celt_assert
    - VERIFY_SHORT
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE short
    signature: OPUS_INLINE short SHL16_(int a, int shift, char *file, int line)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: VERIFY_INT
      Src: /src/opus/celt/fixed_debug.h:203,1
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:203,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:205,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:207,1
    - Dst: VERIFY_INT
      Src: /src/opus/celt/fixed_debug.h:211,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:213,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:215,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - a
    - shift
    argTypes:
    - opus_int64
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 200
    functionDepth: 1
    functionLinenumber: 200
    functionLinenumberEnd: 220
    functionName: SHR32
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 64
    functionsReached:
    - celt_assert
    - fprintf
    - VERIFY_SHORT
    - VERIFY_INT
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE SHR32(opus_int64 a, int shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 221
    functionDepth: 0
    functionLinenumber: 221
    functionLinenumberEnd: 222
    functionName: SHL32
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 50
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SHL32(a, shift)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: VERIFY_INT
      Src: /src/opus/celt/fixed_debug.h:225,1
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:225,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:227,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:229,1
    - Dst: VERIFY_INT
      Src: /src/opus/celt/fixed_debug.h:233,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:235,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:237,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 4
    argNames:
    - a
    - shift
    - file
    - line
    argTypes:
    - opus_int64
    - int
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 222
    functionDepth: 1
    functionLinenumber: 222
    functionLinenumberEnd: 242
    functionName: SHL32_
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached:
    - celt_assert
    - fprintf
    - VERIFY_SHORT
    - VERIFY_INT
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE SHL32_(opus_int64 a, int shift, char *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 245
    functionName: PSHR32
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 27
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PSHR32(a,shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 245
    functionDepth: 0
    functionLinenumber: 245
    functionLinenumberEnd: 246
    functionName: VSHR32
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 19
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VSHR32(a, shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 247
    functionDepth: 0
    functionLinenumber: 247
    functionLinenumberEnd: 248
    functionName: SHR64
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SHR64(a,shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 250
    functionName: ROUND16
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ROUND16(x,a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 250
    functionDepth: 0
    functionLinenumber: 250
    functionLinenumberEnd: 251
    functionName: SROUND16
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SROUND16(x,a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 252
    functionDepth: 0
    functionLinenumber: 252
    functionLinenumberEnd: 253
    functionName: HALF16
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: HALF16(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 253
    functionDepth: 0
    functionLinenumber: 253
    functionLinenumberEnd: 254
    functionName: HALF32
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 11
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: HALF32(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 255
    functionDepth: 0
    functionLinenumber: 255
    functionLinenumberEnd: 256
    functionName: ADD16
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 12
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ADD16(a, b)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:259,1
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:259,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:261,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:263,1
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:267,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:269,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:271,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 4
    argNames:
    - a
    - b
    - file
    - line
    argTypes:
    - int
    - int
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 256
    functionDepth: 1
    functionLinenumber: 256
    functionLinenumberEnd: 276
    functionName: ADD16_
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached:
    - celt_assert
    - VERIFY_SHORT
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE short
    signature: OPUS_INLINE short ADD16_(int a, int b, char *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 278
    functionDepth: 0
    functionLinenumber: 278
    functionLinenumberEnd: 279
    functionName: SUB16
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SUB16(a, b)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:282,1
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:282,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:284,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:286,1
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:290,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:292,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:294,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 4
    argNames:
    - a
    - b
    - file
    - line
    argTypes:
    - int
    - int
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 279
    functionDepth: 1
    functionLinenumber: 279
    functionLinenumberEnd: 299
    functionName: SUB16_
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached:
    - celt_assert
    - VERIFY_SHORT
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE short
    signature: OPUS_INLINE short SUB16_(int a, int b, char *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 302
      start: 301
    functionDepth: 0
    functionLinenumber: 301
    functionLinenumberEnd: 302
    functionName: ADD32
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 54
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ADD32(a, b)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: VERIFY_INT
      Src: /src/opus/celt/fixed_debug.h:305,1
    - Dst: VERIFY_INT
      Src: /src/opus/celt/fixed_debug.h:305,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:307,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:309,1
    - Dst: VERIFY_INT
      Src: /src/opus/celt/fixed_debug.h:313,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:315,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:317,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 4
    argNames:
    - a
    - b
    - file
    - line
    argTypes:
    - opus_int64
    - opus_int64
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 302
    functionDepth: 1
    functionLinenumber: 302
    functionLinenumberEnd: 322
    functionName: ADD32_
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached:
    - celt_assert
    - fprintf
    - VERIFY_INT
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE ADD32_(opus_int64 a, opus_int64 b, char *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 324
    functionDepth: 0
    functionLinenumber: 324
    functionLinenumberEnd: 325
    functionName: SUB32
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 31
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SUB32(a, b)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: VERIFY_INT
      Src: /src/opus/celt/fixed_debug.h:328,1
    - Dst: VERIFY_INT
      Src: /src/opus/celt/fixed_debug.h:328,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:330,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:332,1
    - Dst: VERIFY_INT
      Src: /src/opus/celt/fixed_debug.h:336,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:338,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:340,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 4
    argNames:
    - a
    - b
    - file
    - line
    argTypes:
    - opus_int64
    - opus_int64
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 325
    functionDepth: 1
    functionLinenumber: 325
    functionLinenumberEnd: 345
    functionName: SUB32_
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached:
    - celt_assert
    - fprintf
    - VERIFY_INT
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE SUB32_(opus_int64 a, opus_int64 b, char *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 348
    functionDepth: 0
    functionLinenumber: 348
    functionLinenumberEnd: 349
    functionName: UADD32
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: UADD32(a, b)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: VERIFY_UINT
      Src: /src/opus/celt/fixed_debug.h:352,1
    - Dst: VERIFY_UINT
      Src: /src/opus/celt/fixed_debug.h:352,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:354,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:356,1
    - Dst: VERIFY_UINT
      Src: /src/opus/celt/fixed_debug.h:360,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:362,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:364,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 4
    argNames:
    - a
    - b
    - file
    - line
    argTypes:
    - opus_uint64
    - opus_uint64
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 349
    functionDepth: 1
    functionLinenumber: 349
    functionLinenumberEnd: 369
    functionName: UADD32_
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached:
    - celt_assert
    - VERIFY_UINT
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE unsigned
    signature: OPUS_INLINE unsigned UADD32_(opus_uint64 a, opus_uint64 b, char *file,
      int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 373
      start: 372
    functionDepth: 0
    functionLinenumber: 372
    functionLinenumberEnd: 373
    functionName: USUB32
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: USUB32(a, b)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: VERIFY_UINT
      Src: /src/opus/celt/fixed_debug.h:376,1
    - Dst: VERIFY_UINT
      Src: /src/opus/celt/fixed_debug.h:376,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:378,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:380,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:385,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:387,1
    - Dst: VERIFY_UINT
      Src: /src/opus/celt/fixed_debug.h:391,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:393,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:395,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 4
    argNames:
    - a
    - b
    - file
    - line
    argTypes:
    - opus_uint64
    - opus_uint64
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 373
    functionDepth: 1
    functionLinenumber: 373
    functionLinenumberEnd: 400
    functionName: USUB32_
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached:
    - celt_assert
    - VERIFY_UINT
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE unsigned
    signature: OPUS_INLINE unsigned USUB32_(opus_uint64 a, opus_uint64 b, char *file,
      int line)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:406,1
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:406,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:408,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:410,1
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:414,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:416,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:418,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 423
      start: 403
    functionDepth: 1
    functionLinenumber: 403
    functionLinenumberEnd: 423
    functionName: MULT16_16_16
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached:
    - celt_assert
    - VERIFY_SHORT
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE short
    signature: OPUS_INLINE short MULT16_16_16(int a, int b)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: VERIFY_INT
      Src: /src/opus/celt/fixed_debug.h:429,1
    - Dst: VERIFY_INT
      Src: /src/opus/celt/fixed_debug.h:429,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:431,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:433,1
    - Dst: VERIFY_INT
      Src: /src/opus/celt/fixed_debug.h:437,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:439,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:441,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int64
    - opus_int64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 426
    functionDepth: 1
    functionLinenumber: 426
    functionLinenumberEnd: 446
    functionName: MULT32_32_32
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached:
    - celt_assert
    - fprintf
    - VERIFY_INT
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE MULT32_32_32(opus_int64 a, opus_int64 b)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: VERIFY_INT
      Src: /src/opus/celt/fixed_debug.h:451,1
    - Dst: VERIFY_INT
      Src: /src/opus/celt/fixed_debug.h:451,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:453,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:455,1
    - Dst: VERIFY_INT
      Src: /src/opus/celt/fixed_debug.h:459,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:461,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:463,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_int64
    - opus_int64
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 468
      start: 448
    functionDepth: 1
    functionLinenumber: 448
    functionLinenumberEnd: 468
    functionName: MULT32_32_Q16
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached:
    - celt_assert
    - fprintf
    - VERIFY_INT
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE MULT32_32_Q16(opus_int64 a, opus_int64 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 471
      start: 470
    functionDepth: 0
    functionLinenumber: 470
    functionLinenumberEnd: 471
    functionName: MULT16_16
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 24
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_16(a, b)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:474,1
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:474,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:476,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:478,1
    - Dst: VERIFY_INT
      Src: /src/opus/celt/fixed_debug.h:482,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:484,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:486,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 4
    argNames:
    - a
    - b
    - file
    - line
    argTypes:
    - int
    - int
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 491
      start: 471
    functionDepth: 1
    functionLinenumber: 471
    functionLinenumberEnd: 491
    functionName: MULT16_16_
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached:
    - VERIFY_INT
    - celt_assert
    - VERIFY_SHORT
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE MULT16_16_(int a, int b, char *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - c
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 494
      start: 493
    functionDepth: 0
    functionLinenumber: 493
    functionLinenumberEnd: 494
    functionName: MAC16_16
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 14
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAC16_16(c,a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - Q
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 496
      start: 495
    functionDepth: 0
    functionLinenumber: 495
    functionLinenumberEnd: 496
    functionName: MULT16_32_QX
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_32_QX(a, b, Q)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:499,1
    - Dst: VERIFY_INT
      Src: /src/opus/celt/fixed_debug.h:499,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:501,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:503,1
    - Dst: ABS32
      Src: /src/opus/celt/fixed_debug.h:506,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:508,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:510,1
    - Dst: VERIFY_INT
      Src: /src/opus/celt/fixed_debug.h:514,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:516,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:518,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 5
    argNames:
    - a
    - b
    - Q
    - file
    - line
    argTypes:
    - int
    - opus_int64
    - int
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 526
      start: 496
    functionDepth: 1
    functionLinenumber: 496
    functionLinenumberEnd: 526
    functionName: MULT16_32_QX_
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached:
    - celt_assert
    - VERIFY_SHORT
    - fprintf
    - ABS32
    - VERIFY_INT
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE MULT16_32_QX_(int a, opus_int64 b, int Q, char *file, int
      line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - Q
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 529
      start: 528
    functionDepth: 0
    functionLinenumber: 528
    functionLinenumberEnd: 529
    functionName: MULT16_32_PX
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_32_PX(a, b, Q)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:532,1
    - Dst: VERIFY_INT
      Src: /src/opus/celt/fixed_debug.h:532,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:534,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:536,1
    - Dst: ABS32
      Src: /src/opus/celt/fixed_debug.h:539,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:541,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:543,1
    - Dst: VERIFY_INT
      Src: /src/opus/celt/fixed_debug.h:547,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:549,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:551,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 5
    argNames:
    - a
    - b
    - Q
    - file
    - line
    argTypes:
    - int
    - opus_int64
    - int
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 559
      start: 529
    functionDepth: 1
    functionLinenumber: 529
    functionLinenumberEnd: 559
    functionName: MULT16_32_PX_
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached:
    - celt_assert
    - VERIFY_SHORT
    - fprintf
    - ABS32
    - VERIFY_INT
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE MULT16_32_PX_(int a, opus_int64 b, int Q, char *file, int
      line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 562
      start: 561
    functionDepth: 0
    functionLinenumber: 561
    functionLinenumberEnd: 562
    functionName: MULT16_32_Q15
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 24
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_32_Q15(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - c
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 563
      start: 562
    functionDepth: 0
    functionLinenumber: 562
    functionLinenumberEnd: 563
    functionName: MAC16_32_Q15
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAC16_32_Q15(c,a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - c
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 564
      start: 563
    functionDepth: 0
    functionLinenumber: 563
    functionLinenumberEnd: 564
    functionName: MAC16_32_Q16
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAC16_32_Q16(c,a,b)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 573
      start: 565
    functionDepth: 0
    functionLinenumber: 565
    functionLinenumberEnd: 573
    functionName: SATURATE
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 7
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE SATURATE(int a, int b)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - a
    argTypes:
    - opus_int32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 583
      start: 575
    functionDepth: 0
    functionLinenumber: 575
    functionLinenumberEnd: 583
    functionName: SATURATE16
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE SATURATE16(opus_int32 a)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:588,1
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:588,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:590,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:592,1
    - Dst: VERIFY_INT
      Src: /src/opus/celt/fixed_debug.h:597,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:599,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:601,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 606
      start: 585
    functionDepth: 1
    functionLinenumber: 585
    functionLinenumberEnd: 606
    functionName: MULT16_16_Q11_32
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached:
    - VERIFY_INT
    - celt_assert
    - VERIFY_SHORT
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE MULT16_16_Q11_32(int a, int b)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:610,1
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:610,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:612,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:614,1
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:619,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:621,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:623,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 628
      start: 607
    functionDepth: 1
    functionLinenumber: 607
    functionLinenumberEnd: 628
    functionName: MULT16_16_Q13
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached:
    - celt_assert
    - VERIFY_SHORT
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE short
    signature: OPUS_INLINE short MULT16_16_Q13(int a, int b)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:632,1
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:632,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:634,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:636,1
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:641,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:643,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:645,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 650
      start: 629
    functionDepth: 1
    functionLinenumber: 629
    functionLinenumberEnd: 650
    functionName: MULT16_16_Q14
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 2
    functionsReached:
    - celt_assert
    - VERIFY_SHORT
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE short
    signature: OPUS_INLINE short MULT16_16_Q14(int a, int b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 653
      start: 652
    functionDepth: 0
    functionLinenumber: 652
    functionLinenumberEnd: 653
    functionName: MULT16_16_Q15
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 21
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_16_Q15(a, b)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:656,1
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:656,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:658,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:660,1
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:665,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:667,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:669,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 4
    argNames:
    - a
    - b
    - file
    - line
    argTypes:
    - int
    - int
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 674
      start: 653
    functionDepth: 1
    functionLinenumber: 653
    functionLinenumberEnd: 674
    functionName: MULT16_16_Q15_
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached:
    - celt_assert
    - VERIFY_SHORT
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE short
    signature: OPUS_INLINE short MULT16_16_Q15_(int a, int b, char *file, int line)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:679,1
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:679,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:681,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:683,1
    - Dst: VERIFY_INT
      Src: /src/opus/celt/fixed_debug.h:688,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:690,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:692,1
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:696,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:698,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:700,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 705
      start: 676
    functionDepth: 1
    functionLinenumber: 676
    functionLinenumberEnd: 705
    functionName: MULT16_16_P13
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached:
    - VERIFY_INT
    - celt_assert
    - VERIFY_SHORT
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE short
    signature: OPUS_INLINE short MULT16_16_P13(int a, int b)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:709,1
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:709,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:711,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:713,1
    - Dst: VERIFY_INT
      Src: /src/opus/celt/fixed_debug.h:718,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:720,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:722,1
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:726,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:728,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:730,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 735
      start: 706
    functionDepth: 1
    functionLinenumber: 706
    functionLinenumberEnd: 735
    functionName: MULT16_16_P14
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached:
    - VERIFY_INT
    - celt_assert
    - VERIFY_SHORT
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE short
    signature: OPUS_INLINE short MULT16_16_P14(int a, int b)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:739,1
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:739,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:741,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:743,1
    - Dst: VERIFY_INT
      Src: /src/opus/celt/fixed_debug.h:748,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:750,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:752,1
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:756,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:758,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:760,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 765
      start: 736
    functionDepth: 1
    functionLinenumber: 736
    functionLinenumberEnd: 765
    functionName: MULT16_16_P15
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 2
    functionsReached:
    - VERIFY_INT
    - celt_assert
    - VERIFY_SHORT
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE short
    signature: OPUS_INLINE short MULT16_16_P15(int a, int b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 768
      start: 767
    functionDepth: 0
    functionLinenumber: 767
    functionLinenumberEnd: 768
    functionName: DIV32_16
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 31
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DIV32_16(a, b)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:774,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:776,1
    - Dst: VERIFY_INT
      Src: /src/opus/celt/fixed_debug.h:780,1
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:780,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:782,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:784,1
    - Dst: VERIFY_SHORT
      Src: /src/opus/celt/fixed_debug.h:788,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:790,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:796,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 4
    argNames:
    - a
    - b
    - file
    - line
    argTypes:
    - opus_int64
    - opus_int64
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 801
      start: 769
    functionDepth: 1
    functionLinenumber: 769
    functionLinenumberEnd: 801
    functionName: DIV32_16_
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached:
    - VERIFY_INT
    - celt_assert
    - VERIFY_SHORT
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE DIV32_16_(opus_int64 a, opus_int64 b, char *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 804
      start: 803
    functionDepth: 0
    functionLinenumber: 803
    functionLinenumberEnd: 804
    functionName: DIV32
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 18
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DIV32(a, b)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:809,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:811,1
    - Dst: VERIFY_INT
      Src: /src/opus/celt/fixed_debug.h:816,1
    - Dst: VERIFY_INT
      Src: /src/opus/celt/fixed_debug.h:816,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:818,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:820,1
    - Dst: VERIFY_INT
      Src: /src/opus/celt/fixed_debug.h:824,1
    - Dst: fprintf
      Src: /src/opus/celt/fixed_debug.h:826,1
    - Dst: celt_assert
      Src: /src/opus/celt/fixed_debug.h:828,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 4
    argNames:
    - a
    - b
    - file
    - line
    argTypes:
    - opus_int64
    - opus_int64
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 833
      start: 804
    functionDepth: 1
    functionLinenumber: 804
    functionLinenumberEnd: 833
    functionName: DIV32_
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached:
    - VERIFY_INT
    - celt_assert
    - fprintf
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE DIV32_(opus_int64 a, opus_int64 b, char *file, int line)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PSHR32
      Src: /src/opus/celt/fixed_debug.h:837,1
    - Dst: MAX32
      Src: /src/opus/celt/fixed_debug.h:838,1
    - Dst: MIN32
      Src: /src/opus/celt/fixed_debug.h:839,1
    - Dst: EXTRACT16
      Src: /src/opus/celt/fixed_debug.h:840,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - x
    argTypes:
    - celt_sig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 841
      start: 835
    functionDepth: 0
    functionLinenumber: 835
    functionLinenumberEnd: 841
    functionName: SIG2WORD16_generic
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached:
    - EXTRACT16
    - PSHR32
    - MIN32
    - MAX32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE SIG2WORD16_generic(celt_sig x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 843
      start: 842
    functionDepth: 0
    functionLinenumber: 842
    functionLinenumberEnd: 843
    functionName: SIG2WORD16
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SIG2WORD16(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - file
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 847
      start: 846
    functionDepth: 0
    functionLinenumber: 846
    functionLinenumberEnd: 847
    functionName: PRINT_MIPS
    functionSourceFile: /src/opus/celt/fixed_debug.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PRINT_MIPS(file)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 50
    functionName: S_MUL
    functionSourceFile: /src/opus/celt/mini_kfft.c
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: S_MUL(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - m
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionName: C_MUL
    functionSourceFile: /src/opus/celt/mini_kfft.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: C_MUL(m,a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - c
    - ','
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 57
    functionName: C_MULBYSCALAR
    functionSourceFile: /src/opus/celt/mini_kfft.c
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: C_MULBYSCALAR( c, s )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - res
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 67
    functionName: C_ADD
    functionSourceFile: /src/opus/celt/mini_kfft.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: C_ADD( res, a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - res
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 73
    functionName: C_SUB
    functionSourceFile: /src/opus/celt/mini_kfft.c
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: C_SUB( res, a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - res
    - ','
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 79
    functionName: C_ADDTO
    functionSourceFile: /src/opus/celt/mini_kfft.c
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: C_ADDTO( res , a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - res
    - ','
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 86
    functionName: C_SUBFROM
    functionSourceFile: /src/opus/celt/mini_kfft.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: C_SUBFROM( res , a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - phase
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 89
    functionName: MINI_KISS_FFT_COS
    functionSourceFile: /src/opus/celt/mini_kfft.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MINI_KISS_FFT_COS(phase)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - phase
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 90
    functionName: MINI_KISS_FFT_SIN
    functionSourceFile: /src/opus/celt/mini_kfft.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MINI_KISS_FFT_SIN(phase)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 91
    functionName: MINI_HALF_OF
    functionSourceFile: /src/opus/celt/mini_kfft.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MINI_HALF_OF(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - phase
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 97
    functionName: mini_kf_cexp
    functionSourceFile: /src/opus/celt/mini_kfft.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: mini_kf_cexp(x,phase)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: C_FIXDIV
      Src: /src/opus/celt/mini_kfft.c:113,1
    - Dst: C_FIXDIV
      Src: /src/opus/celt/mini_kfft.c:113,1
    - Dst: C_MUL
      Src: /src/opus/celt/mini_kfft.c:115,1
    - Dst: C_SUB
      Src: /src/opus/celt/mini_kfft.c:117,1
    - Dst: C_ADDTO
      Src: /src/opus/celt/mini_kfft.c:118,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 4
    argNames:
    - Fout
    - fstride
    - st
    - m
    argTypes:
    - mini_kiss_fft_cpx*
    - size_t
    - mini_kiss_fft_cfg
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 122
    functionName: kf_bfly2
    functionSourceFile: /src/opus/celt/mini_kfft.c
    functionUses: 1
    functionsReached:
    - C_ADDTO
    - C_MUL
    - C_SUB
    - C_FIXDIV
    linkageType: ''
    returnType: void
    signature: "void kf_bfly2(\n        mini_kiss_fft_cpx * Fout,\n        const size_t
      fstride,\n        const mini_kiss_fft_cfg st,\n        int m\n        )"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: C_FIXDIV
      Src: /src/opus/celt/mini_kfft.c:141,1
    - Dst: C_FIXDIV
      Src: /src/opus/celt/mini_kfft.c:141,1
    - Dst: C_FIXDIV
      Src: /src/opus/celt/mini_kfft.c:141,1
    - Dst: C_FIXDIV
      Src: /src/opus/celt/mini_kfft.c:141,1
    - Dst: C_MUL
      Src: /src/opus/celt/mini_kfft.c:143,1
    - Dst: C_MUL
      Src: /src/opus/celt/mini_kfft.c:144,1
    - Dst: C_MUL
      Src: /src/opus/celt/mini_kfft.c:145,1
    - Dst: C_SUB
      Src: /src/opus/celt/mini_kfft.c:147,1
    - Dst: C_ADDTO
      Src: /src/opus/celt/mini_kfft.c:148,1
    - Dst: C_ADD
      Src: /src/opus/celt/mini_kfft.c:149,1
    - Dst: C_SUB
      Src: /src/opus/celt/mini_kfft.c:150,1
    - Dst: C_SUB
      Src: /src/opus/celt/mini_kfft.c:151,1
    - Dst: C_ADDTO
      Src: /src/opus/celt/mini_kfft.c:155,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 32
    argCount: 4
    argNames:
    - Fout
    - fstride
    - st
    - m
    argTypes:
    - mini_kiss_fft_cpx*
    - size_t
    - mini_kiss_fft_cfg
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 170
    functionName: kf_bfly4
    functionSourceFile: /src/opus/celt/mini_kfft.c
    functionUses: 1
    functionsReached:
    - C_SUB
    - C_MUL
    - C_FIXDIV
    - C_ADD
    - C_ADDTO
    linkageType: ''
    returnType: void
    signature: "void kf_bfly4(\n        mini_kiss_fft_cpx * Fout,\n        const size_t
      fstride,\n        const mini_kiss_fft_cfg st,\n        const size_t m\n        )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: C_FIXDIV
      Src: /src/opus/celt/mini_kfft.c:189,1
    - Dst: C_FIXDIV
      Src: /src/opus/celt/mini_kfft.c:189,1
    - Dst: C_FIXDIV
      Src: /src/opus/celt/mini_kfft.c:189,1
    - Dst: C_MUL
      Src: /src/opus/celt/mini_kfft.c:191,1
    - Dst: C_MUL
      Src: /src/opus/celt/mini_kfft.c:192,1
    - Dst: C_ADD
      Src: /src/opus/celt/mini_kfft.c:194,1
    - Dst: C_SUB
      Src: /src/opus/celt/mini_kfft.c:195,1
    - Dst: MINI_HALF_OF
      Src: /src/opus/celt/mini_kfft.c:199,1
    - Dst: MINI_HALF_OF
      Src: /src/opus/celt/mini_kfft.c:200,1
    - Dst: C_MULBYSCALAR
      Src: /src/opus/celt/mini_kfft.c:202,1
    - Dst: C_ADDTO
      Src: /src/opus/celt/mini_kfft.c:204,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 23
    argCount: 4
    argNames:
    - Fout
    - fstride
    - st
    - m
    argTypes:
    - mini_kiss_fft_cpx*
    - size_t
    - mini_kiss_fft_cfg
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 172
    functionDepth: 1
    functionLinenumber: 172
    functionLinenumberEnd: 214
    functionName: kf_bfly3
    functionSourceFile: /src/opus/celt/mini_kfft.c
    functionUses: 1
    functionsReached:
    - C_SUB
    - C_MUL
    - C_FIXDIV
    - C_MULBYSCALAR
    - MINI_HALF_OF
    - C_ADD
    - C_ADDTO
    linkageType: ''
    returnType: void
    signature: "void kf_bfly3(\n         mini_kiss_fft_cpx * Fout,\n         const
      size_t fstride,\n         const mini_kiss_fft_cfg st,\n         size_t m\n         )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: C_FIXDIV
      Src: /src/opus/celt/mini_kfft.c:240,1
    - Dst: C_FIXDIV
      Src: /src/opus/celt/mini_kfft.c:240,1
    - Dst: C_FIXDIV
      Src: /src/opus/celt/mini_kfft.c:240,1
    - Dst: C_FIXDIV
      Src: /src/opus/celt/mini_kfft.c:240,1
    - Dst: C_FIXDIV
      Src: /src/opus/celt/mini_kfft.c:240,1
    - Dst: C_MUL
      Src: /src/opus/celt/mini_kfft.c:243,1
    - Dst: C_MUL
      Src: /src/opus/celt/mini_kfft.c:244,1
    - Dst: C_MUL
      Src: /src/opus/celt/mini_kfft.c:245,1
    - Dst: C_MUL
      Src: /src/opus/celt/mini_kfft.c:246,1
    - Dst: C_ADD
      Src: /src/opus/celt/mini_kfft.c:248,1
    - Dst: C_SUB
      Src: /src/opus/celt/mini_kfft.c:249,1
    - Dst: C_ADD
      Src: /src/opus/celt/mini_kfft.c:250,1
    - Dst: C_SUB
      Src: /src/opus/celt/mini_kfft.c:251,1
    - Dst: S_MUL
      Src: /src/opus/celt/mini_kfft.c:256,1
    - Dst: S_MUL
      Src: /src/opus/celt/mini_kfft.c:256,1
    - Dst: S_MUL
      Src: /src/opus/celt/mini_kfft.c:257,1
    - Dst: S_MUL
      Src: /src/opus/celt/mini_kfft.c:257,1
    - Dst: S_MUL
      Src: /src/opus/celt/mini_kfft.c:259,1
    - Dst: S_MUL
      Src: /src/opus/celt/mini_kfft.c:259,1
    - Dst: S_MUL
      Src: /src/opus/celt/mini_kfft.c:260,1
    - Dst: S_MUL
      Src: /src/opus/celt/mini_kfft.c:260,1
    - Dst: C_SUB
      Src: /src/opus/celt/mini_kfft.c:262,1
    - Dst: C_ADD
      Src: /src/opus/celt/mini_kfft.c:263,1
    - Dst: S_MUL
      Src: /src/opus/celt/mini_kfft.c:265,1
    - Dst: S_MUL
      Src: /src/opus/celt/mini_kfft.c:265,1
    - Dst: S_MUL
      Src: /src/opus/celt/mini_kfft.c:266,1
    - Dst: S_MUL
      Src: /src/opus/celt/mini_kfft.c:266,1
    - Dst: S_MUL
      Src: /src/opus/celt/mini_kfft.c:267,1
    - Dst: S_MUL
      Src: /src/opus/celt/mini_kfft.c:267,1
    - Dst: S_MUL
      Src: /src/opus/celt/mini_kfft.c:268,1
    - Dst: S_MUL
      Src: /src/opus/celt/mini_kfft.c:268,1
    - Dst: C_ADD
      Src: /src/opus/celt/mini_kfft.c:270,1
    - Dst: C_SUB
      Src: /src/opus/celt/mini_kfft.c:271,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 44
    argCount: 4
    argNames:
    - Fout
    - fstride
    - st
    - m
    argTypes:
    - mini_kiss_fft_cpx*
    - size_t
    - mini_kiss_fft_cfg
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 216
    functionDepth: 1
    functionLinenumber: 216
    functionLinenumberEnd: 275
    functionName: kf_bfly5
    functionSourceFile: /src/opus/celt/mini_kfft.c
    functionUses: 1
    functionsReached:
    - C_SUB
    - C_MUL
    - C_FIXDIV
    - C_ADD
    - S_MUL
    linkageType: ''
    returnType: void
    signature: "void kf_bfly5(\n        mini_kiss_fft_cpx * Fout,\n        const size_t
      fstride,\n        const mini_kiss_fft_cfg st,\n        int m\n        )"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: kf_work
      Src: /src/opus/celt/mini_kfft.c:304,1
    - Dst: kf_bfly2
      Src: /src/opus/celt/mini_kfft.c:313,1
    - Dst: kf_bfly3
      Src: /src/opus/celt/mini_kfft.c:314,1
    - Dst: kf_bfly4
      Src: /src/opus/celt/mini_kfft.c:315,1
    - Dst: kf_bfly5
      Src: /src/opus/celt/mini_kfft.c:316,1
    - Dst: assert
      Src: /src/opus/celt/mini_kfft.c:317,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 29
    argCount: 6
    argNames:
    - Fout
    - f
    - fstride
    - in_stride
    - factors
    - st
    argTypes:
    - mini_kiss_fft_cpx*
    - mini_kiss_fft_cpx*
    - size_t
    - int
    - int*
    - mini_kiss_fft_cfg
    assertStmts:
    - condition: (0)
      pos:
        line_end: 316
        line_start: 316
        source_file: /src/opus/celt/mini_kfft.c
    constantsTouched: []
    func_position:
      end: 319
      start: 278
    functionDepth: 1
    functionLinenumber: 278
    functionLinenumberEnd: 319
    functionName: kf_work
    functionSourceFile: /src/opus/celt/mini_kfft.c
    functionUses: 1
    functionsReached:
    - kf_bfly4
    - kf_bfly5
    - kf_work
    - assert
    - kf_bfly2
    - kf_bfly3
    linkageType: ''
    returnType: void
    signature: "void kf_work(\n        mini_kiss_fft_cpx * Fout,\n        const mini_kiss_fft_cpx
      * f,\n        const size_t fstride,\n        int in_stride,\n        int * factors,\n
      \       const mini_kiss_fft_cfg st\n        )"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: floor
      Src: /src/opus/celt/mini_kfft.c:330,1
    - Dst: sqrt
      Src: /src/opus/celt/mini_kfft.c:330,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 22
    argCount: 2
    argNames:
    - n
    - facbuf
    argTypes:
    - int
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 325
    functionDepth: 0
    functionLinenumber: 325
    functionLinenumberEnd: 347
    functionName: kf_factor
    functionSourceFile: /src/opus/celt/mini_kfft.c
    functionUses: 1
    functionsReached:
    - sqrt
    - floor
    linkageType: ''
    returnType: void
    signature: void kf_factor(int n,int * facbuf)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/opus/celt/mini_kfft.c:364,1
    - Dst: mini_kf_cexp
      Src: /src/opus/celt/mini_kfft.c:380,1
    - Dst: kf_factor
      Src: /src/opus/celt/mini_kfft.c:383,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 4
    argNames:
    - nfft
    - inverse_fft
    - mem
    - lenmem
    argTypes:
    - int
    - int
    - void*
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 386
      start: 356
    functionDepth: 1
    functionLinenumber: 356
    functionLinenumberEnd: 386
    functionName: mini_kiss_fft_alloc
    functionSourceFile: /src/opus/celt/mini_kfft.c
    functionUses: 1
    functionsReached:
    - malloc
    - mini_kf_cexp
    - kf_factor
    linkageType: ''
    returnType: mini_kiss_fft_cfg
    signature: mini_kiss_fft_cfg mini_kiss_fft_alloc(int nfft,int inverse_fft,void
      * mem,size_t * lenmem )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/opus/celt/mini_kfft.c:391,1
    - Dst: kf_work
      Src: /src/opus/celt/mini_kfft.c:392,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - st
    - fin
    - fout
    - in_stride
    argTypes:
    - mini_kiss_fft_cfg
    - mini_kiss_fft_cpx*
    - mini_kiss_fft_cpx*
    - int
    assertStmts:
    - condition: (fin != fout)
      pos:
        line_end: 390
        line_start: 390
        source_file: /src/opus/celt/mini_kfft.c
    constantsTouched: []
    func_position:
      end: 393
      start: 389
    functionDepth: 2
    functionLinenumber: 389
    functionLinenumberEnd: 393
    functionName: mini_kiss_fft_stride
    functionSourceFile: /src/opus/celt/mini_kfft.c
    functionUses: 0
    functionsReached:
    - assert
    - kf_work
    linkageType: ''
    returnType: void
    signature: void mini_kiss_fft_stride(mini_kiss_fft_cfg st,const mini_kiss_fft_cpx
      *fin,mini_kiss_fft_cpx *fout,int in_stride)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mini_kiss_fft_stride
      Src: /src/opus/celt/mini_kfft.c:397,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - cfg
    - fin
    - fout
    argTypes:
    - mini_kiss_fft_cfg
    - mini_kiss_fft_cpx*
    - mini_kiss_fft_cpx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 398
      start: 395
    functionDepth: 3
    functionLinenumber: 395
    functionLinenumberEnd: 398
    functionName: mini_kiss_fft
    functionSourceFile: /src/opus/celt/mini_kfft.c
    functionUses: 2
    functionsReached:
    - mini_kiss_fft_stride
    linkageType: ''
    returnType: void
    signature: void mini_kiss_fft(mini_kiss_fft_cfg cfg,const mini_kiss_fft_cpx *fin,mini_kiss_fft_cpx
      *fout)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/opus/celt/mini_kfft.c:416,1
    - Dst: mini_kiss_fft_alloc
      Src: /src/opus/celt/mini_kfft.c:419,1
    - Dst: malloc
      Src: /src/opus/celt/mini_kfft.c:423,1
    - Dst: mini_kiss_fft_alloc
      Src: /src/opus/celt/mini_kfft.c:435,1
    - Dst: mini_kf_cexp
      Src: /src/opus/celt/mini_kfft.c:442,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 4
    argNames:
    - nfft
    - inverse_fft
    - mem
    - lenmem
    argTypes:
    - int
    - int
    - void*
    - size_t*
    assertStmts:
    - condition: ((nfft & 1) == 0)
      pos:
        line_end: 415
        line_start: 415
        source_file: /src/opus/celt/mini_kfft.c
    constantsTouched: []
    func_position:
      end: 445
      start: 409
    functionDepth: 2
    functionLinenumber: 409
    functionLinenumberEnd: 445
    functionName: mini_kiss_fftr_alloc
    functionSourceFile: /src/opus/celt/mini_kfft.c
    functionUses: 2
    functionsReached:
    - assert
    - malloc
    - mini_kiss_fft_alloc
    - mini_kf_cexp
    linkageType: ''
    returnType: mini_kiss_fftr_cfg
    signature: mini_kiss_fftr_cfg mini_kiss_fftr_alloc(int nfft,int inverse_fft,void
      * mem,size_t * lenmem)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/opus/celt/mini_kfft.c:453,1
    - Dst: mini_kiss_fft
      Src: /src/opus/celt/mini_kfft.c:458,1
    - Dst: C_FIXDIV
      Src: /src/opus/celt/mini_kfft.c:471,1
    - Dst: CHECK_OVERFLOW_OP
      Src: /src/opus/celt/mini_kfft.c:472,1
    - Dst: CHECK_OVERFLOW_OP
      Src: /src/opus/celt/mini_kfft.c:473,1
    - Dst: C_FIXDIV
      Src: /src/opus/celt/mini_kfft.c:482,1
    - Dst: C_FIXDIV
      Src: /src/opus/celt/mini_kfft.c:483,1
    - Dst: C_ADD
      Src: /src/opus/celt/mini_kfft.c:485,1
    - Dst: C_SUB
      Src: /src/opus/celt/mini_kfft.c:486,1
    - Dst: C_MUL
      Src: /src/opus/celt/mini_kfft.c:487,1
    - Dst: MINI_HALF_OF
      Src: /src/opus/celt/mini_kfft.c:489,1
    - Dst: MINI_HALF_OF
      Src: /src/opus/celt/mini_kfft.c:490,1
    - Dst: MINI_HALF_OF
      Src: /src/opus/celt/mini_kfft.c:491,1
    - Dst: MINI_HALF_OF
      Src: /src/opus/celt/mini_kfft.c:492,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 26
    argCount: 3
    argNames:
    - st
    - timedata
    - freqdata
    argTypes:
    - mini_kiss_fftr_cfg
    - mini_kiss_fft_scalar*
    - mini_kiss_fft_cpx*
    assertStmts:
    - condition: ( !st->substate->inverse)
      pos:
        line_end: 452
        line_start: 452
        source_file: /src/opus/celt/mini_kfft.c
    constantsTouched: []
    func_position:
      end: 494
      start: 447
    functionDepth: 4
    functionLinenumber: 447
    functionLinenumberEnd: 494
    functionName: mini_kiss_fftr
    functionSourceFile: /src/opus/celt/mini_kfft.c
    functionUses: 2
    functionsReached:
    - mini_kiss_fft
    - C_SUB
    - C_FIXDIV
    - C_MUL
    - CHECK_OVERFLOW_OP
    - assert
    - MINI_HALF_OF
    - C_ADD
    linkageType: ''
    returnType: void
    signature: void mini_kiss_fftr(mini_kiss_fftr_cfg st,const mini_kiss_fft_scalar
      *timedata,mini_kiss_fft_cpx *freqdata)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: EC_ILOG
      Src: /src/opus/celt/cwrs.c:52,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 2
    argNames:
    - val
    - frac
    argTypes:
    - opus_uint32
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 75
    functionName: log2_frac
    functionSourceFile: /src/opus/celt/cwrs.c
    functionUses: 0
    functionsReached:
    - EC_ILOG
    linkageType: ''
    returnType: int
    signature: int log2_frac(opus_uint32 val, int frac)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _n
    - ','
    - _k
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 201
    functionName: CELT_PVQ_U
    functionSourceFile: /src/opus/celt/cwrs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CELT_PVQ_U(_n,_k)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _n
    - ','
    - _k
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 204
    functionName: CELT_PVQ_V
    functionSourceFile: /src/opus/celt/cwrs.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CELT_PVQ_V(_n,_k)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/celt/cwrs.c:438,1
    - Dst: log2_frac
      Src: /src/opus/celt/cwrs.c:440,1
    - Dst: CELT_PVQ_V
      Src: /src/opus/celt/cwrs.c:440,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 4
    argNames:
    - _bits
    - _n
    - _maxk
    - _frac
    argTypes:
    - opus_int16*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 441
      start: 435
    functionDepth: 2
    functionLinenumber: 435
    functionLinenumberEnd: 441
    functionName: get_required_bits
    functionSourceFile: /src/opus/celt/cwrs.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - CELT_PVQ_V
    - log2_frac
    linkageType: ''
    returnType: void
    signature: void get_required_bits(opus_int16 *_bits,int _n,int _maxk,int _frac)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/celt/cwrs.c:448,1
    - Dst: abs
      Src: /src/opus/celt/cwrs.c:451,1
    - Dst: CELT_PVQ_U
      Src: /src/opus/celt/cwrs.c:454,1
    - Dst: abs
      Src: /src/opus/celt/cwrs.c:455,1
    - Dst: CELT_PVQ_U
      Src: /src/opus/celt/cwrs.c:456,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - _n
    - _y
    argTypes:
    - int
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 460
      start: 444
    functionDepth: 1
    functionLinenumber: 444
    functionLinenumberEnd: 460
    functionName: icwrs
    functionSourceFile: /src/opus/celt/cwrs.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - abs
    - CELT_PVQ_U
    linkageType: ''
    returnType: opus_uint32
    signature: opus_uint32 icwrs(int _n,const int *_y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/celt/cwrs.c:463,1
    - Dst: ec_enc_uint
      Src: /src/opus/celt/cwrs.c:464,1
    - Dst: icwrs
      Src: /src/opus/celt/cwrs.c:464,1
    - Dst: CELT_PVQ_V
      Src: /src/opus/celt/cwrs.c:464,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - _y
    - _n
    - _k
    - _enc
    argTypes:
    - int*
    - int
    - int
    - ec_enc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 465
      start: 462
    functionDepth: 5
    functionLinenumber: 462
    functionLinenumberEnd: 465
    functionName: encode_pulses
    functionSourceFile: /src/opus/celt/cwrs.c
    functionUses: 4
    functionsReached:
    - celt_assert
    - icwrs
    - CELT_PVQ_V
    - ec_enc_uint
    linkageType: ''
    returnType: void
    signature: void encode_pulses(const int *_y,int _n,int _k,ec_enc *_enc)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/celt/cwrs.c:473,1
    - Dst: celt_assert
      Src: /src/opus/celt/cwrs.c:474,1
    - Dst: celt_sig_assert
      Src: /src/opus/celt/cwrs.c:489,1
    - Dst: MAC16_16
      Src: /src/opus/celt/cwrs.c:498,1
    - Dst: MAC16_16
      Src: /src/opus/celt/cwrs.c:520,1
    - Dst: MAC16_16
      Src: /src/opus/celt/cwrs.c:534,1
    - Dst: MAC16_16
      Src: /src/opus/celt/cwrs.c:539,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 58
    argCount: 4
    argNames:
    - _n
    - _k
    - _i
    - _y
    argTypes:
    - int
    - int
    - opus_uint32
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 541
      start: 467
    functionDepth: 1
    functionLinenumber: 467
    functionLinenumberEnd: 541
    functionName: cwrsi
    functionSourceFile: /src/opus/celt/cwrs.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - MAC16_16
    - celt_sig_assert
    linkageType: ''
    returnType: opus_val32
    signature: opus_val32 cwrsi(int _n,int _k,opus_uint32 _i,int *_y)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cwrsi
      Src: /src/opus/celt/cwrs.c:544,1
    - Dst: ec_dec_uint
      Src: /src/opus/celt/cwrs.c:544,1
    - Dst: CELT_PVQ_V
      Src: /src/opus/celt/cwrs.c:544,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - _y
    - _n
    - _k
    - _dec
    argTypes:
    - int*
    - int
    - int
    - ec_dec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 545
      start: 543
    functionDepth: 4
    functionLinenumber: 543
    functionLinenumberEnd: 545
    functionName: decode_pulses
    functionSourceFile: /src/opus/celt/cwrs.c
    functionUses: 3
    functionsReached:
    - cwrsi
    - ec_dec_uint
    - CELT_PVQ_V
    linkageType: ''
    returnType: opus_val32
    signature: opus_val32 decode_pulses(int *_y,int _n,int _k,ec_dec *_dec)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: UADD32
      Src: /src/opus/celt/cwrs.c:558,1
    - Dst: UADD32
      Src: /src/opus/celt/cwrs.c:558,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - _ui
    - _len
    - _ui0
    argTypes:
    - opus_uint32*
    - unsigned
    - opus_uint32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 563
      start: 552
    functionDepth: 0
    functionLinenumber: 552
    functionLinenumberEnd: 563
    functionName: unext
    functionSourceFile: /src/opus/celt/cwrs.c
    functionUses: 0
    functionsReached:
    - UADD32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE unext(opus_uint32 *_ui,unsigned _len,opus_uint32 _ui0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: USUB32
      Src: /src/opus/celt/cwrs.c:574,1
    - Dst: USUB32
      Src: /src/opus/celt/cwrs.c:574,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 3
    argNames:
    - _ui
    - _n
    - _ui0
    argTypes:
    - opus_uint32*
    - unsigned
    - opus_uint32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 579
      start: 568
    functionDepth: 0
    functionLinenumber: 568
    functionLinenumberEnd: 579
    functionName: uprev
    functionSourceFile: /src/opus/celt/cwrs.c
    functionUses: 0
    functionsReached:
    - USUB32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE uprev(opus_uint32 *_ui,unsigned _n,opus_uint32 _ui0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/celt/cwrs.c:589,1
    - Dst: celt_assert
      Src: /src/opus/celt/cwrs.c:594,1
    - Dst: celt_assert
      Src: /src/opus/celt/cwrs.c:596,1
    - Dst: unext
      Src: /src/opus/celt/cwrs.c:600,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 3
    argNames:
    - _n
    - _k
    - _u
    argTypes:
    - unsigned
    - unsigned
    - opus_uint32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 602
      start: 583
    functionDepth: 1
    functionLinenumber: 583
    functionLinenumberEnd: 602
    functionName: ncwrs_urow
    functionSourceFile: /src/opus/celt/cwrs.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - unext
    linkageType: ''
    returnType: opus_uint32
    signature: opus_uint32 ncwrs_urow(unsigned _n,unsigned _k,opus_uint32 *_u)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/celt/cwrs.c:613,1
    - Dst: MAC16_16
      Src: /src/opus/celt/cwrs.c:629,1
    - Dst: uprev
      Src: /src/opus/celt/cwrs.c:630,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 5
    argNames:
    - _n
    - _k
    - _i
    - _y
    - _u
    argTypes:
    - int
    - int
    - opus_uint32
    - int*
    - opus_uint32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 634
      start: 609
    functionDepth: 1
    functionLinenumber: 609
    functionLinenumberEnd: 634
    functionName: cwrsi
    functionSourceFile: /src/opus/celt/cwrs.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - uprev
    - MAC16_16
    linkageType: ''
    returnType: opus_val32
    signature: opus_val32 cwrsi(int _n,int _k,opus_uint32 _i,int *_y,opus_uint32 *_u)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: abs
      Src: /src/opus/celt/cwrs.c:641,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - _y
    - _k
    argTypes:
    - int*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 643
      start: 640
    functionDepth: 0
    functionLinenumber: 640
    functionLinenumberEnd: 643
    functionName: opus_uint32::icwrs1
    functionSourceFile: /src/opus/celt/cwrs.c
    functionUses: 0
    functionsReached:
    - abs
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE opus_uint32 icwrs1(const int *_y,int *_k)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/celt/cwrs.c:655,1
    - Dst: opus_uint32::icwrs1
      Src: /src/opus/celt/cwrs.c:658,1
    - Dst: abs
      Src: /src/opus/celt/cwrs.c:661,1
    - Dst: unext
      Src: /src/opus/celt/cwrs.c:664,1
    - Dst: abs
      Src: /src/opus/celt/cwrs.c:666,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 5
    argNames:
    - _n
    - _k
    - _nc
    - _y
    - _u
    argTypes:
    - int
    - int
    - opus_uint32*
    - int*
    - opus_uint32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 671
      start: 649
    functionDepth: 1
    functionLinenumber: 649
    functionLinenumberEnd: 671
    functionName: opus_uint32::icwrs
    functionSourceFile: /src/opus/celt/cwrs.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - abs
    - opus_uint32::icwrs1
    - unext
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE opus_uint32 icwrs(int _n,int _k,opus_uint32 *_nc,const
      int *_y,\n opus_uint32 *_u)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/celt/cwrs.c:677,1
    - Dst: VARDECL
      Src: /src/opus/celt/cwrs.c:685,1
    - Dst: ALLOC
      Src: /src/opus/celt/cwrs.c:687,1
    - Dst: ncwrs_urow
      Src: /src/opus/celt/cwrs.c:688,1
    - Dst: log2_frac
      Src: /src/opus/celt/cwrs.c:690,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 4
    argNames:
    - _bits
    - _n
    - _maxk
    - _frac
    argTypes:
    - opus_int16*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 693
      start: 674
    functionDepth: 2
    functionLinenumber: 674
    functionLinenumberEnd: 693
    functionName: get_required_bits
    functionSourceFile: /src/opus/celt/cwrs.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - log2_frac
    - ncwrs_urow
    - VARDECL
    - ALLOC
    linkageType: ''
    returnType: void
    signature: void get_required_bits(opus_int16 *_bits,int _n,int _maxk,int _frac)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/celt/cwrs.c:698,1
    - Dst: celt_assert
      Src: /src/opus/celt/cwrs.c:701,1
    - Dst: ALLOC
      Src: /src/opus/celt/cwrs.c:702,1
    - Dst: icwrs
      Src: /src/opus/celt/cwrs.c:703,1
    - Dst: ec_enc_uint
      Src: /src/opus/celt/cwrs.c:704,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 4
    argNames:
    - _y
    - _n
    - _k
    - _enc
    argTypes:
    - int*
    - int
    - int
    - ec_enc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 706
      start: 696
    functionDepth: 5
    functionLinenumber: 696
    functionLinenumberEnd: 706
    functionName: encode_pulses
    functionSourceFile: /src/opus/celt/cwrs.c
    functionUses: 4
    functionsReached:
    - celt_assert
    - ec_enc_uint
    - icwrs
    - VARDECL
    - ALLOC
    linkageType: ''
    returnType: void
    signature: void encode_pulses(const int *_y,int _n,int _k,ec_enc *_enc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/celt/cwrs.c:709,1
    - Dst: celt_assert
      Src: /src/opus/celt/cwrs.c:712,1
    - Dst: ALLOC
      Src: /src/opus/celt/cwrs.c:713,1
    - Dst: cwrsi
      Src: /src/opus/celt/cwrs.c:714,1
    - Dst: ec_dec_uint
      Src: /src/opus/celt/cwrs.c:714,1
    - Dst: ncwrs_urow
      Src: /src/opus/celt/cwrs.c:714,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 4
    argNames:
    - _y
    - _n
    - _k
    - _dec
    argTypes:
    - int*
    - int
    - int
    - ec_dec*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 717
      start: 708
    functionDepth: 4
    functionLinenumber: 708
    functionLinenumberEnd: 717
    functionName: decode_pulses
    functionSourceFile: /src/opus/celt/cwrs.c
    functionUses: 3
    functionsReached:
    - celt_assert
    - ec_dec_uint
    - cwrsi
    - ncwrs_urow
    - VARDECL
    - ALLOC
    linkageType: ''
    returnType: opus_val32
    signature: opus_val32 decode_pulses(int *_y,int _n,int _k,ec_dec *_dec)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - nbytes
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 41
    functionName: KISS_FFT_MALLOC
    functionSourceFile: /src/opus/celt/kiss_fft.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: KISS_FFT_MALLOC(nbytes)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _st
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 174
    functionDepth: 0
    functionLinenumber: 174
    functionLinenumberEnd: 176
    functionName: opus_fft_alloc_arch
    functionSourceFile: /src/opus/celt/kiss_fft.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: opus_fft_alloc_arch(_st, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _st
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 181
    functionName: opus_fft_free_arch
    functionSourceFile: /src/opus/celt/kiss_fft.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: opus_fft_free_arch(_st, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - _cfg
    - ','
    - _fin
    - ','
    - _fout
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 186
    functionName: opus_fft
    functionSourceFile: /src/opus/celt/kiss_fft.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: opus_fft(_cfg, _fin, _fout, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - _cfg
    - ','
    - _fin
    - ','
    - _fout
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 191
    functionName: opus_ifft
    functionSourceFile: /src/opus/celt/kiss_fft.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: opus_ifft(_cfg, _fin, _fout, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _st
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 196
    functionName: opus_fft_alloc_arch
    functionSourceFile: /src/opus/celt/kiss_fft.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: opus_fft_alloc_arch(_st, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _st
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 199
    functionName: opus_fft_free_arch
    functionSourceFile: /src/opus/celt/kiss_fft.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: opus_fft_free_arch(_st, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - _cfg
    - ','
    - _fin
    - ','
    - _fout
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 202
    functionName: opus_fft
    functionSourceFile: /src/opus/celt/kiss_fft.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: opus_fft(_cfg, _fin, _fout, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - _cfg
    - ','
    - _fin
    - ','
    - _fout
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 205
    functionName: opus_ifft
    functionSourceFile: /src/opus/celt/kiss_fft.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: opus_ifft(_cfg, _fin, _fout, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _lmpy
      Src: /src/opus/celt/fixed_c5x.h:40,1
    - Dst: _lmpy
      Src: /src/opus/celt/fixed_c5x.h:41,1
    - Dst: _lmpyu
      Src: /src/opus/celt/fixed_c5x.h:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - i
    - j
    argTypes:
    - long
    - long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 43
    functionName: IMUL32
    functionSourceFile: /src/opus/celt/fixed_c5x.h
    functionUses: 7
    functionsReached:
    - _lmpy
    - _lmpyu
    linkageType: ''
    returnType: OPUS_INLINE long
    signature: OPUS_INLINE long IMUL32(long i, long j)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 47
    functionName: MAX16
    functionSourceFile: /src/opus/celt/fixed_c5x.h
    functionUses: 16
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAX16(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 50
    functionName: MIN16
    functionSourceFile: /src/opus/celt/fixed_c5x.h
    functionUses: 15
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MIN16(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 53
    functionName: MAX32
    functionSourceFile: /src/opus/celt/fixed_c5x.h
    functionUses: 38
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAX32(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 56
    functionName: MIN32
    functionSourceFile: /src/opus/celt/fixed_c5x.h
    functionUses: 32
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MIN32(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - shift
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 59
    functionName: VSHR32
    functionSourceFile: /src/opus/celt/fixed_c5x.h
    functionUses: 19
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VSHR32(a, shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 62
    functionName: MULT16_16_Q15
    functionSourceFile: /src/opus/celt/fixed_c5x.h
    functionUses: 21
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_16_Q15(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 65
    functionName: MULT16_16SU
    functionSourceFile: /src/opus/celt/fixed_c5x.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_16SU(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 68
    functionName: MULT_16_16
    functionSourceFile: /src/opus/celt/fixed_c5x.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT_16_16(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 72
    functionName: MULT16_32_Q15
    functionSourceFile: /src/opus/celt/fixed_c5x.h
    functionUses: 24
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_32_Q15(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 74
    functionName: celt_ilog2
    functionSourceFile: /src/opus/celt/fixed_c5x.h
    functionUses: 28
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_ilog2(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - len
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 77
    functionName: celt_maxabs16
    functionSourceFile: /src/opus/celt/fixed_c5x.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_maxabs16(x, len)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - var
    - ','
    - size
    - ','
    - type
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 95
    functionName: ALLOC
    functionSourceFile: /src/opus/celt/stack_alloc.h
    functionUses: 80
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ALLOC(var, size, type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - type
    - ','
    - var
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 104
    functionName: VARDECL
    functionSourceFile: /src/opus/celt/stack_alloc.h
    functionUses: 76
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VARDECL(type, var)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - var
    - ','
    - size
    - ','
    - type
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 107
    functionName: ALLOC
    functionSourceFile: /src/opus/celt/stack_alloc.h
    functionUses: 80
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ALLOC(var, size, type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - var
    - ','
    - size
    - ','
    - type
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 109
    functionName: ALLOC
    functionSourceFile: /src/opus/celt/stack_alloc.h
    functionUses: 80
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ALLOC(var, size, type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - T
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 129
    functionName: ALIGNOF
    functionSourceFile: /src/opus/celt/stack_alloc.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ALIGNOF(T)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - T
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 131
    functionName: ALIGNOF
    functionSourceFile: /src/opus/celt/stack_alloc.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ALIGNOF(T)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - T
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 140
    functionName: ALIGNOF
    functionSourceFile: /src/opus/celt/stack_alloc.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ALIGNOF(T)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - T
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 142
    functionName: ALIGNOF
    functionSourceFile: /src/opus/celt/stack_alloc.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ALIGNOF(T)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - stack
    - ','
    - size
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 156
    functionName: ALIGN
    functionSourceFile: /src/opus/celt/stack_alloc.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ALIGN(stack, size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - stack
    - ','
    - size
    - ','
    - type
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 157
    functionName: PUSH
    functionSourceFile: /src/opus/celt/stack_alloc.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PUSH(stack, size, type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - stack
    - ','
    - size
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 163
    functionName: ALIGN
    functionSourceFile: /src/opus/celt/stack_alloc.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ALIGN(stack, size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - stack
    - ','
    - size
    - ','
    - type
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 166
    functionName: PUSH
    functionSourceFile: /src/opus/celt/stack_alloc.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PUSH(stack, size, type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - stack
    - ','
    - size
    - ','
    - type
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 168
    functionName: PUSH
    functionSourceFile: /src/opus/celt/stack_alloc.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PUSH(stack, size, type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - type
    - ','
    - var
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 181
    functionName: VARDECL
    functionSourceFile: /src/opus/celt/stack_alloc.h
    functionUses: 76
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: VARDECL(type, var)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - var
    - ','
    - size
    - ','
    - type
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 182
    functionName: ALLOC
    functionSourceFile: /src/opus/celt/stack_alloc.h
    functionUses: 80
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ALLOC(var, size, type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - ptr
    - ','
    - len
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 192
    functionName: OPUS_CHECK_ARRAY
    functionSourceFile: /src/opus/celt/stack_alloc.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_CHECK_ARRAY(ptr, len)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - value
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 193
    functionName: OPUS_CHECK_VALUE
    functionSourceFile: /src/opus/celt/stack_alloc.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_CHECK_VALUE(value)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - ptr
    - ','
    - len
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 194
    functionName: OPUS_CHECK_ARRAY_COND
    functionSourceFile: /src/opus/celt/stack_alloc.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_CHECK_ARRAY_COND(ptr, len)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - value
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 195
    functionName: OPUS_CHECK_VALUE_COND
    functionSourceFile: /src/opus/celt/stack_alloc.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_CHECK_VALUE_COND(value)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - value
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 196
    functionName: OPUS_PRINT_INT
    functionSourceFile: /src/opus/celt/stack_alloc.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_PRINT_INT(value)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 200
    functionName: _opus_false
    functionSourceFile: /src/opus/celt/stack_alloc.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE _opus_false(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - ptr
    - ','
    - len
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 202
    functionName: OPUS_CHECK_ARRAY
    functionSourceFile: /src/opus/celt/stack_alloc.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_CHECK_ARRAY(ptr, len)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - value
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 203
    functionName: OPUS_CHECK_VALUE
    functionSourceFile: /src/opus/celt/stack_alloc.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_CHECK_VALUE(value)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - value
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 204
    functionName: OPUS_PRINT_INT
    functionSourceFile: /src/opus/celt/stack_alloc.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OPUS_PRINT_INT(value)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - decay
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 50
    functionName: ec_laplace_get_start_freq
    functionSourceFile: /src/opus/celt/tests/test_unit_laplace.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int ec_laplace_get_start_freq(int decay)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/opus/celt/tests/test_unit_laplace.c:61,1
    - Dst: ec_enc_init
      Src: /src/opus/celt/tests/test_unit_laplace.c:62,1
    - Dst: rand
      Src: /src/opus/celt/tests/test_unit_laplace.c:69,1
    - Dst: rand
      Src: /src/opus/celt/tests/test_unit_laplace.c:70,1
    - Dst: ec_laplace_encode
      Src: /src/opus/celt/tests/test_unit_laplace.c:73,1
    - Dst: ec_laplace_get_start_freq
      Src: /src/opus/celt/tests/test_unit_laplace.c:74,1
    - Dst: ec_enc_done
      Src: /src/opus/celt/tests/test_unit_laplace.c:76,1
    - Dst: ec_dec_init
      Src: /src/opus/celt/tests/test_unit_laplace.c:78,1
    - Dst: ec_get_buffer
      Src: /src/opus/celt/tests/test_unit_laplace.c:78,1
    - Dst: ec_range_bytes
      Src: /src/opus/celt/tests/test_unit_laplace.c:78,1
    - Dst: ec_laplace_decode
      Src: /src/opus/celt/tests/test_unit_laplace.c:82,1
    - Dst: ec_laplace_get_start_freq
      Src: /src/opus/celt/tests/test_unit_laplace.c:83,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_laplace.c:86,1
    - Dst: free
      Src: /src/opus/celt/tests/test_unit_laplace.c:91,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 52
    functionDepth: 3
    functionLinenumber: 52
    functionLinenumberEnd: 94
    functionName: main
    functionSourceFile: /src/opus/celt/tests/test_unit_laplace.c
    functionUses: 0
    functionsReached:
    - ec_laplace_get_start_freq
    - ec_enc_init
    - rand
    - ec_laplace_decode
    - ec_enc_done
    - ec_get_buffer
    - ec_dec_init
    - malloc
    - ec_range_bytes
    - fprintf
    - ec_laplace_encode
    - free
    linkageType: ''
    returnType: int
    signature: int main(void)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: get_pulses
      Src: /src/opus/celt/tests/test_unit_cwrs32.c:104,1
    - Dst: printf
      Src: /src/opus/celt/tests/test_unit_cwrs32.c:106,1
    - Dst: ncwrs_urow
      Src: /src/opus/celt/tests/test_unit_cwrs32.c:108,1
    - Dst: CELT_PVQ_V
      Src: /src/opus/celt/tests/test_unit_cwrs32.c:110,1
    - Dst: memcpy
      Src: /src/opus/celt/tests/test_unit_cwrs32.c:124,1
    - Dst: cwrsi
      Src: /src/opus/celt/tests/test_unit_cwrs32.c:125,1
    - Dst: cwrsi
      Src: /src/opus/celt/tests/test_unit_cwrs32.c:127,1
    - Dst: abs
      Src: /src/opus/celt/tests/test_unit_cwrs32.c:130,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_cwrs32.c:132,1
    - Dst: icwrs
      Src: /src/opus/celt/tests/test_unit_cwrs32.c:140,1
    - Dst: icwrs
      Src: /src/opus/celt/tests/test_unit_cwrs32.c:142,1
    - Dst: CELT_PVQ_V
      Src: /src/opus/celt/tests/test_unit_cwrs32.c:143,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_cwrs32.c:146,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_cwrs32.c:151,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 41
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 88
    functionDepth: 2
    functionLinenumber: 88
    functionLinenumberEnd: 162
    functionName: main
    functionSourceFile: /src/opus/celt/tests/test_unit_cwrs32.c
    functionUses: 0
    functionsReached:
    - memcpy
    - cwrsi
    - abs
    - icwrs
    - ncwrs_urow
    - CELT_PVQ_V
    - fprintf
    - get_pulses
    - printf
    linkageType: ''
    returnType: int
    signature: int main(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: cos
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:55,1
    - Dst: sin
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:56,1
    - Dst: log10
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:75,1
    - Dst: printf
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:76,1
    - Dst: printf
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:78,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 4
    argNames:
    - in
    - out
    - nfft
    - isinverse
    argTypes:
    - mini_kiss_fft_cpx*
    - mini_kiss_fft_cpx*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 81
    functionName: check
    functionSourceFile: /src/opus/celt/tests/test_unit_mini_kfft.c
    functionUses: 3
    functionsReached:
    - log10
    - sin
    - cos
    - printf
    linkageType: ''
    returnType: void
    signature: void check(mini_kiss_fft_cpx  * in,mini_kiss_fft_cpx  * out,int nfft,int
      isinverse)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: mini_kiss_fft_alloc
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:91,1
    - Dst: mini_kiss_fft_alloc
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:92,1
    - Dst: malloc
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:94,1
    - Dst: malloc
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:95,1
    - Dst: rand
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:98,1
    - Dst: rand
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:99,1
    - Dst: mini_kiss_fft
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:118,1
    - Dst: mini_kiss_fft
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:120,1
    - Dst: check
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:124,1
    - Dst: free
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:126,1
    - Dst: free
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:127,1
    - Dst: free
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:128,1
    - Dst: free
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:129,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 27
    argCount: 2
    argNames:
    - nfft
    - isinverse
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 83
    functionDepth: 4
    functionLinenumber: 83
    functionLinenumberEnd: 130
    functionName: test1d
    functionSourceFile: /src/opus/celt/tests/test_unit_mini_kfft.c
    functionUses: 0
    functionsReached:
    - mini_kiss_fft
    - rand
    - mini_kiss_fft_alloc
    - check
    - malloc
    - free
    linkageType: ''
    returnType: void
    signature: void test1d(int nfft,int isinverse)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:137,1
    - Dst: atoi
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:137,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:138,1
    - Dst: atoi
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:138,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:141,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:142,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:143,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:144,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:145,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:146,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:147,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:148,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:149,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:150,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:151,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:152,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:153,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:154,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:155,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:156,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:157,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mini_kfft.c:158,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 27
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 161
    functionName: main
    functionSourceFile: /src/opus/celt/tests/test_unit_mini_kfft.c
    functionUses: 0
    functionsReached:
    - atoi
    - test1d
    linkageType: ''
    returnType: int
    signature: int main(int argc,char ** argv)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_types.c:41,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_types.c:46,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 50
    functionName: main
    functionSourceFile: /src/opus/celt/tests/test_unit_types.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: int
    signature: int main(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - q
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 49
    functionName: FIX_INT_TO_DOUBLE
    functionSourceFile: /src/opus/celt/tests/test_unit_mathops.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FIX_INT_TO_DOUBLE(x,q)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - q
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 50
    functionName: DOUBLE_TO_FIX_INT
    functionSourceFile: /src/opus/celt/tests/test_unit_mathops.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: DOUBLE_TO_FIX_INT(x,q)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: celt_rcp
      Src: /src/opus/celt/tests/test_unit_mathops.c:63,1
    - Dst: fabs
      Src: /src/opus/celt/tests/test_unit_mathops.c:69,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:71,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 75
    functionName: testdiv
    functionSourceFile: /src/opus/celt/tests/test_unit_mathops.c
    functionUses: 0
    functionsReached:
    - fabs
    - celt_rcp
    - fprintf
    linkageType: ''
    returnType: void
    signature: void testdiv(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: celt_sqrt
      Src: /src/opus/celt/tests/test_unit_mathops.c:84,1
    - Dst: sqrt
      Src: /src/opus/celt/tests/test_unit_mathops.c:85,1
    - Dst: fabs
      Src: /src/opus/celt/tests/test_unit_mathops.c:86,1
    - Dst: fabs
      Src: /src/opus/celt/tests/test_unit_mathops.c:86,1
    - Dst: sqrt
      Src: /src/opus/celt/tests/test_unit_mathops.c:86,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:88,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 93
    functionName: testsqrt
    functionSourceFile: /src/opus/celt/tests/test_unit_mathops.c
    functionUses: 0
    functionsReached:
    - fabs
    - celt_sqrt
    - fprintf
    - sqrt
    linkageType: ''
    returnType: void
    signature: void testsqrt(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: bitexact_cos
      Src: /src/opus/celt/tests/test_unit_mathops.c:104,1
    - Dst: bitexact_cos
      Src: /src/opus/celt/tests/test_unit_mathops.c:111,1
    - Dst: bitexact_cos
      Src: /src/opus/celt/tests/test_unit_mathops.c:112,1
    - Dst: bitexact_cos
      Src: /src/opus/celt/tests/test_unit_mathops.c:112,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:114,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 95
    functionDepth: 2
    functionLinenumber: 95
    functionLinenumberEnd: 117
    functionName: testbitexactcos
    functionSourceFile: /src/opus/celt/tests/test_unit_mathops.c
    functionUses: 0
    functionsReached:
    - bitexact_cos
    - fprintf
    linkageType: ''
    returnType: void
    signature: void testbitexactcos(void)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: bitexact_cos
      Src: /src/opus/celt/tests/test_unit_mathops.c:128,1
    - Dst: bitexact_cos
      Src: /src/opus/celt/tests/test_unit_mathops.c:129,1
    - Dst: bitexact_log2tan
      Src: /src/opus/celt/tests/test_unit_mathops.c:130,1
    - Dst: bitexact_log2tan
      Src: /src/opus/celt/tests/test_unit_mathops.c:133,1
    - Dst: bitexact_log2tan
      Src: /src/opus/celt/tests/test_unit_mathops.c:140,1
    - Dst: bitexact_log2tan
      Src: /src/opus/celt/tests/test_unit_mathops.c:140,1
    - Dst: bitexact_log2tan
      Src: /src/opus/celt/tests/test_unit_mathops.c:141,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:143,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 119
    functionDepth: 2
    functionLinenumber: 119
    functionLinenumberEnd: 146
    functionName: testbitexactlog2tan
    functionSourceFile: /src/opus/celt/tests/test_unit_mathops.c
    functionUses: 0
    functionsReached:
    - bitexact_log2tan
    - bitexact_cos
    - fprintf
    linkageType: ''
    returnType: void
    signature: void testbitexactlog2tan(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fabs
      Src: /src/opus/celt/tests/test_unit_mathops.c:156,1
    - Dst: log
      Src: /src/opus/celt/tests/test_unit_mathops.c:156,1
    - Dst: celt_log2
      Src: /src/opus/celt/tests/test_unit_mathops.c:156,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:164,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:171,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 149
    functionDepth: 1
    functionLinenumber: 149
    functionLinenumberEnd: 172
    functionName: testlog2
    functionSourceFile: /src/opus/celt/tests/test_unit_mathops.c
    functionUses: 0
    functionsReached:
    - log
    - fabs
    - celt_log2
    - fprintf
    linkageType: ''
    returnType: void
    signature: void testlog2(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fabs
      Src: /src/opus/celt/tests/test_unit_mathops.c:181,1
    - Dst: log
      Src: /src/opus/celt/tests/test_unit_mathops.c:181,1
    - Dst: celt_exp2
      Src: /src/opus/celt/tests/test_unit_mathops.c:181,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:189,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:196,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 174
    functionDepth: 1
    functionLinenumber: 174
    functionLinenumberEnd: 197
    functionName: testexp2
    functionSourceFile: /src/opus/celt/tests/test_unit_mathops.c
    functionUses: 0
    functionsReached:
    - log
    - fabs
    - celt_exp2
    - fprintf
    linkageType: ''
    returnType: void
    signature: void testexp2(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fabs
      Src: /src/opus/celt/tests/test_unit_mathops.c:206,1
    - Dst: celt_log2
      Src: /src/opus/celt/tests/test_unit_mathops.c:206,1
    - Dst: celt_exp2
      Src: /src/opus/celt/tests/test_unit_mathops.c:206,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:214,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:221,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 199
    functionDepth: 1
    functionLinenumber: 199
    functionLinenumberEnd: 222
    functionName: testexp2log2
    functionSourceFile: /src/opus/celt/tests/test_unit_mathops.c
    functionUses: 0
    functionsReached:
    - celt_exp2
    - fabs
    - celt_log2
    - fprintf
    linkageType: ''
    returnType: void
    signature: void testexp2log2(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fabs
      Src: /src/opus/celt/tests/test_unit_mathops.c:231,1
    - Dst: cos
      Src: /src/opus/celt/tests/test_unit_mathops.c:231,1
    - Dst: celt_cos_norm2
      Src: /src/opus/celt/tests/test_unit_mathops.c:231,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:239,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:246,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 224
    functionDepth: 1
    functionLinenumber: 224
    functionLinenumberEnd: 247
    functionName: test_cos
    functionSourceFile: /src/opus/celt/tests/test_unit_mathops.c
    functionUses: 0
    functionsReached:
    - celt_cos_norm2
    - fabs
    - cos
    - fprintf
    linkageType: ''
    returnType: void
    signature: void test_cos(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fabs
      Src: /src/opus/celt/tests/test_unit_mathops.c:262,1
    - Dst: atan2
      Src: /src/opus/celt/tests/test_unit_mathops.c:262,1
    - Dst: celt_atan2p_norm
      Src: /src/opus/celt/tests/test_unit_mathops.c:262,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:270,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:279,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 249
    functionDepth: 2
    functionLinenumber: 249
    functionLinenumberEnd: 280
    functionName: test_atan2
    functionSourceFile: /src/opus/celt/tests/test_unit_mathops.c
    functionUses: 0
    functionsReached:
    - celt_atan2p_norm
    - fabs
    - atan2
    - fprintf
    linkageType: ''
    returnType: void
    signature: void test_atan2(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fabs
      Src: /src/opus/celt/tests/test_unit_mathops.c:295,1
    - Dst: log
      Src: /src/opus/celt/tests/test_unit_mathops.c:295,1
    - Dst: FIX_INT_TO_DOUBLE
      Src: /src/opus/celt/tests/test_unit_mathops.c:295,1
    - Dst: FIX_INT_TO_DOUBLE
      Src: /src/opus/celt/tests/test_unit_mathops.c:296,1
    - Dst: celt_log2_db
      Src: /src/opus/celt/tests/test_unit_mathops.c:296,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:303,1
    - Dst: FIX_INT_TO_DOUBLE
      Src: /src/opus/celt/tests/test_unit_mathops.c:304,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:308,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 284
    functionDepth: 1
    functionLinenumber: 284
    functionLinenumberEnd: 310
    functionName: testlog2_db
    functionSourceFile: /src/opus/celt/tests/test_unit_mathops.c
    functionUses: 0
    functionsReached:
    - celt_log2_db
    - fabs
    - FIX_INT_TO_DOUBLE
    - fprintf
    - log
    linkageType: ''
    returnType: void
    signature: void testlog2_db(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fabs
      Src: /src/opus/celt/tests/test_unit_mathops.c:317,1
    - Dst: log
      Src: /src/opus/celt/tests/test_unit_mathops.c:317,1
    - Dst: celt_log2
      Src: /src/opus/celt/tests/test_unit_mathops.c:317,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:320,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 312
    functionDepth: 1
    functionLinenumber: 312
    functionLinenumberEnd: 324
    functionName: testlog2
    functionSourceFile: /src/opus/celt/tests/test_unit_mathops.c
    functionUses: 0
    functionsReached:
    - log
    - fabs
    - celt_log2
    - fprintf
    linkageType: ''
    returnType: void
    signature: void testlog2(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fabs
      Src: /src/opus/celt/tests/test_unit_mathops.c:331,1
    - Dst: log
      Src: /src/opus/celt/tests/test_unit_mathops.c:331,1
    - Dst: celt_exp2
      Src: /src/opus/celt/tests/test_unit_mathops.c:331,1
    - Dst: fabs
      Src: /src/opus/celt/tests/test_unit_mathops.c:332,1
    - Dst: exp
      Src: /src/opus/celt/tests/test_unit_mathops.c:332,1
    - Dst: celt_exp2
      Src: /src/opus/celt/tests/test_unit_mathops.c:332,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:335,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 326
    functionDepth: 1
    functionLinenumber: 326
    functionLinenumberEnd: 339
    functionName: testexp2
    functionSourceFile: /src/opus/celt/tests/test_unit_mathops.c
    functionUses: 0
    functionsReached:
    - celt_exp2
    - fabs
    - exp
    - fprintf
    - log
    linkageType: ''
    returnType: void
    signature: void testexp2(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: FIX_INT_TO_DOUBLE
      Src: /src/opus/celt/tests/test_unit_mathops.c:345,1
    - Dst: DOUBLE_TO_FIX_INT
      Src: /src/opus/celt/tests/test_unit_mathops.c:354,1
    - Dst: FIX_INT_TO_DOUBLE
      Src: /src/opus/celt/tests/test_unit_mathops.c:355,1
    - Dst: exp
      Src: /src/opus/celt/tests/test_unit_mathops.c:357,1
    - Dst: fabs
      Src: /src/opus/celt/tests/test_unit_mathops.c:358,1
    - Dst: FIX_INT_TO_DOUBLE
      Src: /src/opus/celt/tests/test_unit_mathops.c:359,1
    - Dst: celt_exp2_db
      Src: /src/opus/celt/tests/test_unit_mathops.c:359,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:365,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 341
    functionDepth: 2
    functionLinenumber: 341
    functionLinenumberEnd: 375
    functionName: testexp2_db
    functionSourceFile: /src/opus/celt/tests/test_unit_mathops.c
    functionUses: 0
    functionsReached:
    - celt_exp2_db
    - DOUBLE_TO_FIX_INT
    - fabs
    - FIX_INT_TO_DOUBLE
    - exp
    - fprintf
    linkageType: ''
    returnType: void
    signature: void testexp2_db(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fabs
      Src: /src/opus/celt/tests/test_unit_mathops.c:382,1
    - Dst: celt_exp2
      Src: /src/opus/celt/tests/test_unit_mathops.c:382,1
    - Dst: celt_log2
      Src: /src/opus/celt/tests/test_unit_mathops.c:382,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:385,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 389
      start: 377
    functionDepth: 1
    functionLinenumber: 377
    functionLinenumberEnd: 389
    functionName: testexp2log2
    functionSourceFile: /src/opus/celt/tests/test_unit_mathops.c
    functionUses: 0
    functionsReached:
    - celt_log2
    - fabs
    - celt_exp2
    - fprintf
    linkageType: ''
    returnType: void
    signature: void testexp2log2(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: celt_ilog2
      Src: /src/opus/celt/tests/test_unit_mathops.c:399,1
    - Dst: printf
      Src: /src/opus/celt/tests/test_unit_mathops.c:402,1
    - Dst: printf
      Src: /src/opus/celt/tests/test_unit_mathops.c:409,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 413
      start: 391
    functionDepth: 0
    functionLinenumber: 391
    functionLinenumberEnd: 413
    functionName: testilog2
    functionSourceFile: /src/opus/celt/tests/test_unit_mathops.c
    functionUses: 0
    functionsReached:
    - celt_ilog2
    - printf
    linkageType: ''
    returnType: void
    signature: void testilog2(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: DOUBLE_TO_FIX_INT
      Src: /src/opus/celt/tests/test_unit_mathops.c:425,1
    - Dst: FIX_INT_TO_DOUBLE
      Src: /src/opus/celt/tests/test_unit_mathops.c:426,1
    - Dst: fabs
      Src: /src/opus/celt/tests/test_unit_mathops.c:427,1
    - Dst: FIX_INT_TO_DOUBLE
      Src: /src/opus/celt/tests/test_unit_mathops.c:427,1
    - Dst: celt_rsqrt_norm32
      Src: /src/opus/celt/tests/test_unit_mathops.c:427,1
    - Dst: sqrt
      Src: /src/opus/celt/tests/test_unit_mathops.c:428,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:435,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:443,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 444
      start: 415
    functionDepth: 1
    functionLinenumber: 415
    functionLinenumberEnd: 444
    functionName: testrsqrt
    functionSourceFile: /src/opus/celt/tests/test_unit_mathops.c
    functionUses: 0
    functionsReached:
    - DOUBLE_TO_FIX_INT
    - fprintf
    - fabs
    - FIX_INT_TO_DOUBLE
    - sqrt
    - celt_rsqrt_norm32
    linkageType: ''
    returnType: void
    signature: void testrsqrt(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: FIX_INT_TO_DOUBLE
      Src: /src/opus/celt/tests/test_unit_mathops.c:450,1
    - Dst: fabs
      Src: /src/opus/celt/tests/test_unit_mathops.c:454,1
    - Dst: sqrt
      Src: /src/opus/celt/tests/test_unit_mathops.c:454,1
    - Dst: FIX_INT_TO_DOUBLE
      Src: /src/opus/celt/tests/test_unit_mathops.c:454,1
    - Dst: celt_sqrt32
      Src: /src/opus/celt/tests/test_unit_mathops.c:454,1
    - Dst: sqrt
      Src: /src/opus/celt/tests/test_unit_mathops.c:455,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:459,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 469
      start: 446
    functionDepth: 1
    functionLinenumber: 446
    functionLinenumberEnd: 469
    functionName: testsqrt32
    functionSourceFile: /src/opus/celt/tests/test_unit_mathops.c
    functionUses: 0
    functionsReached:
    - celt_sqrt32
    - fabs
    - FIX_INT_TO_DOUBLE
    - sqrt
    - fprintf
    linkageType: ''
    returnType: void
    signature: void testsqrt32(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: DOUBLE_TO_FIX_INT
      Src: /src/opus/celt/tests/test_unit_mathops.c:484,1
    - Dst: fabs
      Src: /src/opus/celt/tests/test_unit_mathops.c:485,1
    - Dst: atan
      Src: /src/opus/celt/tests/test_unit_mathops.c:485,1
    - Dst: FIX_INT_TO_DOUBLE
      Src: /src/opus/celt/tests/test_unit_mathops.c:485,1
    - Dst: FIX_INT_TO_DOUBLE
      Src: /src/opus/celt/tests/test_unit_mathops.c:486,1
    - Dst: celt_atan_norm
      Src: /src/opus/celt/tests/test_unit_mathops.c:486,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:493,1
    - Dst: FIX_INT_TO_DOUBLE
      Src: /src/opus/celt/tests/test_unit_mathops.c:495,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:499,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 501
      start: 471
    functionDepth: 1
    functionLinenumber: 471
    functionLinenumberEnd: 501
    functionName: testatan_norm
    functionSourceFile: /src/opus/celt/tests/test_unit_mathops.c
    functionUses: 0
    functionsReached:
    - DOUBLE_TO_FIX_INT
    - fabs
    - FIX_INT_TO_DOUBLE
    - celt_atan_norm
    - fprintf
    - atan
    linkageType: ''
    returnType: void
    signature: void testatan_norm(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: DOUBLE_TO_FIX_INT
      Src: /src/opus/celt/tests/test_unit_mathops.c:518,1
    - Dst: DOUBLE_TO_FIX_INT
      Src: /src/opus/celt/tests/test_unit_mathops.c:521,1
    - Dst: fabs
      Src: /src/opus/celt/tests/test_unit_mathops.c:525,1
    - Dst: atan2
      Src: /src/opus/celt/tests/test_unit_mathops.c:525,1
    - Dst: FIX_INT_TO_DOUBLE
      Src: /src/opus/celt/tests/test_unit_mathops.c:525,1
    - Dst: FIX_INT_TO_DOUBLE
      Src: /src/opus/celt/tests/test_unit_mathops.c:526,1
    - Dst: FIX_INT_TO_DOUBLE
      Src: /src/opus/celt/tests/test_unit_mathops.c:527,1
    - Dst: celt_atan2p_norm
      Src: /src/opus/celt/tests/test_unit_mathops.c:527,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:534,1
    - Dst: FIX_INT_TO_DOUBLE
      Src: /src/opus/celt/tests/test_unit_mathops.c:536,1
    - Dst: FIX_INT_TO_DOUBLE
      Src: /src/opus/celt/tests/test_unit_mathops.c:537,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:542,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 544
      start: 503
    functionDepth: 2
    functionLinenumber: 503
    functionLinenumberEnd: 544
    functionName: testatan2p_norm
    functionSourceFile: /src/opus/celt/tests/test_unit_mathops.c
    functionUses: 0
    functionsReached:
    - DOUBLE_TO_FIX_INT
    - celt_atan2p_norm
    - fabs
    - FIX_INT_TO_DOUBLE
    - fprintf
    - atan2
    linkageType: ''
    returnType: void
    signature: void testatan2p_norm(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: testatan_norm
      Src: /src/opus/celt/tests/test_unit_mathops.c:548,1
    - Dst: testatan2p_norm
      Src: /src/opus/celt/tests/test_unit_mathops.c:549,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 550
      start: 546
    functionDepth: 3
    functionLinenumber: 546
    functionLinenumberEnd: 550
    functionName: testatan
    functionSourceFile: /src/opus/celt/tests/test_unit_mathops.c
    functionUses: 0
    functionsReached:
    - testatan_norm
    - testatan2p_norm
    linkageType: ''
    returnType: void
    signature: void testatan(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: DOUBLE_TO_FIX_INT
      Src: /src/opus/celt/tests/test_unit_mathops.c:563,1
    - Dst: fabs
      Src: /src/opus/celt/tests/test_unit_mathops.c:564,1
    - Dst: cos
      Src: /src/opus/celt/tests/test_unit_mathops.c:564,1
    - Dst: FIX_INT_TO_DOUBLE
      Src: /src/opus/celt/tests/test_unit_mathops.c:564,1
    - Dst: FIX_INT_TO_DOUBLE
      Src: /src/opus/celt/tests/test_unit_mathops.c:565,1
    - Dst: celt_cos_norm32
      Src: /src/opus/celt/tests/test_unit_mathops.c:565,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:572,1
    - Dst: FIX_INT_TO_DOUBLE
      Src: /src/opus/celt/tests/test_unit_mathops.c:574,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:578,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 579
      start: 552
    functionDepth: 2
    functionLinenumber: 552
    functionLinenumberEnd: 579
    functionName: test_cos_norm32
    functionSourceFile: /src/opus/celt/tests/test_unit_mathops.c
    functionUses: 0
    functionsReached:
    - celt_cos_norm32
    - DOUBLE_TO_FIX_INT
    - fabs
    - FIX_INT_TO_DOUBLE
    - fprintf
    - cos
    linkageType: ''
    returnType: void
    signature: void test_cos_norm32(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test_cos_norm32
      Src: /src/opus/celt/tests/test_unit_mathops.c:583,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 584
      start: 581
    functionDepth: 3
    functionLinenumber: 581
    functionLinenumberEnd: 584
    functionName: test_cos
    functionSourceFile: /src/opus/celt/tests/test_unit_mathops.c
    functionUses: 0
    functionsReached:
    - test_cos_norm32
    linkageType: ''
    returnType: void
    signature: void test_cos(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FIX_INT_TO_DOUBLE
      Src: /src/opus/celt/tests/test_unit_mathops.c:591,1
    - Dst: DOUBLE_TO_FIX_INT
      Src: /src/opus/celt/tests/test_unit_mathops.c:601,1
    - Dst: FIX_INT_TO_DOUBLE
      Src: /src/opus/celt/tests/test_unit_mathops.c:602,1
    - Dst: fabs
      Src: /src/opus/celt/tests/test_unit_mathops.c:604,1
    - Dst: FIX_INT_TO_DOUBLE
      Src: /src/opus/celt/tests/test_unit_mathops.c:605,1
    - Dst: celt_rcp_norm32
      Src: /src/opus/celt/tests/test_unit_mathops.c:605,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:612,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:621,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 622
      start: 586
    functionDepth: 2
    functionLinenumber: 586
    functionLinenumberEnd: 622
    functionName: test_rcp_norm32
    functionSourceFile: /src/opus/celt/tests/test_unit_mathops.c
    functionUses: 0
    functionsReached:
    - DOUBLE_TO_FIX_INT
    - fabs
    - celt_rcp_norm32
    - FIX_INT_TO_DOUBLE
    - fprintf
    linkageType: ''
    returnType: void
    signature: void test_rcp_norm32(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/celt/tests/test_unit_mathops.c:637,1
    - Dst: celt_assert
      Src: /src/opus/celt/tests/test_unit_mathops.c:660,1
    - Dst: celt_float2int16_c
      Src: /src/opus/celt/tests/test_unit_mathops.c:678,1
    - Dst: celt_float2int16
      Src: /src/opus/celt/tests/test_unit_mathops.c:680,1
    - Dst: opus_select_arch
      Src: /src/opus/celt/tests/test_unit_mathops.c:680,1
    - Dst: FLOAT2INT16
      Src: /src/opus/celt/tests/test_unit_mathops.c:685,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:688,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:698,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 48
    argCount: 2
    argNames:
    - use_ref_impl
    - buffer_size
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 704
      start: 628
    functionDepth: 2
    functionLinenumber: 628
    functionLinenumberEnd: 704
    functionName: testcelt_float2int16
    functionSourceFile: /src/opus/celt/tests/test_unit_mathops.c
    functionUses: 0
    functionsReached:
    - FLOAT2INT16
    - celt_assert
    - opus_select_arch
    - celt_float2int16_c
    - celt_float2int16
    - fprintf
    linkageType: ''
    returnType: void
    signature: void testcelt_float2int16(int use_ref_impl, int buffer_size)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: opus_select_arch
      Src: /src/opus/celt/tests/test_unit_mathops.c:711,1
    - Dst: memcpy
      Src: /src/opus/celt/tests/test_unit_mathops.c:722,1
    - Dst: opus_limit2_checkwithin1_c
      Src: /src/opus/celt/tests/test_unit_mathops.c:723,1
    - Dst: opus_limit2_checkwithin1
      Src: /src/opus/celt/tests/test_unit_mathops.c:723,1
    - Dst: memcmp
      Src: /src/opus/celt/tests/test_unit_mathops.c:724,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:726,1
    - Dst: memcpy
      Src: /src/opus/celt/tests/test_unit_mathops.c:736,1
    - Dst: opus_limit2_checkwithin1_c
      Src: /src/opus/celt/tests/test_unit_mathops.c:738,1
    - Dst: opus_limit2_checkwithin1
      Src: /src/opus/celt/tests/test_unit_mathops.c:738,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:741,1
    - Dst: memcmp
      Src: /src/opus/celt/tests/test_unit_mathops.c:745,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:747,1
    - Dst: memcpy
      Src: /src/opus/celt/tests/test_unit_mathops.c:758,1
    - Dst: opus_limit2_checkwithin1_c
      Src: /src/opus/celt/tests/test_unit_mathops.c:760,1
    - Dst: opus_limit2_checkwithin1
      Src: /src/opus/celt/tests/test_unit_mathops.c:760,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:763,1
    - Dst: memcmp
      Src: /src/opus/celt/tests/test_unit_mathops.c:767,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_mathops.c:769,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 38
    argCount: 1
    argNames:
    - use_ref_impl
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 775
      start: 706
    functionDepth: 2
    functionLinenumber: 706
    functionLinenumberEnd: 775
    functionName: testopus_limit2_checkwithin1
    functionSourceFile: /src/opus/celt/tests/test_unit_mathops.c
    functionUses: 0
    functionsReached:
    - opus_limit2_checkwithin1_c
    - opus_select_arch
    - memcmp
    - memcpy
    - opus_limit2_checkwithin1
    - fprintf
    linkageType: ''
    returnType: void
    signature: void testopus_limit2_checkwithin1(int use_ref_impl)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: testbitexactcos
      Src: /src/opus/celt/tests/test_unit_mathops.c:784,1
    - Dst: testbitexactlog2tan
      Src: /src/opus/celt/tests/test_unit_mathops.c:785,1
    - Dst: testdiv
      Src: /src/opus/celt/tests/test_unit_mathops.c:786,1
    - Dst: testsqrt
      Src: /src/opus/celt/tests/test_unit_mathops.c:787,1
    - Dst: testlog2
      Src: /src/opus/celt/tests/test_unit_mathops.c:788,1
    - Dst: testexp2
      Src: /src/opus/celt/tests/test_unit_mathops.c:789,1
    - Dst: testexp2log2
      Src: /src/opus/celt/tests/test_unit_mathops.c:790,1
    - Dst: test_cos
      Src: /src/opus/celt/tests/test_unit_mathops.c:791,1
    - Dst: testilog2
      Src: /src/opus/celt/tests/test_unit_mathops.c:793,1
    - Dst: testlog2_db
      Src: /src/opus/celt/tests/test_unit_mathops.c:794,1
    - Dst: testexp2_db
      Src: /src/opus/celt/tests/test_unit_mathops.c:795,1
    - Dst: testrsqrt
      Src: /src/opus/celt/tests/test_unit_mathops.c:796,1
    - Dst: testsqrt32
      Src: /src/opus/celt/tests/test_unit_mathops.c:797,1
    - Dst: testatan
      Src: /src/opus/celt/tests/test_unit_mathops.c:798,1
    - Dst: test_rcp_norm32
      Src: /src/opus/celt/tests/test_unit_mathops.c:799,1
    - Dst: test_atan2
      Src: /src/opus/celt/tests/test_unit_mathops.c:801,1
    - Dst: testcelt_float2int16
      Src: /src/opus/celt/tests/test_unit_mathops.c:806,1
    - Dst: testcelt_float2int16
      Src: /src/opus/celt/tests/test_unit_mathops.c:807,1
    - Dst: testcelt_float2int16
      Src: /src/opus/celt/tests/test_unit_mathops.c:808,1
    - Dst: testcelt_float2int16
      Src: /src/opus/celt/tests/test_unit_mathops.c:809,1
    - Dst: testopus_limit2_checkwithin1
      Src: /src/opus/celt/tests/test_unit_mathops.c:810,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 27
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 817
      start: 779
    functionDepth: 4
    functionLinenumber: 779
    functionLinenumberEnd: 817
    functionName: main
    functionSourceFile: /src/opus/celt/tests/test_unit_mathops.c
    functionUses: 0
    functionsReached:
    - test_atan2
    - testcelt_float2int16
    - test_cos
    - testopus_limit2_checkwithin1
    - testexp2log2
    - testbitexactlog2tan
    - testlog2
    - testilog2
    - testrsqrt
    - testsqrt
    - testexp2_db
    - testatan
    - testbitexactcos
    - testexp2
    - testlog2_db
    - test_rcp_norm32
    - testdiv
    - testsqrt32
    linkageType: ''
    returnType: int
    signature: int main(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: cos
      Src: /src/opus/celt/tests/test_unit_mdct.c:56,1
    - Dst: log10
      Src: /src/opus/celt/tests/test_unit_mdct.c:67,1
    - Dst: printf
      Src: /src/opus/celt/tests/test_unit_mdct.c:68,1
    - Dst: printf
      Src: /src/opus/celt/tests/test_unit_mdct.c:70,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 4
    argNames:
    - in
    - out
    - nfft
    - isinverse
    argTypes:
    - kiss_fft_scalar*
    - kiss_fft_scalar*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 73
    functionName: check
    functionSourceFile: /src/opus/celt/tests/test_unit_mdct.c
    functionUses: 4
    functionsReached:
    - log10
    - cos
    - printf
    linkageType: ''
    returnType: void
    signature: void check(kiss_fft_scalar  * in,kiss_fft_scalar  * out,int nfft,int
      isinverse)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: cos
      Src: /src/opus/celt/tests/test_unit_mdct.c:86,1
    - Dst: log10
      Src: /src/opus/celt/tests/test_unit_mdct.c:97,1
    - Dst: printf
      Src: /src/opus/celt/tests/test_unit_mdct.c:98,1
    - Dst: printf
      Src: /src/opus/celt/tests/test_unit_mdct.c:100,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 4
    argNames:
    - in
    - out
    - nfft
    - isinverse
    argTypes:
    - kiss_fft_scalar*
    - kiss_fft_scalar*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 103
    functionName: check_inv
    functionSourceFile: /src/opus/celt/tests/test_unit_mdct.c
    functionUses: 0
    functionsReached:
    - log10
    - cos
    - printf
    linkageType: ''
    returnType: void
    signature: void check_inv(kiss_fft_scalar  * in,kiss_fft_scalar  * out,int nfft,int
      isinverse)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: clt_mdct_init
      Src: /src/opus/celt/tests/test_unit_mdct.c:119,1
    - Dst: opus_custom_mode_create
      Src: /src/opus/celt/tests/test_unit_mdct.c:124,1
    - Dst: malloc
      Src: /src/opus/celt/tests/test_unit_mdct.c:133,1
    - Dst: malloc
      Src: /src/opus/celt/tests/test_unit_mdct.c:134,1
    - Dst: malloc
      Src: /src/opus/celt/tests/test_unit_mdct.c:135,1
    - Dst: malloc
      Src: /src/opus/celt/tests/test_unit_mdct.c:136,1
    - Dst: rand
      Src: /src/opus/celt/tests/test_unit_mdct.c:139,1
    - Dst: clt_mdct_backward
      Src: /src/opus/celt/tests/test_unit_mdct.c:168,1
    - Dst: check_inv
      Src: /src/opus/celt/tests/test_unit_mdct.c:172,1
    - Dst: clt_mdct_forward
      Src: /src/opus/celt/tests/test_unit_mdct.c:174,1
    - Dst: check
      Src: /src/opus/celt/tests/test_unit_mdct.c:175,1
    - Dst: free
      Src: /src/opus/celt/tests/test_unit_mdct.c:180,1
    - Dst: free
      Src: /src/opus/celt/tests/test_unit_mdct.c:181,1
    - Dst: free
      Src: /src/opus/celt/tests/test_unit_mdct.c:182,1
    - Dst: free
      Src: /src/opus/celt/tests/test_unit_mdct.c:183,1
    - Dst: clt_mdct_clear
      Src: /src/opus/celt/tests/test_unit_mdct.c:185,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 50
    argCount: 3
    argNames:
    - nfft
    - isinverse
    - arch
    argTypes:
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 106
    functionDepth: 5
    functionLinenumber: 106
    functionLinenumberEnd: 187
    functionName: test1d
    functionSourceFile: /src/opus/celt/tests/test_unit_mdct.c
    functionUses: 1
    functionsReached:
    - clt_mdct_forward
    - rand
    - clt_mdct_backward
    - clt_mdct_init
    - check
    - malloc
    - check_inv
    - opus_custom_mode_create
    - clt_mdct_clear
    - free
    linkageType: ''
    returnType: void
    signature: void test1d(int nfft,int isinverse,int arch)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: opus_select_arch
      Src: /src/opus/celt/tests/test_unit_mdct.c:193,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mdct.c:198,1
    - Dst: atoi
      Src: /src/opus/celt/tests/test_unit_mdct.c:198,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mdct.c:199,1
    - Dst: atoi
      Src: /src/opus/celt/tests/test_unit_mdct.c:199,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mdct.c:202,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mdct.c:203,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mdct.c:204,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mdct.c:205,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mdct.c:206,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mdct.c:207,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mdct.c:208,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mdct.c:209,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mdct.c:210,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mdct.c:211,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mdct.c:213,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mdct.c:214,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mdct.c:215,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mdct.c:216,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mdct.c:217,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mdct.c:218,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mdct.c:219,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mdct.c:220,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mdct.c:221,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mdct.c:222,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mdct.c:223,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mdct.c:224,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mdct.c:225,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mdct.c:226,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mdct.c:227,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_mdct.c:228,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 38
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 233
    functionName: main
    functionSourceFile: /src/opus/celt/tests/test_unit_mdct.c
    functionUses: 0
    functionsReached:
    - atoi
    - opus_select_arch
    - test1d
    linkageType: ''
    returnType: int
    signature: int main(int argc,char ** argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: rand
      Src: /src/opus/celt/tests/test_unit_rotation.c:54,1
    - Dst: exp_rotation
      Src: /src/opus/celt/tests/test_unit_rotation.c:55,1
    - Dst: log10
      Src: /src/opus/celt/tests/test_unit_rotation.c:61,1
    - Dst: exp_rotation
      Src: /src/opus/celt/tests/test_unit_rotation.c:63,1
    - Dst: log10
      Src: /src/opus/celt/tests/test_unit_rotation.c:69,1
    - Dst: printf
      Src: /src/opus/celt/tests/test_unit_rotation.c:70,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_rotation.c:73,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 2
    argNames:
    - N
    - K
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 47
    functionDepth: 4
    functionLinenumber: 47
    functionLinenumberEnd: 76
    functionName: test_rotation
    functionSourceFile: /src/opus/celt/tests/test_unit_rotation.c
    functionUses: 0
    functionsReached:
    - rand
    - log10
    - fprintf
    - exp_rotation
    - printf
    linkageType: ''
    returnType: void
    signature: void test_rotation(int N, int K)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test_rotation
      Src: /src/opus/celt/tests/test_unit_rotation.c:81,1
    - Dst: test_rotation
      Src: /src/opus/celt/tests/test_unit_rotation.c:82,1
    - Dst: test_rotation
      Src: /src/opus/celt/tests/test_unit_rotation.c:83,1
    - Dst: test_rotation
      Src: /src/opus/celt/tests/test_unit_rotation.c:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 78
    functionDepth: 5
    functionLinenumber: 78
    functionLinenumberEnd: 87
    functionName: main
    functionSourceFile: /src/opus/celt/tests/test_unit_rotation.c
    functionUses: 0
    functionsReached:
    - test_rotation
    linkageType: ''
    returnType: int
    signature: int main(void)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: cos
      Src: /src/opus/celt/tests/test_unit_dft.c:58,1
    - Dst: sin
      Src: /src/opus/celt/tests/test_unit_dft.c:59,1
    - Dst: log10
      Src: /src/opus/celt/tests/test_unit_dft.c:78,1
    - Dst: printf
      Src: /src/opus/celt/tests/test_unit_dft.c:79,1
    - Dst: printf
      Src: /src/opus/celt/tests/test_unit_dft.c:81,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 23
    argCount: 4
    argNames:
    - in
    - out
    - nfft
    - isinverse
    argTypes:
    - kiss_fft_cpx*
    - kiss_fft_cpx*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 84
    functionName: check
    functionSourceFile: /src/opus/celt/tests/test_unit_dft.c
    functionUses: 5
    functionsReached:
    - log10
    - sin
    - cos
    - printf
    linkageType: ''
    returnType: void
    signature: void check(kiss_fft_cpx  * in,kiss_fft_cpx  * out,int nfft,int isinverse)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: opus_fft_alloc
      Src: /src/opus/celt/tests/test_unit_dft.c:93,1
    - Dst: opus_custom_mode_create
      Src: /src/opus/celt/tests/test_unit_dft.c:97,1
    - Dst: malloc
      Src: /src/opus/celt/tests/test_unit_dft.c:106,1
    - Dst: malloc
      Src: /src/opus/celt/tests/test_unit_dft.c:107,1
    - Dst: rand
      Src: /src/opus/celt/tests/test_unit_dft.c:110,1
    - Dst: rand
      Src: /src/opus/celt/tests/test_unit_dft.c:111,1
    - Dst: opus_ifft
      Src: /src/opus/celt/tests/test_unit_dft.c:130,1
    - Dst: opus_fft
      Src: /src/opus/celt/tests/test_unit_dft.c:132,1
    - Dst: check
      Src: /src/opus/celt/tests/test_unit_dft.c:136,1
    - Dst: free
      Src: /src/opus/celt/tests/test_unit_dft.c:138,1
    - Dst: free
      Src: /src/opus/celt/tests/test_unit_dft.c:139,1
    - Dst: opus_fft_free
      Src: /src/opus/celt/tests/test_unit_dft.c:141,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 34
    argCount: 3
    argNames:
    - nfft
    - isinverse
    - arch
    argTypes:
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 86
    functionDepth: 4
    functionLinenumber: 86
    functionLinenumberEnd: 143
    functionName: test1d
    functionSourceFile: /src/opus/celt/tests/test_unit_dft.c
    functionUses: 2
    functionsReached:
    - rand
    - opus_ifft
    - check
    - malloc
    - opus_fft
    - opus_custom_mode_create
    - opus_fft_free
    - opus_fft_alloc
    - free
    linkageType: ''
    returnType: void
    signature: void test1d(int nfft,int isinverse,int arch)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: opus_select_arch
      Src: /src/opus/celt/tests/test_unit_dft.c:149,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_dft.c:154,1
    - Dst: atoi
      Src: /src/opus/celt/tests/test_unit_dft.c:154,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_dft.c:155,1
    - Dst: atoi
      Src: /src/opus/celt/tests/test_unit_dft.c:155,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_dft.c:158,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_dft.c:159,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_dft.c:160,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_dft.c:161,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_dft.c:162,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_dft.c:163,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_dft.c:165,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_dft.c:166,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_dft.c:167,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_dft.c:168,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_dft.c:169,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_dft.c:170,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_dft.c:171,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_dft.c:172,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_dft.c:173,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_dft.c:174,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_dft.c:175,1
    - Dst: test1d
      Src: /src/opus/celt/tests/test_unit_dft.c:176,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 30
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 181
    functionName: main
    functionSourceFile: /src/opus/celt/tests/test_unit_dft.c
    functionUses: 0
    functionsReached:
    - atoi
    - opus_select_arch
    - test1d
    linkageType: ''
    returnType: int
    signature: int main(int argc,char ** argv)
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_entropy.c:71,1
    - Dst: getenv
      Src: /src/opus/celt/tests/test_unit_entropy.c:74,1
    - Dst: atoi
      Src: /src/opus/celt/tests/test_unit_entropy.c:76,1
    - Dst: atoi
      Src: /src/opus/celt/tests/test_unit_entropy.c:78,1
    - Dst: time
      Src: /src/opus/celt/tests/test_unit_entropy.c:80,1
    - Dst: malloc
      Src: /src/opus/celt/tests/test_unit_entropy.c:82,1
    - Dst: ec_enc_init
      Src: /src/opus/celt/tests/test_unit_entropy.c:83,1
    - Dst: log
      Src: /src/opus/celt/tests/test_unit_entropy.c:86,1
    - Dst: ec_enc_uint
      Src: /src/opus/celt/tests/test_unit_entropy.c:87,1
    - Dst: ec_tell
      Src: /src/opus/celt/tests/test_unit_entropy.c:94,1
    - Dst: ec_enc_bits
      Src: /src/opus/celt/tests/test_unit_entropy.c:95,1
    - Dst: ec_tell
      Src: /src/opus/celt/tests/test_unit_entropy.c:96,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_entropy.c:98,1
    - Dst: ec_tell_frac
      Src: /src/opus/celt/tests/test_unit_entropy.c:104,1
    - Dst: ec_enc_done
      Src: /src/opus/celt/tests/test_unit_entropy.c:105,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_entropy.c:106,1
    - Dst: ldexp
      Src: /src/opus/celt/tests/test_unit_entropy.c:108,1
    - Dst: ldexp
      Src: /src/opus/celt/tests/test_unit_entropy.c:108,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_entropy.c:109,1
    - Dst: ec_range_bytes
      Src: /src/opus/celt/tests/test_unit_entropy.c:109,1
    - Dst: ec_dec_init
      Src: /src/opus/celt/tests/test_unit_entropy.c:110,1
    - Dst: ec_dec_uint
      Src: /src/opus/celt/tests/test_unit_entropy.c:113,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_entropy.c:115,1
    - Dst: ec_dec_bits
      Src: /src/opus/celt/tests/test_unit_entropy.c:122,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_entropy.c:124,1
    - Dst: ec_tell_frac
      Src: /src/opus/celt/tests/test_unit_entropy.c:129,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_entropy.c:131,1
    - Dst: ldexp
      Src: /src/opus/celt/tests/test_unit_entropy.c:133,1
    - Dst: ldexp
      Src: /src/opus/celt/tests/test_unit_entropy.c:133,1
    - Dst: ec_enc_init
      Src: /src/opus/celt/tests/test_unit_entropy.c:142,1
    - Dst: ec_enc_bits
      Src: /src/opus/celt/tests/test_unit_entropy.c:144,1
    - Dst: ec_enc_uint
      Src: /src/opus/celt/tests/test_unit_entropy.c:146,1
    - Dst: ec_enc_uint
      Src: /src/opus/celt/tests/test_unit_entropy.c:147,1
    - Dst: ec_enc_uint
      Src: /src/opus/celt/tests/test_unit_entropy.c:148,1
    - Dst: ec_enc_uint
      Src: /src/opus/celt/tests/test_unit_entropy.c:149,1
    - Dst: ec_enc_uint
      Src: /src/opus/celt/tests/test_unit_entropy.c:150,1
    - Dst: ec_enc_uint
      Src: /src/opus/celt/tests/test_unit_entropy.c:151,1
    - Dst: ec_enc_done
      Src: /src/opus/celt/tests/test_unit_entropy.c:152,1
    - Dst: ec_dec_init
      Src: /src/opus/celt/tests/test_unit_entropy.c:153,1
    - Dst: ec_dec_bits
      Src: /src/opus/celt/tests/test_unit_entropy.c:156,1
    - Dst: ec_dec_uint
      Src: /src/opus/celt/tests/test_unit_entropy.c:158,1
    - Dst: ec_dec_uint
      Src: /src/opus/celt/tests/test_unit_entropy.c:159,1
    - Dst: ec_dec_uint
      Src: /src/opus/celt/tests/test_unit_entropy.c:160,1
    - Dst: ec_dec_uint
      Src: /src/opus/celt/tests/test_unit_entropy.c:161,1
    - Dst: ec_dec_uint
      Src: /src/opus/celt/tests/test_unit_entropy.c:162,1
    - Dst: ec_dec_uint
      Src: /src/opus/celt/tests/test_unit_entropy.c:163,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_entropy.c:164,1
    - Dst: srand
      Src: /src/opus/celt/tests/test_unit_entropy.c:167,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_entropy.c:168,1
    - Dst: rand
      Src: /src/opus/celt/tests/test_unit_entropy.c:168,1
    - Dst: rand
      Src: /src/opus/celt/tests/test_unit_entropy.c:175,1
    - Dst: rand
      Src: /src/opus/celt/tests/test_unit_entropy.c:175,1
    - Dst: rand
      Src: /src/opus/celt/tests/test_unit_entropy.c:176,1
    - Dst: rand
      Src: /src/opus/celt/tests/test_unit_entropy.c:176,1
    - Dst: malloc
      Src: /src/opus/celt/tests/test_unit_entropy.c:177,1
    - Dst: malloc
      Src: /src/opus/celt/tests/test_unit_entropy.c:178,1
    - Dst: ec_enc_init
      Src: /src/opus/celt/tests/test_unit_entropy.c:179,1
    - Dst: rand
      Src: /src/opus/celt/tests/test_unit_entropy.c:180,1
    - Dst: ec_tell_frac
      Src: /src/opus/celt/tests/test_unit_entropy.c:181,1
    - Dst: rand
      Src: /src/opus/celt/tests/test_unit_entropy.c:186,1
    - Dst: ec_enc_uint
      Src: /src/opus/celt/tests/test_unit_entropy.c:187,1
    - Dst: ec_tell_frac
      Src: /src/opus/celt/tests/test_unit_entropy.c:188,1
    - Dst: rand
      Src: /src/opus/celt/tests/test_unit_entropy.c:190,1
    - Dst: ec_tell
      Src: /src/opus/celt/tests/test_unit_entropy.c:191,1
    - Dst: ec_enc_uint
      Src: /src/opus/celt/tests/test_unit_entropy.c:192,1
    - Dst: rand
      Src: /src/opus/celt/tests/test_unit_entropy.c:192,1
    - Dst: ec_tell
      Src: /src/opus/celt/tests/test_unit_entropy.c:193,1
    - Dst: ec_enc_done
      Src: /src/opus/celt/tests/test_unit_entropy.c:194,1
    - Dst: ec_tell
      Src: /src/opus/celt/tests/test_unit_entropy.c:195,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_entropy.c:196,1
    - Dst: ec_tell
      Src: /src/opus/celt/tests/test_unit_entropy.c:197,1
    - Dst: ec_range_bytes
      Src: /src/opus/celt/tests/test_unit_entropy.c:200,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_entropy.c:202,1
    - Dst: ec_range_bytes
      Src: /src/opus/celt/tests/test_unit_entropy.c:203,1
    - Dst: ec_dec_init
      Src: /src/opus/celt/tests/test_unit_entropy.c:206,1
    - Dst: ec_tell_frac
      Src: /src/opus/celt/tests/test_unit_entropy.c:207,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_entropy.c:208,1
    - Dst: ec_tell_frac
      Src: /src/opus/celt/tests/test_unit_entropy.c:210,1
    - Dst: ec_dec_uint
      Src: /src/opus/celt/tests/test_unit_entropy.c:213,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_entropy.c:215,1
    - Dst: ec_tell_frac
      Src: /src/opus/celt/tests/test_unit_entropy.c:220,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_entropy.c:221,1
    - Dst: ec_tell_frac
      Src: /src/opus/celt/tests/test_unit_entropy.c:223,1
    - Dst: free
      Src: /src/opus/celt/tests/test_unit_entropy.c:226,1
    - Dst: free
      Src: /src/opus/celt/tests/test_unit_entropy.c:227,1
    - Dst: rand
      Src: /src/opus/celt/tests/test_unit_entropy.c:236,1
    - Dst: rand
      Src: /src/opus/celt/tests/test_unit_entropy.c:236,1
    - Dst: malloc
      Src: /src/opus/celt/tests/test_unit_entropy.c:237,1
    - Dst: malloc
      Src: /src/opus/celt/tests/test_unit_entropy.c:238,1
    - Dst: malloc
      Src: /src/opus/celt/tests/test_unit_entropy.c:239,1
    - Dst: malloc
      Src: /src/opus/celt/tests/test_unit_entropy.c:240,1
    - Dst: ec_enc_init
      Src: /src/opus/celt/tests/test_unit_entropy.c:241,1
    - Dst: ec_tell_frac
      Src: /src/opus/celt/tests/test_unit_entropy.c:242,1
    - Dst: rand
      Src: /src/opus/celt/tests/test_unit_entropy.c:244,1
    - Dst: rand
      Src: /src/opus/celt/tests/test_unit_entropy.c:245,1
    - Dst: rand
      Src: /src/opus/celt/tests/test_unit_entropy.c:246,1
    - Dst: ec_encode
      Src: /src/opus/celt/tests/test_unit_entropy.c:249,1
    - Dst: ec_encode_bin
      Src: /src/opus/celt/tests/test_unit_entropy.c:253,1
    - Dst: ec_enc_bit_logp
      Src: /src/opus/celt/tests/test_unit_entropy.c:257,1
    - Dst: ec_enc_icdf
      Src: /src/opus/celt/tests/test_unit_entropy.c:263,1
    - Dst: ec_tell_frac
      Src: /src/opus/celt/tests/test_unit_entropy.c:266,1
    - Dst: ec_enc_done
      Src: /src/opus/celt/tests/test_unit_entropy.c:268,1
    - Dst: ec_tell
      Src: /src/opus/celt/tests/test_unit_entropy.c:269,1
    - Dst: ec_range_bytes
      Src: /src/opus/celt/tests/test_unit_entropy.c:269,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_entropy.c:270,1
    - Dst: ec_range_bytes
      Src: /src/opus/celt/tests/test_unit_entropy.c:271,1
    - Dst: ec_tell
      Src: /src/opus/celt/tests/test_unit_entropy.c:271,1
    - Dst: ec_dec_init
      Src: /src/opus/celt/tests/test_unit_entropy.c:274,1
    - Dst: ec_tell_frac
      Src: /src/opus/celt/tests/test_unit_entropy.c:275,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_entropy.c:276,1
    - Dst: ec_tell_frac
      Src: /src/opus/celt/tests/test_unit_entropy.c:278,1
    - Dst: rand
      Src: /src/opus/celt/tests/test_unit_entropy.c:283,1
    - Dst: ec_decode
      Src: /src/opus/celt/tests/test_unit_entropy.c:286,1
    - Dst: ec_dec_update
      Src: /src/opus/celt/tests/test_unit_entropy.c:288,1
    - Dst: ec_decode_bin
      Src: /src/opus/celt/tests/test_unit_entropy.c:292,1
    - Dst: ec_dec_update
      Src: /src/opus/celt/tests/test_unit_entropy.c:294,1
    - Dst: ec_dec_bit_logp
      Src: /src/opus/celt/tests/test_unit_entropy.c:298,1
    - Dst: ec_dec_icdf
      Src: /src/opus/celt/tests/test_unit_entropy.c:304,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_entropy.c:308,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_entropy.c:311,1
    - Dst: ec_tell_frac
      Src: /src/opus/celt/tests/test_unit_entropy.c:315,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_entropy.c:316,1
    - Dst: ec_tell_frac
      Src: /src/opus/celt/tests/test_unit_entropy.c:318,1
    - Dst: free
      Src: /src/opus/celt/tests/test_unit_entropy.c:321,1
    - Dst: free
      Src: /src/opus/celt/tests/test_unit_entropy.c:322,1
    - Dst: free
      Src: /src/opus/celt/tests/test_unit_entropy.c:323,1
    - Dst: free
      Src: /src/opus/celt/tests/test_unit_entropy.c:324,1
    - Dst: ec_enc_init
      Src: /src/opus/celt/tests/test_unit_entropy.c:326,1
    - Dst: ec_enc_bit_logp
      Src: /src/opus/celt/tests/test_unit_entropy.c:327,1
    - Dst: ec_enc_bit_logp
      Src: /src/opus/celt/tests/test_unit_entropy.c:328,1
    - Dst: ec_enc_bit_logp
      Src: /src/opus/celt/tests/test_unit_entropy.c:329,1
    - Dst: ec_enc_bit_logp
      Src: /src/opus/celt/tests/test_unit_entropy.c:330,1
    - Dst: ec_enc_bit_logp
      Src: /src/opus/celt/tests/test_unit_entropy.c:331,1
    - Dst: ec_enc_patch_initial_bits
      Src: /src/opus/celt/tests/test_unit_entropy.c:332,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_entropy.c:334,1
    - Dst: ec_enc_patch_initial_bits
      Src: /src/opus/celt/tests/test_unit_entropy.c:337,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_entropy.c:339,1
    - Dst: ec_enc_done
      Src: /src/opus/celt/tests/test_unit_entropy.c:342,1
    - Dst: ec_range_bytes
      Src: /src/opus/celt/tests/test_unit_entropy.c:343,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_entropy.c:344,1
    - Dst: ec_enc_init
      Src: /src/opus/celt/tests/test_unit_entropy.c:347,1
    - Dst: ec_enc_bit_logp
      Src: /src/opus/celt/tests/test_unit_entropy.c:348,1
    - Dst: ec_enc_bit_logp
      Src: /src/opus/celt/tests/test_unit_entropy.c:349,1
    - Dst: ec_enc_bit_logp
      Src: /src/opus/celt/tests/test_unit_entropy.c:350,1
    - Dst: ec_enc_bit_logp
      Src: /src/opus/celt/tests/test_unit_entropy.c:351,1
    - Dst: ec_enc_patch_initial_bits
      Src: /src/opus/celt/tests/test_unit_entropy.c:352,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_entropy.c:354,1
    - Dst: ec_enc_done
      Src: /src/opus/celt/tests/test_unit_entropy.c:357,1
    - Dst: ec_range_bytes
      Src: /src/opus/celt/tests/test_unit_entropy.c:358,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_entropy.c:359,1
    - Dst: ec_enc_init
      Src: /src/opus/celt/tests/test_unit_entropy.c:362,1
    - Dst: ec_enc_bit_logp
      Src: /src/opus/celt/tests/test_unit_entropy.c:363,1
    - Dst: ec_enc_bits
      Src: /src/opus/celt/tests/test_unit_entropy.c:365,1
    - Dst: ec_enc_done
      Src: /src/opus/celt/tests/test_unit_entropy.c:367,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_entropy.c:369,1
    - Dst: ec_enc_init
      Src: /src/opus/celt/tests/test_unit_entropy.c:372,1
    - Dst: ec_enc_bits
      Src: /src/opus/celt/tests/test_unit_entropy.c:374,1
    - Dst: ec_enc_done
      Src: /src/opus/celt/tests/test_unit_entropy.c:376,1
    - Dst: fprintf
      Src: /src/opus/celt/tests/test_unit_entropy.c:378,1
    - Dst: free
      Src: /src/opus/celt/tests/test_unit_entropy.c:381,1
    CyclomaticComplexity: 62
    EdgeCount: 62
    ICount: 262
    argCount: 2
    argNames:
    - _argc
    - _argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 383
      start: 53
    functionDepth: 5
    functionLinenumber: 53
    functionLinenumberEnd: 383
    functionName: main
    functionSourceFile: /src/opus/celt/tests/test_unit_entropy.c
    functionUses: 0
    functionsReached:
    - ec_enc_init
    - ec_enc_done
    - ec_encode
    - ldexp
    - malloc
    - ec_enc_bits
    - ec_decode
    - ec_encode_bin
    - fprintf
    - log
    - time
    - ec_enc_uint
    - ec_tell
    - ec_enc_patch_initial_bits
    - ec_dec_uint
    - srand
    - ec_enc_icdf
    - rand
    - ec_dec_bit_logp
    - ec_dec_init
    - ec_dec_bits
    - ec_decode_bin
    - ec_dec_icdf
    - getenv
    - atoi
    - ec_tell_frac
    - ec_dec_update
    - ec_enc_bit_logp
    - ec_range_bytes
    - free
    linkageType: ''
    returnType: int
    signature: int main(int _argc,char **_argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - x
    - ','
    - iy
    - ','
    - K
    - ','
    - N
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 39
    functionName: op_pvq_search
    functionSourceFile: /src/opus/celt/x86/vq_sse.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: op_pvq_search(x, iy, K, N, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - X
    - ','
    - iy
    - ','
    - K
    - ','
    - N
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionName: op_pvq_search
    functionSourceFile: /src/opus/celt/x86/vq_sse.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: op_pvq_search(X, iy, K, N, arch)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: _mm_loadu_ps
      Src: /src/opus/celt/x86/pitch_sse.c:47,1
    - Dst: _mm_setzero_ps
      Src: /src/opus/celt/x86/pitch_sse.c:48,1
    - Dst: _mm_loadu_ps
      Src: /src/opus/celt/x86/pitch_sse.c:52,1
    - Dst: _mm_loadu_ps
      Src: /src/opus/celt/x86/pitch_sse.c:53,1
    - Dst: _mm_loadu_ps
      Src: /src/opus/celt/x86/pitch_sse.c:54,1
    - Dst: _mm_add_ps
      Src: /src/opus/celt/x86/pitch_sse.c:56,1
    - Dst: _mm_mul_ps
      Src: /src/opus/celt/x86/pitch_sse.c:56,1
    - Dst: _mm_shuffle_ps
      Src: /src/opus/celt/x86/pitch_sse.c:56,1
    - Dst: _mm_add_ps
      Src: /src/opus/celt/x86/pitch_sse.c:57,1
    - Dst: _mm_mul_ps
      Src: /src/opus/celt/x86/pitch_sse.c:57,1
    - Dst: _mm_shuffle_ps
      Src: /src/opus/celt/x86/pitch_sse.c:57,1
    - Dst: _mm_shuffle_ps
      Src: /src/opus/celt/x86/pitch_sse.c:58,1
    - Dst: _mm_add_ps
      Src: /src/opus/celt/x86/pitch_sse.c:59,1
    - Dst: _mm_mul_ps
      Src: /src/opus/celt/x86/pitch_sse.c:59,1
    - Dst: _mm_shuffle_ps
      Src: /src/opus/celt/x86/pitch_sse.c:59,1
    - Dst: _mm_shuffle_ps
      Src: /src/opus/celt/x86/pitch_sse.c:60,1
    - Dst: _mm_add_ps
      Src: /src/opus/celt/x86/pitch_sse.c:61,1
    - Dst: _mm_mul_ps
      Src: /src/opus/celt/x86/pitch_sse.c:61,1
    - Dst: _mm_shuffle_ps
      Src: /src/opus/celt/x86/pitch_sse.c:61,1
    - Dst: _mm_add_ps
      Src: /src/opus/celt/x86/pitch_sse.c:65,1
    - Dst: _mm_mul_ps
      Src: /src/opus/celt/x86/pitch_sse.c:65,1
    - Dst: _mm_load1_ps
      Src: /src/opus/celt/x86/pitch_sse.c:65,1
    - Dst: _mm_loadu_ps
      Src: /src/opus/celt/x86/pitch_sse.c:65,1
    - Dst: _mm_add_ps
      Src: /src/opus/celt/x86/pitch_sse.c:68,1
    - Dst: _mm_mul_ps
      Src: /src/opus/celt/x86/pitch_sse.c:68,1
    - Dst: _mm_load1_ps
      Src: /src/opus/celt/x86/pitch_sse.c:68,1
    - Dst: _mm_loadu_ps
      Src: /src/opus/celt/x86/pitch_sse.c:68,1
    - Dst: _mm_add_ps
      Src: /src/opus/celt/x86/pitch_sse.c:71,1
    - Dst: _mm_mul_ps
      Src: /src/opus/celt/x86/pitch_sse.c:71,1
    - Dst: _mm_load1_ps
      Src: /src/opus/celt/x86/pitch_sse.c:71,1
    - Dst: _mm_loadu_ps
      Src: /src/opus/celt/x86/pitch_sse.c:71,1
    - Dst: _mm_storeu_ps
      Src: /src/opus/celt/x86/pitch_sse.c:75,1
    - Dst: _mm_add_ps
      Src: /src/opus/celt/x86/pitch_sse.c:75,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 4
    argNames:
    - x
    - y
    - sum
    - len
    argTypes:
    - opus_val16*
    - opus_val16*
    - opus_val32[]
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 76
    functionName: xcorr_kernel_sse
    functionSourceFile: /src/opus/celt/x86/pitch_sse.c
    functionUses: 0
    functionsReached:
    - _mm_mul_ps
    - _mm_storeu_ps
    - _mm_setzero_ps
    - _mm_add_ps
    - _mm_loadu_ps
    - _mm_shuffle_ps
    - _mm_load1_ps
    linkageType: ''
    returnType: void
    signature: void xcorr_kernel_sse(const opus_val16 *x, const opus_val16 *y, opus_val32
      sum[4], int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_setzero_ps
      Src: /src/opus/celt/x86/pitch_sse.c:84,1
    - Dst: _mm_setzero_ps
      Src: /src/opus/celt/x86/pitch_sse.c:85,1
    - Dst: _mm_loadu_ps
      Src: /src/opus/celt/x86/pitch_sse.c:88,1
    - Dst: _mm_loadu_ps
      Src: /src/opus/celt/x86/pitch_sse.c:89,1
    - Dst: _mm_loadu_ps
      Src: /src/opus/celt/x86/pitch_sse.c:90,1
    - Dst: _mm_add_ps
      Src: /src/opus/celt/x86/pitch_sse.c:91,1
    - Dst: _mm_mul_ps
      Src: /src/opus/celt/x86/pitch_sse.c:91,1
    - Dst: _mm_add_ps
      Src: /src/opus/celt/x86/pitch_sse.c:92,1
    - Dst: _mm_mul_ps
      Src: /src/opus/celt/x86/pitch_sse.c:92,1
    - Dst: _mm_add_ps
      Src: /src/opus/celt/x86/pitch_sse.c:95,1
    - Dst: _mm_movehl_ps
      Src: /src/opus/celt/x86/pitch_sse.c:95,1
    - Dst: _mm_add_ss
      Src: /src/opus/celt/x86/pitch_sse.c:96,1
    - Dst: _mm_shuffle_ps
      Src: /src/opus/celt/x86/pitch_sse.c:96,1
    - Dst: _mm_store_ss
      Src: /src/opus/celt/x86/pitch_sse.c:97,1
    - Dst: _mm_add_ps
      Src: /src/opus/celt/x86/pitch_sse.c:98,1
    - Dst: _mm_movehl_ps
      Src: /src/opus/celt/x86/pitch_sse.c:98,1
    - Dst: _mm_add_ss
      Src: /src/opus/celt/x86/pitch_sse.c:99,1
    - Dst: _mm_shuffle_ps
      Src: /src/opus/celt/x86/pitch_sse.c:99,1
    - Dst: _mm_store_ss
      Src: /src/opus/celt/x86/pitch_sse.c:100,1
    - Dst: MAC16_16
      Src: /src/opus/celt/x86/pitch_sse.c:103,1
    - Dst: MAC16_16
      Src: /src/opus/celt/x86/pitch_sse.c:104,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 6
    argNames:
    - x
    - y01
    - y02
    - N
    - xy1
    - xy2
    argTypes:
    - opus_val16*
    - opus_val16*
    - opus_val16*
    - int
    - opus_val32*
    - opus_val32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 106
    functionName: dual_inner_prod_sse
    functionSourceFile: /src/opus/celt/x86/pitch_sse.c
    functionUses: 0
    functionsReached:
    - _mm_mul_ps
    - MAC16_16
    - _mm_store_ss
    - _mm_setzero_ps
    - _mm_add_ps
    - _mm_loadu_ps
    - _mm_add_ss
    - _mm_shuffle_ps
    - _mm_movehl_ps
    linkageType: ''
    returnType: void
    signature: "void dual_inner_prod_sse(const opus_val16 *x, const opus_val16 *y01,
      const opus_val16 *y02,\n      int N, opus_val32 *xy1, opus_val32 *xy2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_setzero_ps
      Src: /src/opus/celt/x86/pitch_sse.c:114,1
    - Dst: _mm_loadu_ps
      Src: /src/opus/celt/x86/pitch_sse.c:118,1
    - Dst: _mm_loadu_ps
      Src: /src/opus/celt/x86/pitch_sse.c:119,1
    - Dst: _mm_add_ps
      Src: /src/opus/celt/x86/pitch_sse.c:120,1
    - Dst: _mm_mul_ps
      Src: /src/opus/celt/x86/pitch_sse.c:120,1
    - Dst: _mm_add_ps
      Src: /src/opus/celt/x86/pitch_sse.c:123,1
    - Dst: _mm_movehl_ps
      Src: /src/opus/celt/x86/pitch_sse.c:123,1
    - Dst: _mm_add_ss
      Src: /src/opus/celt/x86/pitch_sse.c:124,1
    - Dst: _mm_shuffle_ps
      Src: /src/opus/celt/x86/pitch_sse.c:124,1
    - Dst: _mm_store_ss
      Src: /src/opus/celt/x86/pitch_sse.c:125,1
    - Dst: MAC16_16
      Src: /src/opus/celt/x86/pitch_sse.c:128,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 3
    argNames:
    - x
    - y
    - N
    argTypes:
    - opus_val16*
    - opus_val16*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 131
    functionName: celt_inner_prod_sse
    functionSourceFile: /src/opus/celt/x86/pitch_sse.c
    functionUses: 0
    functionsReached:
    - _mm_mul_ps
    - MAC16_16
    - _mm_store_ss
    - _mm_setzero_ps
    - _mm_add_ps
    - _mm_loadu_ps
    - _mm_add_ss
    - _mm_shuffle_ps
    - _mm_movehl_ps
    linkageType: ''
    returnType: opus_val32
    signature: "opus_val32 celt_inner_prod_sse(const opus_val16 *x, const opus_val16
      *y,\n      int N)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mm_load1_ps
      Src: /src/opus/celt/x86/pitch_sse.c:139,1
    - Dst: _mm_load1_ps
      Src: /src/opus/celt/x86/pitch_sse.c:140,1
    - Dst: _mm_load1_ps
      Src: /src/opus/celt/x86/pitch_sse.c:141,1
    - Dst: _mm_loadu_ps
      Src: /src/opus/celt/x86/pitch_sse.c:142,1
    - Dst: _mm_loadu_ps
      Src: /src/opus/celt/x86/pitch_sse.c:147,1
    - Dst: _mm_loadu_ps
      Src: /src/opus/celt/x86/pitch_sse.c:148,1
    - Dst: _mm_loadu_ps
      Src: /src/opus/celt/x86/pitch_sse.c:151,1
    - Dst: _mm_loadu_ps
      Src: /src/opus/celt/x86/pitch_sse.c:152,1
    - Dst: _mm_loadu_ps
      Src: /src/opus/celt/x86/pitch_sse.c:153,1
    - Dst: _mm_shuffle_ps
      Src: /src/opus/celt/x86/pitch_sse.c:155,1
    - Dst: _mm_shuffle_ps
      Src: /src/opus/celt/x86/pitch_sse.c:156,1
    - Dst: _mm_shuffle_ps
      Src: /src/opus/celt/x86/pitch_sse.c:157,1
    - Dst: _mm_add_ps
      Src: /src/opus/celt/x86/pitch_sse.c:160,1
    - Dst: _mm_mul_ps
      Src: /src/opus/celt/x86/pitch_sse.c:160,1
    - Dst: _mm_add_ps
      Src: /src/opus/celt/x86/pitch_sse.c:162,1
    - Dst: _mm_mul_ps
      Src: /src/opus/celt/x86/pitch_sse.c:162,1
    - Dst: _mm_add_ps
      Src: /src/opus/celt/x86/pitch_sse.c:162,1
    - Dst: _mm_add_ps
      Src: /src/opus/celt/x86/pitch_sse.c:163,1
    - Dst: _mm_mul_ps
      Src: /src/opus/celt/x86/pitch_sse.c:163,1
    - Dst: _mm_add_ps
      Src: /src/opus/celt/x86/pitch_sse.c:163,1
    - Dst: _mm_add_ps
      Src: /src/opus/celt/x86/pitch_sse.c:166,1
    - Dst: _mm_mul_ps
      Src: /src/opus/celt/x86/pitch_sse.c:166,1
    - Dst: _mm_add_ps
      Src: /src/opus/celt/x86/pitch_sse.c:166,1
    - Dst: _mm_mul_ps
      Src: /src/opus/celt/x86/pitch_sse.c:167,1
    - Dst: _mm_add_ps
      Src: /src/opus/celt/x86/pitch_sse.c:167,1
    - Dst: _mm_add_ps
      Src: /src/opus/celt/x86/pitch_sse.c:168,1
    - Dst: _mm_storeu_ps
      Src: /src/opus/celt/x86/pitch_sse.c:171,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/x86/pitch_sse.c:177,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/x86/pitch_sse.c:178,1
    - Dst: ADD32
      Src: /src/opus/celt/x86/pitch_sse.c:178,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/x86/pitch_sse.c:179,1
    - Dst: ADD32
      Src: /src/opus/celt/x86/pitch_sse.c:179,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 25
    argCount: 7
    argNames:
    - y
    - x
    - T
    - N
    - g10
    - g11
    - g12
    argTypes:
    - opus_val32*
    - opus_val32*
    - int
    - int
    - opus_val16
    - opus_val16
    - opus_val16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 182
    functionName: comb_filter_const_sse
    functionSourceFile: /src/opus/celt/x86/pitch_sse.c
    functionUses: 0
    functionsReached:
    - _mm_mul_ps
    - ADD32
    - _mm_storeu_ps
    - _mm_add_ps
    - MULT16_32_Q15
    - _mm_loadu_ps
    - _mm_shuffle_ps
    - _mm_load1_ps
    linkageType: ''
    returnType: void
    signature: "void comb_filter_const_sse(opus_val32 *y, opus_val32 *x, int T, int
      N,\n      opus_val16 g10, opus_val16 g11, opus_val16 g12)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _mm_setzero_si128
      Src: /src/opus/celt/x86/pitch_sse2.c:54,1
    - Dst: _mm_setzero_si128
      Src: /src/opus/celt/x86/pitch_sse2.c:55,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/celt/x86/pitch_sse2.c:59,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/celt/x86/pitch_sse2.c:60,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/celt/x86/pitch_sse2.c:62,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/celt/x86/pitch_sse2.c:63,1
    - Dst: _mm_madd_epi16
      Src: /src/opus/celt/x86/pitch_sse2.c:65,1
    - Dst: _mm_madd_epi16
      Src: /src/opus/celt/x86/pitch_sse2.c:66,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/pitch_sse2.c:68,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/pitch_sse2.c:69,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/pitch_sse2.c:72,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/celt/x86/pitch_sse2.c:76,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/celt/x86/pitch_sse2.c:77,1
    - Dst: _mm_madd_epi16
      Src: /src/opus/celt/x86/pitch_sse2.c:79,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/pitch_sse2.c:81,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/pitch_sse2.c:85,1
    - Dst: _mm_unpackhi_epi64
      Src: /src/opus/celt/x86/pitch_sse2.c:85,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/pitch_sse2.c:86,1
    - Dst: _mm_shufflelo_epi16
      Src: /src/opus/celt/x86/pitch_sse2.c:86,1
    - Dst: _mm_cvtsi128_si32
      Src: /src/opus/celt/x86/pitch_sse2.c:87,1
    - Dst: silk_SMLABB
      Src: /src/opus/celt/x86/pitch_sse2.c:90,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 30
    argCount: 3
    argNames:
    - x
    - y
    - N
    argTypes:
    - opus_val16*
    - opus_val16*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 94
    functionName: celt_inner_prod_sse2
    functionSourceFile: /src/opus/celt/x86/pitch_sse2.c
    functionUses: 0
    functionsReached:
    - _mm_cvtsi128_si32
    - _mm_add_epi32
    - silk_SMLABB
    - _mm_unpackhi_epi64
    - _mm_shufflelo_epi16
    - _mm_loadu_si128
    - _mm_madd_epi16
    - _mm_setzero_si128
    linkageType: ''
    returnType: opus_val32
    signature: "opus_val32 celt_inner_prod_sse2(const opus_val16 *x, const opus_val16
      *y,\n      int N)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _mm256_setzero_ps
      Src: /src/opus/celt/x86/pitch_avx.c:42,1
    - Dst: _mm256_loadu_ps
      Src: /src/opus/celt/x86/pitch_avx.c:48,1
    - Dst: _mm256_fmadd_ps
      Src: /src/opus/celt/x86/pitch_avx.c:49,1
    - Dst: _mm256_loadu_ps
      Src: /src/opus/celt/x86/pitch_avx.c:49,1
    - Dst: _mm256_fmadd_ps
      Src: /src/opus/celt/x86/pitch_avx.c:50,1
    - Dst: _mm256_loadu_ps
      Src: /src/opus/celt/x86/pitch_avx.c:50,1
    - Dst: _mm256_fmadd_ps
      Src: /src/opus/celt/x86/pitch_avx.c:51,1
    - Dst: _mm256_loadu_ps
      Src: /src/opus/celt/x86/pitch_avx.c:51,1
    - Dst: _mm256_fmadd_ps
      Src: /src/opus/celt/x86/pitch_avx.c:52,1
    - Dst: _mm256_loadu_ps
      Src: /src/opus/celt/x86/pitch_avx.c:52,1
    - Dst: _mm256_fmadd_ps
      Src: /src/opus/celt/x86/pitch_avx.c:53,1
    - Dst: _mm256_loadu_ps
      Src: /src/opus/celt/x86/pitch_avx.c:53,1
    - Dst: _mm256_fmadd_ps
      Src: /src/opus/celt/x86/pitch_avx.c:54,1
    - Dst: _mm256_loadu_ps
      Src: /src/opus/celt/x86/pitch_avx.c:54,1
    - Dst: _mm256_fmadd_ps
      Src: /src/opus/celt/x86/pitch_avx.c:55,1
    - Dst: _mm256_loadu_ps
      Src: /src/opus/celt/x86/pitch_avx.c:55,1
    - Dst: _mm256_fmadd_ps
      Src: /src/opus/celt/x86/pitch_avx.c:56,1
    - Dst: _mm256_loadu_ps
      Src: /src/opus/celt/x86/pitch_avx.c:56,1
    - Dst: _mm256_loadu_si256
      Src: /src/opus/celt/x86/pitch_avx.c:61,1
    - Dst: _mm256_maskload_ps
      Src: /src/opus/celt/x86/pitch_avx.c:62,1
    - Dst: _mm256_fmadd_ps
      Src: /src/opus/celt/x86/pitch_avx.c:63,1
    - Dst: _mm256_maskload_ps
      Src: /src/opus/celt/x86/pitch_avx.c:63,1
    - Dst: _mm256_fmadd_ps
      Src: /src/opus/celt/x86/pitch_avx.c:64,1
    - Dst: _mm256_maskload_ps
      Src: /src/opus/celt/x86/pitch_avx.c:64,1
    - Dst: _mm256_fmadd_ps
      Src: /src/opus/celt/x86/pitch_avx.c:65,1
    - Dst: _mm256_maskload_ps
      Src: /src/opus/celt/x86/pitch_avx.c:65,1
    - Dst: _mm256_fmadd_ps
      Src: /src/opus/celt/x86/pitch_avx.c:66,1
    - Dst: _mm256_maskload_ps
      Src: /src/opus/celt/x86/pitch_avx.c:66,1
    - Dst: _mm256_fmadd_ps
      Src: /src/opus/celt/x86/pitch_avx.c:67,1
    - Dst: _mm256_maskload_ps
      Src: /src/opus/celt/x86/pitch_avx.c:67,1
    - Dst: _mm256_fmadd_ps
      Src: /src/opus/celt/x86/pitch_avx.c:68,1
    - Dst: _mm256_maskload_ps
      Src: /src/opus/celt/x86/pitch_avx.c:68,1
    - Dst: _mm256_fmadd_ps
      Src: /src/opus/celt/x86/pitch_avx.c:69,1
    - Dst: _mm256_maskload_ps
      Src: /src/opus/celt/x86/pitch_avx.c:69,1
    - Dst: _mm256_fmadd_ps
      Src: /src/opus/celt/x86/pitch_avx.c:70,1
    - Dst: _mm256_maskload_ps
      Src: /src/opus/celt/x86/pitch_avx.c:70,1
    - Dst: _mm256_add_ps
      Src: /src/opus/celt/x86/pitch_avx.c:74,1
    - Dst: _mm256_permute2f128_ps
      Src: /src/opus/celt/x86/pitch_avx.c:74,1
    - Dst: _mm256_permute2f128_ps
      Src: /src/opus/celt/x86/pitch_avx.c:74,1
    - Dst: _mm256_add_ps
      Src: /src/opus/celt/x86/pitch_avx.c:75,1
    - Dst: _mm256_permute2f128_ps
      Src: /src/opus/celt/x86/pitch_avx.c:75,1
    - Dst: _mm256_permute2f128_ps
      Src: /src/opus/celt/x86/pitch_avx.c:75,1
    - Dst: _mm256_add_ps
      Src: /src/opus/celt/x86/pitch_avx.c:76,1
    - Dst: _mm256_permute2f128_ps
      Src: /src/opus/celt/x86/pitch_avx.c:76,1
    - Dst: _mm256_permute2f128_ps
      Src: /src/opus/celt/x86/pitch_avx.c:76,1
    - Dst: _mm256_add_ps
      Src: /src/opus/celt/x86/pitch_avx.c:77,1
    - Dst: _mm256_permute2f128_ps
      Src: /src/opus/celt/x86/pitch_avx.c:77,1
    - Dst: _mm256_permute2f128_ps
      Src: /src/opus/celt/x86/pitch_avx.c:77,1
    - Dst: _mm256_hadd_ps
      Src: /src/opus/celt/x86/pitch_avx.c:79,1
    - Dst: _mm256_hadd_ps
      Src: /src/opus/celt/x86/pitch_avx.c:80,1
    - Dst: _mm256_hadd_ps
      Src: /src/opus/celt/x86/pitch_avx.c:82,1
    - Dst: _mm256_storeu_ps
      Src: /src/opus/celt/x86/pitch_avx.c:83,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 33
    argCount: 4
    argNames:
    - x
    - y
    - sum
    - len
    argTypes:
    - float*
    - float*
    - float[]
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 84
    functionName: xcorr_kernel_avx
    functionSourceFile: /src/opus/celt/x86/pitch_avx.c
    functionUses: 0
    functionsReached:
    - _mm256_fmadd_ps
    - _mm256_add_ps
    - _mm256_setzero_ps
    - _mm256_hadd_ps
    - _mm256_loadu_si256
    - _mm256_storeu_ps
    - _mm256_permute2f128_ps
    - _mm256_maskload_ps
    - _mm256_loadu_ps
    linkageType: ''
    returnType: void
    signature: void xcorr_kernel_avx(const float *x, const float *y, float sum[8],
      int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/celt/x86/pitch_avx.c:89,1
    - Dst: xcorr_kernel_avx
      Src: /src/opus/celt/x86/pitch_avx.c:93,1
    - Dst: celt_inner_prod
      Src: /src/opus/celt/x86/pitch_avx.c:97,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 6
    argNames:
    - _x
    - _y
    - xcorr
    - len
    - max_pitch
    - arch
    argTypes:
    - float*
    - float*
    - float*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 86
    functionDepth: 2
    functionLinenumber: 86
    functionLinenumberEnd: 99
    functionName: celt_pitch_xcorr_avx2
    functionSourceFile: /src/opus/celt/x86/pitch_avx.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - xcorr_kernel_avx
    - celt_inner_prod
    linkageType: ''
    returnType: void
    signature: void celt_pitch_xcorr_avx2(const float *_x, const float *_y, float
      *xcorr, int len, int max_pitch, int arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 13
    argNames:
    - (
    - x
    - ','
    - num
    - ','
    - y
    - ','
    - N
    - ','
    - ord
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 49
    functionName: celt_fir
    functionSourceFile: /src/opus/celt/x86/celt_lpc_sse.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_fir(x, num, y, N, ord, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 13
    argNames:
    - (
    - x
    - ','
    - num
    - ','
    - y
    - ','
    - N
    - ','
    - ord
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: celt_fir
    functionSourceFile: /src/opus/celt/x86/celt_lpc_sse.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_fir(x, num, y, N, ord, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 33
    functionName: MAY_HAVE_SSE
    functionSourceFile: /src/opus/celt/x86/x86cpu.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAY_HAVE_SSE(name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 35
    functionName: MAY_HAVE_SSE
    functionSourceFile: /src/opus/celt/x86/x86cpu.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAY_HAVE_SSE(name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 39
    functionName: MAY_HAVE_SSE2
    functionSourceFile: /src/opus/celt/x86/x86cpu.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAY_HAVE_SSE2(name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 41
    functionName: MAY_HAVE_SSE2
    functionSourceFile: /src/opus/celt/x86/x86cpu.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAY_HAVE_SSE2(name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 45
    functionName: MAY_HAVE_SSE4_1
    functionSourceFile: /src/opus/celt/x86/x86cpu.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAY_HAVE_SSE4_1(name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 47
    functionName: MAY_HAVE_SSE4_1
    functionSourceFile: /src/opus/celt/x86/x86cpu.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAY_HAVE_SSE4_1(name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 51
    functionName: MAY_HAVE_AVX2
    functionSourceFile: /src/opus/celt/x86/x86cpu.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAY_HAVE_AVX2(name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 53
    functionName: MAY_HAVE_AVX2
    functionSourceFile: /src/opus/celt/x86/x86cpu.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAY_HAVE_AVX2(name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/opus/celt/x86/x86cpu.h:96,1
    - Dst: _mm_cvtsi32_si128
      Src: /src/opus/celt/x86/x86cpu.h:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - mem_addr
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 98
    functionName: WORKAROUND_mm_loadu_si32
    functionSourceFile: /src/opus/celt/x86/x86cpu.h
    functionUses: 0
    functionsReached:
    - memcpy
    - _mm_cvtsi32_si128
    linkageType: ''
    returnType: __m128i
    signature: __m128i WORKAROUND_mm_loadu_si32(void const* mem_addr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionName: OP_CVTEPI8_EPI32_M32
    functionSourceFile: /src/opus/celt/x86/x86cpu.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OP_CVTEPI8_EPI32_M32(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionName: OP_CVTEPI16_EPI32_M64
    functionSourceFile: /src/opus/celt/x86/x86cpu.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: OP_CVTEPI16_EPI32_M64(x)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _mm_setzero_si128
      Src: /src/opus/celt/x86/pitch_sse4_1.c:57,1
    - Dst: _mm_setzero_si128
      Src: /src/opus/celt/x86/pitch_sse4_1.c:58,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/celt/x86/pitch_sse4_1.c:61,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/celt/x86/pitch_sse4_1.c:62,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/celt/x86/pitch_sse4_1.c:64,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/celt/x86/pitch_sse4_1.c:65,1
    - Dst: _mm_madd_epi16
      Src: /src/opus/celt/x86/pitch_sse4_1.c:67,1
    - Dst: _mm_madd_epi16
      Src: /src/opus/celt/x86/pitch_sse4_1.c:68,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:70,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:71,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:74,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/celt/x86/pitch_sse4_1.c:78,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/celt/x86/pitch_sse4_1.c:79,1
    - Dst: _mm_madd_epi16
      Src: /src/opus/celt/x86/pitch_sse4_1.c:81,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:83,1
    - Dst: OP_CVTEPI16_EPI32_M64
      Src: /src/opus/celt/x86/pitch_sse4_1.c:89,1
    - Dst: OP_CVTEPI16_EPI32_M64
      Src: /src/opus/celt/x86/pitch_sse4_1.c:90,1
    - Dst: _mm_mullo_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:92,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:94,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:98,1
    - Dst: _mm_unpackhi_epi64
      Src: /src/opus/celt/x86/pitch_sse4_1.c:98,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:99,1
    - Dst: _mm_shufflelo_epi16
      Src: /src/opus/celt/x86/pitch_sse4_1.c:99,1
    - Dst: _mm_cvtsi128_si32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:101,1
    - Dst: silk_SMLABB
      Src: /src/opus/celt/x86/pitch_sse4_1.c:105,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 37
    argCount: 3
    argNames:
    - x
    - y
    - N
    argTypes:
    - opus_val16*
    - opus_val16*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 109
    functionName: celt_inner_prod_sse4_1
    functionSourceFile: /src/opus/celt/x86/pitch_sse4_1.c
    functionUses: 0
    functionsReached:
    - _mm_mullo_epi32
    - _mm_add_epi32
    - _mm_cvtsi128_si32
    - OP_CVTEPI16_EPI32_M64
    - _mm_unpackhi_epi64
    - _mm_shufflelo_epi16
    - silk_SMLABB
    - _mm_loadu_si128
    - _mm_madd_epi16
    - _mm_setzero_si128
    linkageType: ''
    returnType: opus_val32
    signature: "opus_val32 celt_inner_prod_sse4_1(const opus_val16 *x, const opus_val16
      *y,\n      int N)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: xcorr_kernel_c
      Src: /src/opus/celt/x86/pitch_sse4_1.c:125,1
    - Dst: celt_assert
      Src: /src/opus/celt/x86/pitch_sse4_1.c:128,1
    - Dst: _mm_setzero_si128
      Src: /src/opus/celt/x86/pitch_sse4_1.c:130,1
    - Dst: _mm_setzero_si128
      Src: /src/opus/celt/x86/pitch_sse4_1.c:131,1
    - Dst: _mm_setzero_si128
      Src: /src/opus/celt/x86/pitch_sse4_1.c:132,1
    - Dst: _mm_setzero_si128
      Src: /src/opus/celt/x86/pitch_sse4_1.c:133,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/celt/x86/pitch_sse4_1.c:137,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/celt/x86/pitch_sse4_1.c:138,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/celt/x86/pitch_sse4_1.c:139,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/celt/x86/pitch_sse4_1.c:140,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/celt/x86/pitch_sse4_1.c:141,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:143,1
    - Dst: _mm_madd_epi16
      Src: /src/opus/celt/x86/pitch_sse4_1.c:143,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:144,1
    - Dst: _mm_madd_epi16
      Src: /src/opus/celt/x86/pitch_sse4_1.c:144,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:145,1
    - Dst: _mm_madd_epi16
      Src: /src/opus/celt/x86/pitch_sse4_1.c:145,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:146,1
    - Dst: _mm_madd_epi16
      Src: /src/opus/celt/x86/pitch_sse4_1.c:146,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:149,1
    - Dst: _mm_unpackhi_epi64
      Src: /src/opus/celt/x86/pitch_sse4_1.c:149,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:150,1
    - Dst: _mm_shufflelo_epi16
      Src: /src/opus/celt/x86/pitch_sse4_1.c:150,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:152,1
    - Dst: _mm_unpackhi_epi64
      Src: /src/opus/celt/x86/pitch_sse4_1.c:152,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:153,1
    - Dst: _mm_shufflelo_epi16
      Src: /src/opus/celt/x86/pitch_sse4_1.c:153,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:155,1
    - Dst: _mm_unpackhi_epi64
      Src: /src/opus/celt/x86/pitch_sse4_1.c:155,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:156,1
    - Dst: _mm_shufflelo_epi16
      Src: /src/opus/celt/x86/pitch_sse4_1.c:156,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:158,1
    - Dst: _mm_unpackhi_epi64
      Src: /src/opus/celt/x86/pitch_sse4_1.c:158,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:159,1
    - Dst: _mm_shufflelo_epi16
      Src: /src/opus/celt/x86/pitch_sse4_1.c:159,1
    - Dst: _mm_unpacklo_epi64
      Src: /src/opus/celt/x86/pitch_sse4_1.c:161,1
    - Dst: _mm_unpacklo_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:161,1
    - Dst: _mm_unpacklo_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:162,1
    - Dst: OP_CVTEPI16_EPI32_M64
      Src: /src/opus/celt/x86/pitch_sse4_1.c:166,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:167,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:168,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:169,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:170,1
    - Dst: OP_CVTEPI16_EPI32_M64
      Src: /src/opus/celt/x86/pitch_sse4_1.c:172,1
    - Dst: OP_CVTEPI16_EPI32_M64
      Src: /src/opus/celt/x86/pitch_sse4_1.c:173,1
    - Dst: OP_CVTEPI16_EPI32_M64
      Src: /src/opus/celt/x86/pitch_sse4_1.c:174,1
    - Dst: OP_CVTEPI16_EPI32_M64
      Src: /src/opus/celt/x86/pitch_sse4_1.c:175,1
    - Dst: _mm_mullo_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:177,1
    - Dst: _mm_mullo_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:178,1
    - Dst: _mm_mullo_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:179,1
    - Dst: _mm_mullo_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:180,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:182,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:183,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:184,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:185,1
    - Dst: OP_CVTEPI16_EPI32_M64
      Src: /src/opus/celt/x86/pitch_sse4_1.c:188,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:191,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:192,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:193,1
    - Dst: OP_CVTEPI16_EPI32_M64
      Src: /src/opus/celt/x86/pitch_sse4_1.c:195,1
    - Dst: OP_CVTEPI16_EPI32_M64
      Src: /src/opus/celt/x86/pitch_sse4_1.c:196,1
    - Dst: OP_CVTEPI16_EPI32_M64
      Src: /src/opus/celt/x86/pitch_sse4_1.c:197,1
    - Dst: _mm_mullo_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:199,1
    - Dst: _mm_mullo_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:200,1
    - Dst: _mm_mullo_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:201,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:203,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:204,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:205,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:209,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:210,1
    - Dst: OP_CVTEPI16_EPI32_M64
      Src: /src/opus/celt/x86/pitch_sse4_1.c:212,1
    - Dst: OP_CVTEPI16_EPI32_M64
      Src: /src/opus/celt/x86/pitch_sse4_1.c:213,1
    - Dst: _mm_mullo_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:215,1
    - Dst: _mm_mullo_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:216,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:218,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:219,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:223,1
    - Dst: OP_CVTEPI16_EPI32_M64
      Src: /src/opus/celt/x86/pitch_sse4_1.c:225,1
    - Dst: _mm_mullo_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:227,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:229,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/celt/x86/pitch_sse4_1.c:232,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/pitch_sse4_1.c:233,1
    - Dst: _mm_storeu_si128
      Src: /src/opus/celt/x86/pitch_sse4_1.c:234,1
    - Dst: celt_assert
      Src: /src/opus/celt/x86/pitch_sse4_1.c:237,1
    - Dst: memcmp
      Src: /src/opus/celt/x86/pitch_sse4_1.c:237,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 84
    argCount: 4
    argNames:
    - x
    - y
    - sum
    - len
    argTypes:
    - opus_val16*
    - opus_val16*
    - opus_val32[]
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 111
    functionDepth: 2
    functionLinenumber: 111
    functionLinenumberEnd: 239
    functionName: xcorr_kernel_sse4_1
    functionSourceFile: /src/opus/celt/x86/pitch_sse4_1.c
    functionUses: 0
    functionsReached:
    - _mm_unpacklo_epi64
    - celt_assert
    - _mm_shuffle_epi32
    - _mm_storeu_si128
    - memcmp
    - _mm_mullo_epi32
    - _mm_add_epi32
    - xcorr_kernel_c
    - OP_CVTEPI16_EPI32_M64
    - _mm_unpackhi_epi64
    - _mm_shufflelo_epi16
    - _mm_loadu_si128
    - _mm_unpacklo_epi32
    - _mm_madd_epi16
    - _mm_setzero_si128
    linkageType: ''
    returnType: void
    signature: void xcorr_kernel_sse4_1(const opus_val16 * x, const opus_val16 * y,
      opus_val32 sum[ 4 ], int len)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/celt/x86/vq_sse2.c:49,1
    - Dst: VARDECL
      Src: /src/opus/celt/x86/vq_sse2.c:50,1
    - Dst: _mm_set_ps1
      Src: /src/opus/celt/x86/vq_sse2.c:59,1
    - Dst: _mm_set_epi32
      Src: /src/opus/celt/x86/vq_sse2.c:60,1
    - Dst: ALLOC
      Src: /src/opus/celt/x86/vq_sse2.c:61,1
    - Dst: ALLOC
      Src: /src/opus/celt/x86/vq_sse2.c:62,1
    - Dst: ALLOC
      Src: /src/opus/celt/x86/vq_sse2.c:63,1
    - Dst: OPUS_COPY
      Src: /src/opus/celt/x86/vq_sse2.c:65,1
    - Dst: _mm_setzero_ps
      Src: /src/opus/celt/x86/vq_sse2.c:67,1
    - Dst: _mm_loadu_ps
      Src: /src/opus/celt/x86/vq_sse2.c:71,1
    - Dst: _mm_cmplt_ps
      Src: /src/opus/celt/x86/vq_sse2.c:72,1
    - Dst: _mm_setzero_ps
      Src: /src/opus/celt/x86/vq_sse2.c:72,1
    - Dst: _mm_andnot_ps
      Src: /src/opus/celt/x86/vq_sse2.c:74,1
    - Dst: _mm_add_ps
      Src: /src/opus/celt/x86/vq_sse2.c:75,1
    - Dst: _mm_storeu_ps
      Src: /src/opus/celt/x86/vq_sse2.c:77,1
    - Dst: _mm_setzero_ps
      Src: /src/opus/celt/x86/vq_sse2.c:77,1
    - Dst: _mm_storeu_si128
      Src: /src/opus/celt/x86/vq_sse2.c:78,1
    - Dst: _mm_setzero_si128
      Src: /src/opus/celt/x86/vq_sse2.c:78,1
    - Dst: _mm_storeu_ps
      Src: /src/opus/celt/x86/vq_sse2.c:79,1
    - Dst: _mm_storeu_ps
      Src: /src/opus/celt/x86/vq_sse2.c:80,1
    - Dst: _mm_add_ps
      Src: /src/opus/celt/x86/vq_sse2.c:82,1
    - Dst: _mm_shuffle_ps
      Src: /src/opus/celt/x86/vq_sse2.c:82,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/celt/x86/vq_sse2.c:82,1
    - Dst: _mm_add_ps
      Src: /src/opus/celt/x86/vq_sse2.c:83,1
    - Dst: _mm_shuffle_ps
      Src: /src/opus/celt/x86/vq_sse2.c:83,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/celt/x86/vq_sse2.c:83,1
    - Dst: _mm_cvtss_f32
      Src: /src/opus/celt/x86/vq_sse2.c:95,1
    - Dst: QCONST16
      Src: /src/opus/celt/x86/vq_sse2.c:101,1
    - Dst: _mm_set_ps1
      Src: /src/opus/celt/x86/vq_sse2.c:105,1
    - Dst: _mm_mul_ps
      Src: /src/opus/celt/x86/vq_sse2.c:108,1
    - Dst: _mm_set_ps1
      Src: /src/opus/celt/x86/vq_sse2.c:108,1
    - Dst: _mm_rcp_ps
      Src: /src/opus/celt/x86/vq_sse2.c:108,1
    - Dst: _mm_setzero_ps
      Src: /src/opus/celt/x86/vq_sse2.c:109,1
    - Dst: _mm_setzero_si128
      Src: /src/opus/celt/x86/vq_sse2.c:110,1
    - Dst: _mm_loadu_ps
      Src: /src/opus/celt/x86/vq_sse2.c:115,1
    - Dst: _mm_mul_ps
      Src: /src/opus/celt/x86/vq_sse2.c:116,1
    - Dst: _mm_cvttps_epi32
      Src: /src/opus/celt/x86/vq_sse2.c:117,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/vq_sse2.c:118,1
    - Dst: _mm_storeu_si128
      Src: /src/opus/celt/x86/vq_sse2.c:119,1
    - Dst: _mm_cvtepi32_ps
      Src: /src/opus/celt/x86/vq_sse2.c:120,1
    - Dst: _mm_add_ps
      Src: /src/opus/celt/x86/vq_sse2.c:121,1
    - Dst: _mm_mul_ps
      Src: /src/opus/celt/x86/vq_sse2.c:121,1
    - Dst: _mm_add_ps
      Src: /src/opus/celt/x86/vq_sse2.c:122,1
    - Dst: _mm_mul_ps
      Src: /src/opus/celt/x86/vq_sse2.c:122,1
    - Dst: _mm_storeu_ps
      Src: /src/opus/celt/x86/vq_sse2.c:124,1
    - Dst: _mm_add_ps
      Src: /src/opus/celt/x86/vq_sse2.c:124,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/vq_sse2.c:126,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/celt/x86/vq_sse2.c:126,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/celt/x86/vq_sse2.c:126,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/vq_sse2.c:127,1
    - Dst: _mm_shuffle_epi32
      Src: /src/opus/celt/x86/vq_sse2.c:127,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/celt/x86/vq_sse2.c:127,1
    - Dst: _mm_cvtsi128_si32
      Src: /src/opus/celt/x86/vq_sse2.c:128,1
    - Dst: _mm_add_ps
      Src: /src/opus/celt/x86/vq_sse2.c:129,1
    - Dst: _mm_shuffle_ps
      Src: /src/opus/celt/x86/vq_sse2.c:129,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/celt/x86/vq_sse2.c:129,1
    - Dst: _mm_add_ps
      Src: /src/opus/celt/x86/vq_sse2.c:130,1
    - Dst: _mm_shuffle_ps
      Src: /src/opus/celt/x86/vq_sse2.c:130,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/celt/x86/vq_sse2.c:130,1
    - Dst: _mm_cvtss_f32
      Src: /src/opus/celt/x86/vq_sse2.c:131,1
    - Dst: _mm_add_ps
      Src: /src/opus/celt/x86/vq_sse2.c:132,1
    - Dst: _mm_shuffle_ps
      Src: /src/opus/celt/x86/vq_sse2.c:132,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/celt/x86/vq_sse2.c:132,1
    - Dst: _mm_add_ps
      Src: /src/opus/celt/x86/vq_sse2.c:133,1
    - Dst: _mm_shuffle_ps
      Src: /src/opus/celt/x86/vq_sse2.c:133,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/celt/x86/vq_sse2.c:133,1
    - Dst: _mm_cvtss_f32
      Src: /src/opus/celt/x86/vq_sse2.c:134,1
    - Dst: celt_sig_assert
      Src: /src/opus/celt/x86/vq_sse2.c:138,1
    - Dst: MAC16_16
      Src: /src/opus/celt/x86/vq_sse2.c:145,1
    - Dst: MAC16_16
      Src: /src/opus/celt/x86/vq_sse2.c:146,1
    - Dst: ADD16
      Src: /src/opus/celt/x86/vq_sse2.c:160,1
    - Dst: _mm_load1_ps
      Src: /src/opus/celt/x86/vq_sse2.c:161,1
    - Dst: _mm_load1_ps
      Src: /src/opus/celt/x86/vq_sse2.c:162,1
    - Dst: _mm_setzero_ps
      Src: /src/opus/celt/x86/vq_sse2.c:163,1
    - Dst: _mm_setzero_si128
      Src: /src/opus/celt/x86/vq_sse2.c:164,1
    - Dst: _mm_set_epi32
      Src: /src/opus/celt/x86/vq_sse2.c:165,1
    - Dst: _mm_loadu_ps
      Src: /src/opus/celt/x86/vq_sse2.c:169,1
    - Dst: _mm_loadu_ps
      Src: /src/opus/celt/x86/vq_sse2.c:170,1
    - Dst: _mm_add_ps
      Src: /src/opus/celt/x86/vq_sse2.c:171,1
    - Dst: _mm_add_ps
      Src: /src/opus/celt/x86/vq_sse2.c:172,1
    - Dst: _mm_rsqrt_ps
      Src: /src/opus/celt/x86/vq_sse2.c:173,1
    - Dst: _mm_mul_ps
      Src: /src/opus/celt/x86/vq_sse2.c:174,1
    - Dst: _mm_max_epi16
      Src: /src/opus/celt/x86/vq_sse2.c:176,1
    - Dst: _mm_and_si128
      Src: /src/opus/celt/x86/vq_sse2.c:176,1
    - Dst: _mm_castps_si128
      Src: /src/opus/celt/x86/vq_sse2.c:176,1
    - Dst: _mm_cmpgt_ps
      Src: /src/opus/celt/x86/vq_sse2.c:176,1
    - Dst: _mm_max_ps
      Src: /src/opus/celt/x86/vq_sse2.c:178,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/vq_sse2.c:180,1
    - Dst: _mm_max_ps
      Src: /src/opus/celt/x86/vq_sse2.c:183,1
    - Dst: _mm_shuffle_ps
      Src: /src/opus/celt/x86/vq_sse2.c:183,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/celt/x86/vq_sse2.c:183,1
    - Dst: _mm_max_ps
      Src: /src/opus/celt/x86/vq_sse2.c:184,1
    - Dst: _mm_shuffle_ps
      Src: /src/opus/celt/x86/vq_sse2.c:184,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/celt/x86/vq_sse2.c:184,1
    - Dst: _mm_and_si128
      Src: /src/opus/celt/x86/vq_sse2.c:187,1
    - Dst: _mm_castps_si128
      Src: /src/opus/celt/x86/vq_sse2.c:187,1
    - Dst: _mm_cmpeq_ps
      Src: /src/opus/celt/x86/vq_sse2.c:187,1
    - Dst: _mm_max_epi16
      Src: /src/opus/celt/x86/vq_sse2.c:188,1
    - Dst: _mm_unpackhi_epi64
      Src: /src/opus/celt/x86/vq_sse2.c:188,1
    - Dst: _mm_max_epi16
      Src: /src/opus/celt/x86/vq_sse2.c:189,1
    - Dst: _mm_shufflelo_epi16
      Src: /src/opus/celt/x86/vq_sse2.c:189,1
    - Dst: _MM_SHUFFLE
      Src: /src/opus/celt/x86/vq_sse2.c:189,1
    - Dst: _mm_cvtsi128_si32
      Src: /src/opus/celt/x86/vq_sse2.c:190,1
    - Dst: ADD32
      Src: /src/opus/celt/x86/vq_sse2.c:193,1
    - Dst: EXTEND32
      Src: /src/opus/celt/x86/vq_sse2.c:193,1
    - Dst: ADD16
      Src: /src/opus/celt/x86/vq_sse2.c:195,1
    - Dst: _mm_loadu_si128
      Src: /src/opus/celt/x86/vq_sse2.c:208,1
    - Dst: _mm_castps_si128
      Src: /src/opus/celt/x86/vq_sse2.c:209,1
    - Dst: _mm_loadu_ps
      Src: /src/opus/celt/x86/vq_sse2.c:209,1
    - Dst: _mm_xor_si128
      Src: /src/opus/celt/x86/vq_sse2.c:210,1
    - Dst: _mm_add_epi32
      Src: /src/opus/celt/x86/vq_sse2.c:210,1
    - Dst: _mm_storeu_si128
      Src: /src/opus/celt/x86/vq_sse2.c:211,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 106
    argCount: 5
    argNames:
    - _X
    - iy
    - K
    - N
    - arch
    argTypes:
    - celt_norm*
    - int*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 215
    functionName: op_pvq_search_sse2
    functionSourceFile: /src/opus/celt/x86/vq_sse2.c
    functionUses: 0
    functionsReached:
    - _mm_shuffle_epi32
    - _mm_storeu_si128
    - OPUS_COPY
    - _mm_storeu_ps
    - _mm_setzero_ps
    - _mm_cvtsi128_si32
    - _mm_set_epi32
    - _mm_loadu_ps
    - _mm_shuffle_ps
    - _MM_SHUFFLE
    - _mm_max_epi16
    - _mm_cvttps_epi32
    - _mm_cmplt_ps
    - _mm_cvtepi32_ps
    - _mm_shufflelo_epi16
    - VARDECL
    - ALLOC
    - _mm_set_ps1
    - QCONST16
    - ADD16
    - MAC16_16
    - _mm_max_ps
    - _mm_andnot_ps
    - _mm_add_epi32
    - _mm_unpackhi_epi64
    - celt_sig_assert
    - _mm_cmpeq_ps
    - _mm_loadu_si128
    - _mm_castps_si128
    - _mm_load1_ps
    - EXTEND32
    - _mm_setzero_si128
    - _mm_cmpgt_ps
    - _mm_cvtss_f32
    - _mm_mul_ps
    - ADD32
    - _mm_rsqrt_ps
    - _mm_and_si128
    - _mm_add_ps
    - _mm_xor_si128
    - _mm_rcp_ps
    linkageType: ''
    returnType: opus_val16
    signature: opus_val16 op_pvq_search_sse2(celt_norm *_X, int *iy, int K, int N,
      int arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - x
    - ','
    - y
    - ','
    - sum
    - ','
    - len
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionName: xcorr_kernel
    functionSourceFile: /src/opus/celt/x86/pitch_sse.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xcorr_kernel(x, y, sum, len, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - x
    - ','
    - y
    - ','
    - sum
    - ','
    - len
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 65
    functionName: xcorr_kernel
    functionSourceFile: /src/opus/celt/x86/pitch_sse.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xcorr_kernel(x, y, sum, len, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - x
    - ','
    - y
    - ','
    - sum
    - ','
    - len
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 77
    functionName: xcorr_kernel
    functionSourceFile: /src/opus/celt/x86/pitch_sse.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xcorr_kernel(x, y, sum, len, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - x
    - ','
    - y
    - ','
    - N
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 106
    functionName: celt_inner_prod
    functionSourceFile: /src/opus/celt/x86/pitch_sse.h
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_inner_prod(x, y, N, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - x
    - ','
    - y
    - ','
    - N
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionName: celt_inner_prod
    functionSourceFile: /src/opus/celt/x86/pitch_sse.h
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_inner_prod(x, y, N, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - x
    - ','
    - y
    - ','
    - N
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 116
    functionName: celt_inner_prod
    functionSourceFile: /src/opus/celt/x86/pitch_sse.h
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_inner_prod(x, y, N, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - x
    - ','
    - y
    - ','
    - N
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 129
    functionName: celt_inner_prod
    functionSourceFile: /src/opus/celt/x86/pitch_sse.h
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_inner_prod(x, y, N, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 15
    argNames:
    - (
    - x
    - ','
    - y01
    - ','
    - y02
    - ','
    - N
    - ','
    - xy1
    - ','
    - xy2
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 155
    functionName: dual_inner_prod
    functionSourceFile: /src/opus/celt/x86/pitch_sse.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: dual_inner_prod(x, y01, y02, N, xy1, xy2, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 17
    argNames:
    - (
    - y
    - ','
    - x
    - ','
    - T
    - ','
    - N
    - ','
    - g10
    - ','
    - g11
    - ','
    - g12
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 156
    functionDepth: 0
    functionLinenumber: 156
    functionLinenumberEnd: 158
    functionName: comb_filter_const
    functionSourceFile: /src/opus/celt/x86/pitch_sse.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: comb_filter_const(y, x, T, N, g10, g11, g12, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 15
    argNames:
    - (
    - x
    - ','
    - y01
    - ','
    - y02
    - ','
    - N
    - ','
    - xy1
    - ','
    - xy2
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 172
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 172
    functionName: dual_inner_prod
    functionSourceFile: /src/opus/celt/x86/pitch_sse.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: dual_inner_prod(x, y01, y02, N, xy1, xy2, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 17
    argNames:
    - (
    - y
    - ','
    - x
    - ','
    - T
    - ','
    - N
    - ','
    - g10
    - ','
    - g11
    - ','
    - g12
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 184
    functionName: comb_filter_const
    functionSourceFile: /src/opus/celt/x86/pitch_sse.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: comb_filter_const(y, x, T, N, g10, g11, g12, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 13
    argNames:
    - (
    - _x
    - ','
    - _y
    - ','
    - xcorr
    - ','
    - len
    - ','
    - max_pitch
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 210
    functionName: celt_pitch_xcorr
    functionSourceFile: /src/opus/celt/x86/pitch_sse.h
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_pitch_xcorr(_x, _y, xcorr, len, max_pitch, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: __cpuid
      Src: /src/opus/celt/x86/x86cpu.c:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - CPUInfo
    - InfoType
    argTypes:
    - unsigned int[]
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 50
    functionName: cpuid
    functionSourceFile: /src/opus/celt/x86/x86cpu.c
    functionUses: 1
    functionsReached:
    - __cpuid
    linkageType: ''
    returnType: _inline
    signature: _inline cpuid(unsigned int CPUInfo[4], unsigned int InfoType)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: __get_cpuid_count
      Src: /src/opus/celt/x86/x86cpu.c:88,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - CPUInfo
    - InfoType
    argTypes:
    - unsigned int[]
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 98
    functionName: cpuid
    functionSourceFile: /src/opus/celt/x86/x86cpu.c
    functionUses: 1
    functionsReached:
    - __get_cpuid_count
    linkageType: ''
    returnType: void
    signature: void cpuid(unsigned int CPUInfo[4], unsigned int InfoType)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: cpuid
      Src: /src/opus/celt/x86/x86cpu.c:116,1
    - Dst: cpuid
      Src: /src/opus/celt/x86/x86cpu.c:120,1
    - Dst: cpuid
      Src: /src/opus/celt/x86/x86cpu.c:126,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 21
    argCount: 1
    argNames:
    - cpu_feature
    argTypes:
    - CPU_Feature*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 138
    functionName: opus_cpu_feature_check
    functionSourceFile: /src/opus/celt/x86/x86cpu.c
    functionUses: 0
    functionsReached:
    - cpuid
    linkageType: ''
    returnType: void
    signature: void opus_cpu_feature_check(CPU_Feature *cpu_feature)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: opus_cpu_feature_check
      Src: /src/opus/celt/x86/x86cpu.c:145,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 140
    functionDepth: 2
    functionLinenumber: 140
    functionLinenumberEnd: 173
    functionName: opus_select_arch_impl
    functionSourceFile: /src/opus/celt/x86/x86cpu.c
    functionUses: 0
    functionsReached:
    - opus_cpu_feature_check
    linkageType: ''
    returnType: int
    signature: int opus_select_arch_impl(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_select_arch_impl
      Src: /src/opus/celt/x86/x86cpu.c:176,1
    - Dst: rand
      Src: /src/opus/celt/x86/x86cpu.c:179,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 182
    functionName: opus_select_arch
    functionSourceFile: /src/opus/celt/x86/x86cpu.c
    functionUses: 19
    functionsReached:
    - opus_select_arch_impl
    - rand
    linkageType: ''
    returnType: int
    signature: int opus_select_arch(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - acc
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 44
    functionName: MIPS_MAC
    functionSourceFile: /src/opus/celt/mips/pitch_mipsr1.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MIPS_MAC(acc,a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - acc
    - ','
    - a2x
    - ','
    - b2x
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 47
    functionName: MIPS_MAC16x16_2X
    functionSourceFile: /src/opus/celt/mips/pitch_mipsr1.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MIPS_MAC16x16_2X(acc,a2x,b2x)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: __builtin_assume_aligned
      Src: /src/opus/celt/mips/pitch_mipsr1.h:82,1
    - Dst: __builtin_assume_aligned
      Src: /src/opus/celt/mips/pitch_mipsr1.h:83,1
    - Dst: MIPS_MAC16x16_2X
      Src: /src/opus/celt/mips/pitch_mipsr1.h:87,1
    - Dst: MIPS_MAC16x16_2X
      Src: /src/opus/celt/mips/pitch_mipsr1.h:88,1
    - Dst: MIPS_MAC16x16_2X
      Src: /src/opus/celt/mips/pitch_mipsr1.h:89,1
    - Dst: MIPS_MAC16x16_2X
      Src: /src/opus/celt/mips/pitch_mipsr1.h:90,1
    - Dst: MIPS_MAC16x16_2X
      Src: /src/opus/celt/mips/pitch_mipsr1.h:96,1
    - Dst: MIPS_MAC16x16_2X
      Src: /src/opus/celt/mips/pitch_mipsr1.h:97,1
    - Dst: MIPS_MAC16x16_2X
      Src: /src/opus/celt/mips/pitch_mipsr1.h:98,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:99,1
    - Dst: MIPS_MAC16x16_2X
      Src: /src/opus/celt/mips/pitch_mipsr1.h:102,1
    - Dst: MIPS_MAC16x16_2X
      Src: /src/opus/celt/mips/pitch_mipsr1.h:103,1
    - Dst: MIPS_MAC16x16_2X
      Src: /src/opus/celt/mips/pitch_mipsr1.h:104,1
    - Dst: MIPS_MAC16x16_2X
      Src: /src/opus/celt/mips/pitch_mipsr1.h:107,1
    - Dst: MIPS_MAC16x16_2X
      Src: /src/opus/celt/mips/pitch_mipsr1.h:108,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:109,1
    - Dst: MIPS_MAC16x16_2X
      Src: /src/opus/celt/mips/pitch_mipsr1.h:112,1
    - Dst: MIPS_MAC16x16_2X
      Src: /src/opus/celt/mips/pitch_mipsr1.h:113,1
    - Dst: MIPS_MAC16x16_2X
      Src: /src/opus/celt/mips/pitch_mipsr1.h:116,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:117,1
    - Dst: MIPS_MAC16x16_2X
      Src: /src/opus/celt/mips/pitch_mipsr1.h:120,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:123,1
    - Dst: __builtin_mips_extr_w
      Src: /src/opus/celt/mips/pitch_mipsr1.h:128,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:134,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:135,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:136,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:137,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:142,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:143,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:144,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:147,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:148,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:151,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 77
    argCount: 4
    argNames:
    - x
    - y
    - N
    - arch
    argTypes:
    - opus_val16*
    - opus_val16*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 160
    functionName: celt_inner_prod
    functionSourceFile: /src/opus/celt/mips/pitch_mipsr1.h
    functionUses: 9
    functionsReached:
    - MIPS_MAC
    - MIPS_MAC16x16_2X
    - __builtin_assume_aligned
    - __builtin_mips_extr_w
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE celt_inner_prod(const opus_val16 *x,\n      const opus_val16
      *y, int N, int arch)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: __builtin_assume_aligned
      Src: /src/opus/celt/mips/pitch_mipsr1.h:180,1
    - Dst: __builtin_assume_aligned
      Src: /src/opus/celt/mips/pitch_mipsr1.h:181,1
    - Dst: __builtin_assume_aligned
      Src: /src/opus/celt/mips/pitch_mipsr1.h:182,1
    - Dst: MIPS_MAC16x16_2X
      Src: /src/opus/celt/mips/pitch_mipsr1.h:187,1
    - Dst: MIPS_MAC16x16_2X
      Src: /src/opus/celt/mips/pitch_mipsr1.h:188,1
    - Dst: MIPS_MAC16x16_2X
      Src: /src/opus/celt/mips/pitch_mipsr1.h:189,1
    - Dst: MIPS_MAC16x16_2X
      Src: /src/opus/celt/mips/pitch_mipsr1.h:190,1
    - Dst: MIPS_MAC16x16_2X
      Src: /src/opus/celt/mips/pitch_mipsr1.h:191,1
    - Dst: MIPS_MAC16x16_2X
      Src: /src/opus/celt/mips/pitch_mipsr1.h:192,1
    - Dst: MIPS_MAC16x16_2X
      Src: /src/opus/celt/mips/pitch_mipsr1.h:193,1
    - Dst: MIPS_MAC16x16_2X
      Src: /src/opus/celt/mips/pitch_mipsr1.h:194,1
    - Dst: MIPS_MAC16x16_2X
      Src: /src/opus/celt/mips/pitch_mipsr1.h:199,1
    - Dst: MIPS_MAC16x16_2X
      Src: /src/opus/celt/mips/pitch_mipsr1.h:200,1
    - Dst: MIPS_MAC16x16_2X
      Src: /src/opus/celt/mips/pitch_mipsr1.h:201,1
    - Dst: MIPS_MAC16x16_2X
      Src: /src/opus/celt/mips/pitch_mipsr1.h:202,1
    - Dst: MIPS_MAC16x16_2X
      Src: /src/opus/celt/mips/pitch_mipsr1.h:203,1
    - Dst: MIPS_MAC16x16_2X
      Src: /src/opus/celt/mips/pitch_mipsr1.h:204,1
    - Dst: MIPS_MAC16x16_2X
      Src: /src/opus/celt/mips/pitch_mipsr1.h:207,1
    - Dst: MIPS_MAC16x16_2X
      Src: /src/opus/celt/mips/pitch_mipsr1.h:208,1
    - Dst: MIPS_MAC16x16_2X
      Src: /src/opus/celt/mips/pitch_mipsr1.h:209,1
    - Dst: MIPS_MAC16x16_2X
      Src: /src/opus/celt/mips/pitch_mipsr1.h:210,1
    - Dst: MIPS_MAC16x16_2X
      Src: /src/opus/celt/mips/pitch_mipsr1.h:213,1
    - Dst: MIPS_MAC16x16_2X
      Src: /src/opus/celt/mips/pitch_mipsr1.h:214,1
    - Dst: __builtin_mips_extr_w
      Src: /src/opus/celt/mips/pitch_mipsr1.h:220,1
    - Dst: __builtin_mips_extr_w
      Src: /src/opus/celt/mips/pitch_mipsr1.h:221,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:229,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:230,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:231,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:232,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:233,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:234,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:235,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:236,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:240,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:241,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:242,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:243,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 65
    argCount: 7
    argNames:
    - x
    - y01
    - y02
    - N
    - xy1
    - xy2
    - arch
    argTypes:
    - opus_val16*
    - opus_val16*
    - opus_val16*
    - int
    - opus_val32*
    - opus_val32*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 164
    functionDepth: 1
    functionLinenumber: 164
    functionLinenumberEnd: 250
    functionName: dual_inner_prod
    functionSourceFile: /src/opus/celt/mips/pitch_mipsr1.h
    functionUses: 1
    functionsReached:
    - __builtin_mips_extr_w
    - MIPS_MAC16x16_2X
    - __builtin_assume_aligned
    - MIPS_MAC
    linkageType: ''
    returnType: void
    signature: "void dual_inner_prod(const opus_val16 *x, const opus_val16 *y01, const
      opus_val16 *y02,\n      int N, opus_val32 *xy1, opus_val32 *xy2, int arch)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:276,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:277,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:278,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:279,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:284,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:285,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:286,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:287,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:292,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:293,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:294,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:295,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:301,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:302,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:303,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:304,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:309,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:310,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:311,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:312,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:314,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:315,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:316,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:317,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:319,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:320,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:321,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:322,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:325,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:326,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:327,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:328,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:330,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:331,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:332,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:333,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:336,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:337,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:338,1
    - Dst: MIPS_MAC
      Src: /src/opus/celt/mips/pitch_mipsr1.h:339,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 72
    argCount: 4
    argNames:
    - x
    - y
    - sum
    - len
    argTypes:
    - opus_val16*
    - opus_val16*
    - opus_val32[]
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 255
    functionDepth: 1
    functionLinenumber: 255
    functionLinenumberEnd: 349
    functionName: xcorr_kernel_mips
    functionSourceFile: /src/opus/celt/mips/pitch_mipsr1.h
    functionUses: 0
    functionsReached:
    - MIPS_MAC
    linkageType: ''
    returnType: void
    signature: "void xcorr_kernel_mips(const opus_val16 * x,\n      const opus_val16
      * y, opus_val32 sum[4], int len)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - x
    - ','
    - y
    - ','
    - sum
    - ','
    - len
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 353
      start: 351
    functionDepth: 0
    functionLinenumber: 351
    functionLinenumberEnd: 353
    functionName: xcorr_kernel
    functionSourceFile: /src/opus/celt/mips/pitch_mipsr1.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xcorr_kernel(x, y, sum, len, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: __builtin_mips_mult
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:44,1
    - Dst: __builtin_mips_extr_w
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 46
    functionName: MULT16_32_Q16
    functionSourceFile: /src/opus/celt/mips/fixed_generic_mipsr1.h
    functionUses: 1
    functionsReached:
    - __builtin_mips_extr_w
    - __builtin_mips_mult
    linkageType: ''
    returnType: int
    signature: int MULT16_32_Q16(int a, int b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: __builtin_mips_mult
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:51,1
    - Dst: __builtin_mips_extr_r_w
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 53
    functionName: MULT16_32_P16
    functionSourceFile: /src/opus/celt/mips/fixed_generic_mipsr1.h
    functionUses: 0
    functionsReached:
    - __builtin_mips_mult
    - __builtin_mips_extr_r_w
    linkageType: ''
    returnType: int
    signature: int MULT16_32_P16(int a, int b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: __builtin_mips_mult
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:58,1
    - Dst: __builtin_mips_extr_w
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 60
    functionName: MULT16_32_Q15
    functionSourceFile: /src/opus/celt/mips/fixed_generic_mipsr1.h
    functionUses: 25
    functionsReached:
    - __builtin_mips_extr_w
    - __builtin_mips_mult
    linkageType: ''
    returnType: int
    signature: int MULT16_32_Q15(int a, int b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: __builtin_mips_mult
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:65,1
    - Dst: __builtin_mips_extr_w
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 67
    functionName: MULT32_32_Q31
    functionSourceFile: /src/opus/celt/mips/fixed_generic_mipsr1.h
    functionUses: 26
    functionsReached:
    - __builtin_mips_extr_w
    - __builtin_mips_mult
    linkageType: ''
    returnType: int
    signature: int MULT32_32_Q31(int a, int b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: __builtin_mips_shra_r_w
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - shift
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionName: PSHR32
    functionSourceFile: /src/opus/celt/mips/fixed_generic_mipsr1.h
    functionUses: 28
    functionsReached:
    - __builtin_mips_shra_r_w
    linkageType: ''
    returnType: int
    signature: int PSHR32(int a, int shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: __builtin_mips_shra_r_w
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 80
    functionName: MULT16_16_P15
    functionSourceFile: /src/opus/celt/mips/fixed_generic_mipsr1.h
    functionUses: 2
    functionsReached:
    - __builtin_mips_shra_r_w
    linkageType: ''
    returnType: int
    signature: int MULT16_16_P15(int a, int b)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: ABS16
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:93,1
    - Dst: __builtin_assume_aligned
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:97,1
    - Dst: __builtin_mips_absq_s_ph
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:104,1
    - Dst: __builtin_mips_absq_s_ph
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:105,1
    - Dst: __builtin_mips_cmp_lt_ph
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:106,1
    - Dst: __builtin_mips_pick_ph
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:107,1
    - Dst: __builtin_mips_cmp_lt_ph
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:108,1
    - Dst: __builtin_mips_pick_ph
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:109,1
    - Dst: __builtin_mips_absq_s_ph
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:114,1
    - Dst: __builtin_mips_cmp_lt_ph
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:115,1
    - Dst: __builtin_mips_pick_ph
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:116,1
    - Dst: EXTRACT16
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:117,1
    - Dst: EXTRACT16
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:118,1
    - Dst: MAX16
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:119,1
    - Dst: MAX16
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:119,1
    - Dst: ABS16
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:119,1
    - Dst: __builtin_mips_absq_s_ph
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:122,1
    - Dst: __builtin_mips_cmp_lt_ph
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:123,1
    - Dst: __builtin_mips_pick_ph
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:124,1
    - Dst: EXTRACT16
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:125,1
    - Dst: EXTRACT16
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:126,1
    - Dst: MAX16
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:127,1
    - Dst: EXTRACT16
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:130,1
    - Dst: EXTRACT16
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:131,1
    - Dst: MAX16
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:132,1
    - Dst: MAX16
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:132,1
    - Dst: ABS16
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:132,1
    - Dst: EXTRACT16
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:135,1
    - Dst: EXTRACT16
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:136,1
    - Dst: MAX16
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:137,1
    - Dst: __builtin_unreachable
      Src: /src/opus/celt/mips/fixed_generic_mipsr1.h:140,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 49
    argCount: 2
    argNames:
    - x
    - len
    argTypes:
    - opus_val16*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 149
    functionName: celt_maxabs16
    functionSourceFile: /src/opus/celt/mips/fixed_generic_mipsr1.h
    functionUses: 1
    functionsReached:
    - EXTRACT16
    - __builtin_mips_absq_s_ph
    - ABS16
    - __builtin_mips_cmp_lt_ph
    - __builtin_unreachable
    - __builtin_mips_pick_ph
    - __builtin_assume_aligned
    - MAX16
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE celt_maxabs16(const opus_val16 *x, int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 155
    functionName: MULT16_32_Q16
    functionSourceFile: /src/opus/celt/mips/fixed_generic_mipsr1.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_32_Q16(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 84
    functionName: MIPS_MULT
    functionSourceFile: /src/opus/celt/mips/celt_mipsr1.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: long long
    signature: long long MIPS_MULT(int a, int b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - acc
    - a
    - b
    argTypes:
    - long long
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 94
    functionName: MIPS_MADD
    functionSourceFile: /src/opus/celt/mips/celt_mipsr1.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: long long
    signature: long long MIPS_MADD(long long acc, int a, int b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - acc
    - shift
    argTypes:
    - long long
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: MIPS_EXTR
    functionSourceFile: /src/opus/celt/mips/celt_mipsr1.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: opus_val32
    signature: opus_val32 MIPS_EXTR(long long acc, int shift)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: QCONST16
      Src: /src/opus/celt/mips/celt_mipsr1.h:115,1
    - Dst: QCONST16
      Src: /src/opus/celt/mips/celt_mipsr1.h:115,1
    - Dst: QCONST16
      Src: /src/opus/celt/mips/celt_mipsr1.h:115,1
    - Dst: QCONST16
      Src: /src/opus/celt/mips/celt_mipsr1.h:116,1
    - Dst: QCONST16
      Src: /src/opus/celt/mips/celt_mipsr1.h:116,1
    - Dst: QCONST16
      Src: /src/opus/celt/mips/celt_mipsr1.h:116,1
    - Dst: QCONST16
      Src: /src/opus/celt/mips/celt_mipsr1.h:117,1
    - Dst: QCONST16
      Src: /src/opus/celt/mips/celt_mipsr1.h:117,1
    - Dst: QCONST16
      Src: /src/opus/celt/mips/celt_mipsr1.h:117,1
    - Dst: OPUS_MOVE
      Src: /src/opus/celt/mips/celt_mipsr1.h:123,1
    - Dst: MULT16_16_P15
      Src: /src/opus/celt/mips/celt_mipsr1.h:127,1
    - Dst: MULT16_16_P15
      Src: /src/opus/celt/mips/celt_mipsr1.h:128,1
    - Dst: MULT16_16_P15
      Src: /src/opus/celt/mips/celt_mipsr1.h:129,1
    - Dst: MULT16_16_P15
      Src: /src/opus/celt/mips/celt_mipsr1.h:130,1
    - Dst: MULT16_16_P15
      Src: /src/opus/celt/mips/celt_mipsr1.h:131,1
    - Dst: MULT16_16_P15
      Src: /src/opus/celt/mips/celt_mipsr1.h:132,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/mips/celt_mipsr1.h:146,1
    - Dst: MIPS_MULT
      Src: /src/opus/celt/mips/celt_mipsr1.h:149,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/mips/celt_mipsr1.h:149,1
    - Dst: MIPS_MADD
      Src: /src/opus/celt/mips/celt_mipsr1.h:150,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/mips/celt_mipsr1.h:150,1
    - Dst: ADD32
      Src: /src/opus/celt/mips/celt_mipsr1.h:150,1
    - Dst: MIPS_MADD
      Src: /src/opus/celt/mips/celt_mipsr1.h:151,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/mips/celt_mipsr1.h:151,1
    - Dst: ADD32
      Src: /src/opus/celt/mips/celt_mipsr1.h:151,1
    - Dst: MIPS_MADD
      Src: /src/opus/celt/mips/celt_mipsr1.h:152,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/mips/celt_mipsr1.h:152,1
    - Dst: MIPS_MADD
      Src: /src/opus/celt/mips/celt_mipsr1.h:153,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/mips/celt_mipsr1.h:153,1
    - Dst: ADD32
      Src: /src/opus/celt/mips/celt_mipsr1.h:153,1
    - Dst: MIPS_MADD
      Src: /src/opus/celt/mips/celt_mipsr1.h:154,1
    - Dst: MULT16_16_Q15
      Src: /src/opus/celt/mips/celt_mipsr1.h:154,1
    - Dst: ADD32
      Src: /src/opus/celt/mips/celt_mipsr1.h:154,1
    - Dst: MIPS_EXTR
      Src: /src/opus/celt/mips/celt_mipsr1.h:155,1
    - Dst: OPUS_MOVE
      Src: /src/opus/celt/mips/celt_mipsr1.h:174,1
    - Dst: MIPS_MULT
      Src: /src/opus/celt/mips/celt_mipsr1.h:184,1
    - Dst: MIPS_MADD
      Src: /src/opus/celt/mips/celt_mipsr1.h:185,1
    - Dst: ADD32
      Src: /src/opus/celt/mips/celt_mipsr1.h:185,1
    - Dst: MIPS_MADD
      Src: /src/opus/celt/mips/celt_mipsr1.h:186,1
    - Dst: ADD32
      Src: /src/opus/celt/mips/celt_mipsr1.h:186,1
    - Dst: MIPS_EXTR
      Src: /src/opus/celt/mips/celt_mipsr1.h:187,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 56
    argCount: 12
    argNames:
    - y
    - x
    - T0
    - T1
    - N
    - g0
    - g1
    - tapset0
    - tapset1
    - window
    - overlap
    - arch
    argTypes:
    - opus_val32*
    - opus_val32*
    - int
    - int
    - int
    - opus_val16
    - opus_val16
    - int
    - int
    - opus_val16*
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 195
    functionName: comb_filter
    functionSourceFile: /src/opus/celt/mips/celt_mipsr1.h
    functionUses: 2
    functionsReached:
    - MULT16_16_P15
    - MIPS_EXTR
    - ADD32
    - MIPS_MULT
    - OPUS_MOVE
    - MIPS_MADD
    - MULT16_16_Q15
    - QCONST16
    linkageType: ''
    returnType: void
    signature: "void comb_filter(opus_val32 *y, opus_val32 *x, int T0, int T1, int
      N,\n      opus_val16 g0, opus_val16 g1, int tapset0, int tapset1,\n      const
      opus_val16 *window, int overlap, int arch)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: __builtin_mips_mult
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:38,1
    - Dst: __builtin_mips_madd
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:39,1
    - Dst: __builtin_mips_extr_w
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - a
    - b
    - c
    - d
    argTypes:
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 41
    functionName: S_MUL_ADD
    functionSourceFile: /src/opus/celt/mips/kiss_fft_mipsr1.h
    functionUses: 0
    functionsReached:
    - __builtin_mips_madd
    - __builtin_mips_mult
    - __builtin_mips_extr_w
    linkageType: ''
    returnType: int
    signature: int S_MUL_ADD(int a, int b, int c, int d)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: __builtin_mips_mult
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:44,1
    - Dst: __builtin_mips_msub
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:45,1
    - Dst: __builtin_mips_extr_w
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - a
    - b
    - c
    - d
    argTypes:
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 47
    functionName: S_MUL_SUB
    functionSourceFile: /src/opus/celt/mips/kiss_fft_mipsr1.h
    functionUses: 0
    functionsReached:
    - __builtin_mips_extr_w
    - __builtin_mips_mult
    - __builtin_mips_msub
    linkageType: ''
    returnType: int
    signature: int S_MUL_SUB(int a, int b, int c, int d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - m
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 51
    functionName: C_MUL
    functionSourceFile: /src/opus/celt/mips/kiss_fft_mipsr1.h
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: C_MUL(m,a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: __builtin_mips_mult
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:54,1
    - Dst: __builtin_mips_mult
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:55,1
    - Dst: __builtin_mips_msub
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:56,1
    - Dst: __builtin_mips_madd
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:57,1
    - Dst: __builtin_mips_extr_w
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:58,1
    - Dst: __builtin_mips_extr_w
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - kiss_fft_cpx
    - kiss_twiddle_cpx
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 61
    functionName: C_MUL_fun
    functionSourceFile: /src/opus/celt/mips/kiss_fft_mipsr1.h
    functionUses: 0
    functionsReached:
    - __builtin_mips_madd
    - __builtin_mips_mult
    - __builtin_mips_extr_w
    - __builtin_mips_msub
    linkageType: ''
    returnType: kiss_fft_cpx
    signature: kiss_fft_cpx C_MUL_fun(kiss_fft_cpx a, kiss_twiddle_cpx b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - m
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 64
    functionName: C_MULC
    functionSourceFile: /src/opus/celt/mips/kiss_fft_mipsr1.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: C_MULC(m,a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: __builtin_mips_mult
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:67,1
    - Dst: __builtin_mips_mult
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:68,1
    - Dst: __builtin_mips_madd
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:69,1
    - Dst: __builtin_mips_msub
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:70,1
    - Dst: __builtin_mips_extr_w
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:71,1
    - Dst: __builtin_mips_extr_w
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - kiss_fft_cpx
    - kiss_twiddle_cpx
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 74
    functionName: C_MULC_fun
    functionSourceFile: /src/opus/celt/mips/kiss_fft_mipsr1.h
    functionUses: 0
    functionsReached:
    - __builtin_mips_madd
    - __builtin_mips_mult
    - __builtin_mips_extr_w
    - __builtin_mips_msub
    linkageType: ''
    returnType: kiss_fft_cpx
    signature: kiss_fft_cpx C_MULC_fun(kiss_fft_cpx a, kiss_twiddle_cpx b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - a
    - b
    - c
    - d
    argTypes:
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 91
    functionName: S_MUL_ADD
    functionSourceFile: /src/opus/celt/mips/kiss_fft_mipsr1.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int S_MUL_ADD(int a, int b, int c, int d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - a
    - b
    - c
    - d
    argTypes:
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 104
    functionName: S_MUL_SUB
    functionSourceFile: /src/opus/celt/mips/kiss_fft_mipsr1.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int S_MUL_SUB(int a, int b, int c, int d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - m
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 108
    functionName: C_MUL
    functionSourceFile: /src/opus/celt/mips/kiss_fft_mipsr1.h
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: C_MUL(m,a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: S_MUL_SUB
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:111,1
    - Dst: S_MUL_ADD
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - kiss_fft_cpx
    - kiss_twiddle_cpx
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 108
    functionDepth: 1
    functionLinenumber: 108
    functionLinenumberEnd: 115
    functionName: C_MUL_fun
    functionSourceFile: /src/opus/celt/mips/kiss_fft_mipsr1.h
    functionUses: 0
    functionsReached:
    - S_MUL_ADD
    - S_MUL_SUB
    linkageType: ''
    returnType: kiss_fft_cpx
    signature: kiss_fft_cpx C_MUL_fun(kiss_fft_cpx a, kiss_twiddle_cpx b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - m
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 119
    functionName: C_MULC
    functionSourceFile: /src/opus/celt/mips/kiss_fft_mipsr1.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: C_MULC(m,a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: S_MUL_ADD
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:122,1
    - Dst: S_MUL_SUB
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - kiss_fft_cpx
    - kiss_twiddle_cpx
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 126
    functionName: C_MULC_fun
    functionSourceFile: /src/opus/celt/mips/kiss_fft_mipsr1.h
    functionUses: 0
    functionsReached:
    - S_MUL_ADD
    - S_MUL_SUB
    linkageType: ''
    returnType: kiss_fft_cpx
    signature: kiss_fft_cpx C_MULC_fun(kiss_fft_cpx a, kiss_twiddle_cpx b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: C_MUL
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:179,1
    - Dst: C_MUL
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:180,1
    - Dst: C_MUL
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:181,1
    - Dst: C_MUL
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:182,1
    - Dst: C_ADD
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:184,1
    - Dst: C_SUB
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:185,1
    - Dst: C_ADD
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:186,1
    - Dst: C_SUB
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:187,1
    - Dst: S_MUL_ADD
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:191,1
    - Dst: S_MUL_ADD
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:192,1
    - Dst: S_MUL_ADD
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:194,1
    - Dst: S_MUL_ADD
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:195,1
    - Dst: C_SUB
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:197,1
    - Dst: C_ADD
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:198,1
    - Dst: S_MUL_ADD
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:200,1
    - Dst: S_MUL_ADD
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:201,1
    - Dst: S_MUL_SUB
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:203,1
    - Dst: S_MUL_SUB
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:204,1
    - Dst: C_ADD
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:206,1
    - Dst: C_SUB
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:207,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 46
    argCount: 6
    argNames:
    - Fout
    - fstride
    - st
    - m
    - N
    - mm
    argTypes:
    - kiss_fft_cpx*
    - size_t
    - kiss_fft_state*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 136
    functionDepth: 1
    functionLinenumber: 136
    functionLinenumberEnd: 212
    functionName: kf_bfly5
    functionSourceFile: /src/opus/celt/mips/kiss_fft_mipsr1.h
    functionUses: 2
    functionsReached:
    - C_SUB
    - C_MUL
    - S_MUL_ADD
    - S_MUL_SUB
    - C_ADD
    linkageType: ''
    returnType: void
    signature: "void kf_bfly5(\n                     kiss_fft_cpx * Fout,\n                     const
      size_t fstride,\n                     const kiss_fft_state *st,\n                     int
      m,\n                     int N,\n                     int mm\n                    )"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: IMIN
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:220,1
    - Dst: SHR32
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:225,1
    - Dst: SHR32
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:226,1
    - Dst: SHR32
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:227,1
    - Dst: SHR32
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:228,1
    - Dst: SHR32
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:231,1
    - Dst: SHR32
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:232,1
    - Dst: PSHR32
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:237,1
    - Dst: PSHR32
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:238,1
    - Dst: PSHR32
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:239,1
    - Dst: PSHR32
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:240,1
    - Dst: PSHR32
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:241,1
    - Dst: PSHR32
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:242,1
    - Dst: PSHR32
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:243,1
    - Dst: PSHR32
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:244,1
    - Dst: PSHR32
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:248,1
    - Dst: PSHR32
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:249,1
    - Dst: PSHR32
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:250,1
    - Dst: PSHR32
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:251,1
    - Dst: PSHR32
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:252,1
    - Dst: PSHR32
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:253,1
    - Dst: PSHR32
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:256,1
    - Dst: PSHR32
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:257,1
    - Dst: PSHR32
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:258,1
    - Dst: PSHR32
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:259,1
    - Dst: PSHR32
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:262,1
    - Dst: PSHR32
      Src: /src/opus/celt/mips/kiss_fft_mipsr1.h:263,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 49
    argCount: 4
    argNames:
    - x
    - N
    - total
    - step
    argTypes:
    - kiss_fft_cpx*
    - int
    - int*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 218
    functionDepth: 1
    functionLinenumber: 218
    functionLinenumberEnd: 269
    functionName: fft_downshift
    functionSourceFile: /src/opus/celt/mips/kiss_fft_mipsr1.h
    functionUses: 1
    functionsReached:
    - PSHR32
    - IMIN
    - SHR32
    linkageType: ''
    returnType: void
    signature: void fft_downshift(kiss_fft_cpx *x, int N, int *total, int step)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: __builtin_mips_mult
      Src: /src/opus/celt/mips/mdct_mipsr1.h:60,1
    - Dst: __builtin_mips_madd
      Src: /src/opus/celt/mips/mdct_mipsr1.h:61,1
    - Dst: __builtin_mips_extr_w
      Src: /src/opus/celt/mips/mdct_mipsr1.h:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - a
    - b
    - c
    - d
    - shift
    argTypes:
    - int
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 63
    functionName: S_MUL_ADD_PSR
    functionSourceFile: /src/opus/celt/mips/mdct_mipsr1.h
    functionUses: 0
    functionsReached:
    - __builtin_mips_madd
    - __builtin_mips_mult
    - __builtin_mips_extr_w
    linkageType: ''
    returnType: int
    signature: int S_MUL_ADD_PSR(int a, int b, int c, int d, int shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: __builtin_mips_mult
      Src: /src/opus/celt/mips/mdct_mipsr1.h:66,1
    - Dst: __builtin_mips_msub
      Src: /src/opus/celt/mips/mdct_mipsr1.h:67,1
    - Dst: __builtin_mips_extr_w
      Src: /src/opus/celt/mips/mdct_mipsr1.h:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - a
    - b
    - c
    - d
    - shift
    argTypes:
    - int
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 69
    functionName: S_MUL_SUB_PSR
    functionSourceFile: /src/opus/celt/mips/mdct_mipsr1.h
    functionUses: 0
    functionsReached:
    - __builtin_mips_extr_w
    - __builtin_mips_mult
    - __builtin_mips_msub
    linkageType: ''
    returnType: int
    signature: int S_MUL_SUB_PSR(int a, int b, int c, int d, int shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - a
    - b
    - c
    - d
    - shift
    argTypes:
    - int
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 87
    functionName: S_MUL_ADD_PSR
    functionSourceFile: /src/opus/celt/mips/mdct_mipsr1.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int S_MUL_ADD_PSR(int a, int b, int c, int d, int shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 5
    argNames:
    - a
    - b
    - c
    - d
    - shift
    argTypes:
    - int
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 100
    functionName: S_MUL_SUB_PSR
    functionSourceFile: /src/opus/celt/mips/mdct_mipsr1.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int S_MUL_SUB_PSR(int a, int b, int c, int d, int shift)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/celt/mips/mdct_mipsr1.h:115,1
    - Dst: VARDECL
      Src: /src/opus/celt/mips/mdct_mipsr1.h:116,1
    - Dst: ALLOC
      Src: /src/opus/celt/mips/mdct_mipsr1.h:140,1
    - Dst: ALLOC
      Src: /src/opus/celt/mips/mdct_mipsr1.h:141,1
    - Dst: S_MUL_ADD
      Src: /src/opus/celt/mips/mdct_mipsr1.h:155,1
    - Dst: S_MUL_SUB
      Src: /src/opus/celt/mips/mdct_mipsr1.h:156,1
    - Dst: S_MUL_SUB
      Src: /src/opus/celt/mips/mdct_mipsr1.h:175,1
    - Dst: S_MUL_ADD
      Src: /src/opus/celt/mips/mdct_mipsr1.h:176,1
    - Dst: S_MUL_SUB
      Src: /src/opus/celt/mips/mdct_mipsr1.h:199,1
    - Dst: S_MUL_ADD
      Src: /src/opus/celt/mips/mdct_mipsr1.h:200,1
    - Dst: S_MUL2
      Src: /src/opus/celt/mips/mdct_mipsr1.h:207,1
    - Dst: S_MUL2
      Src: /src/opus/celt/mips/mdct_mipsr1.h:208,1
    - Dst: MAX32
      Src: /src/opus/celt/mips/mdct_mipsr1.h:211,1
    - Dst: MAX32
      Src: /src/opus/celt/mips/mdct_mipsr1.h:211,1
    - Dst: ABS32
      Src: /src/opus/celt/mips/mdct_mipsr1.h:211,1
    - Dst: ABS32
      Src: /src/opus/celt/mips/mdct_mipsr1.h:211,1
    - Dst: IMAX
      Src: /src/opus/celt/mips/mdct_mipsr1.h:216,1
    - Dst: IMIN
      Src: /src/opus/celt/mips/mdct_mipsr1.h:216,1
    - Dst: celt_ilog2
      Src: /src/opus/celt/mips/mdct_mipsr1.h:216,1
    - Dst: S_MUL2
      Src: /src/opus/celt/mips/mdct_mipsr1.h:236,1
    - Dst: S_MUL2
      Src: /src/opus/celt/mips/mdct_mipsr1.h:237,1
    - Dst: S_MUL_SUB_PSR
      Src: /src/opus/celt/mips/mdct_mipsr1.h:242,1
    - Dst: S_MUL_ADD_PSR
      Src: /src/opus/celt/mips/mdct_mipsr1.h:243,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 76
    argCount: 8
    argNames:
    - l
    - in
    - OPUS_RESTRICT
    - window
    - overlap
    - shift
    - stride
    - arch
    argTypes:
    - mdct_lookup*
    - kiss_fft_scalar*
    - kiss_fft_scalar*
    - celt_coef*
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 252
    functionName: clt_mdct_forward
    functionSourceFile: /src/opus/celt/mips/mdct_mipsr1.h
    functionUses: 3
    functionsReached:
    - IMIN
    - S_MUL_ADD
    - S_MUL_ADD_PSR
    - S_MUL2
    - celt_ilog2
    - S_MUL_SUB
    - VARDECL
    - ALLOC
    - MAX32
    - ABS32
    - S_MUL_SUB_PSR
    - IMAX
    linkageType: ''
    returnType: void
    signature: "void clt_mdct_forward(const mdct_lookup *l, kiss_fft_scalar *in, kiss_fft_scalar
      * OPUS_RESTRICT out,\n      const celt_coef *window, int overlap, int shift,
      int stride, int arch)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: S_MUL2
      Src: /src/opus/celt/mips/mdct_mipsr1.h:236,1
    - Dst: S_MUL2
      Src: /src/opus/celt/mips/mdct_mipsr1.h:237,1
    - Dst: S_MUL_SUB_PSR
      Src: /src/opus/celt/mips/mdct_mipsr1.h:242,1
    - Dst: S_MUL_ADD_PSR
      Src: /src/opus/celt/mips/mdct_mipsr1.h:243,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 1
    argNames:
    - ARG_FIXED
    argTypes:
    - f2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 221
    functionDepth: 1
    functionLinenumber: 221
    functionLinenumberEnd: 250
    functionName: opus_fft_impl
    functionSourceFile: /src/opus/celt/mips/mdct_mipsr1.h
    functionUses: 1
    functionsReached:
    - S_MUL2
    - S_MUL_SUB_PSR
    - S_MUL_ADD_PSR
    linkageType: ''
    returnType: void
    signature: void opus_fft_impl(st, f2 ARG_FIXED(scale_shift-headroom))
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MAX32
      Src: /src/opus/celt/mips/mdct_mipsr1.h:284,1
    - Dst: ABS32
      Src: /src/opus/celt/mips/mdct_mipsr1.h:284,1
    - Dst: ADD32_ovflw
      Src: /src/opus/celt/mips/mdct_mipsr1.h:285,1
    - Dst: ABS32
      Src: /src/opus/celt/mips/mdct_mipsr1.h:285,1
    - Dst: SHR32
      Src: /src/opus/celt/mips/mdct_mipsr1.h:285,1
    - Dst: IMAX
      Src: /src/opus/celt/mips/mdct_mipsr1.h:287,1
    - Dst: celt_zlog2
      Src: /src/opus/celt/mips/mdct_mipsr1.h:287,1
    - Dst: IMAX
      Src: /src/opus/celt/mips/mdct_mipsr1.h:289,1
    - Dst: celt_ilog2
      Src: /src/opus/celt/mips/mdct_mipsr1.h:289,1
    - Dst: ABS32
      Src: /src/opus/celt/mips/mdct_mipsr1.h:289,1
    - Dst: IMIN
      Src: /src/opus/celt/mips/mdct_mipsr1.h:290,1
    - Dst: SHL32_ovflw
      Src: /src/opus/celt/mips/mdct_mipsr1.h:308,1
    - Dst: SHL32_ovflw
      Src: /src/opus/celt/mips/mdct_mipsr1.h:309,1
    - Dst: S_MUL_ADD
      Src: /src/opus/celt/mips/mdct_mipsr1.h:310,1
    - Dst: S_MUL_SUB
      Src: /src/opus/celt/mips/mdct_mipsr1.h:311,1
    - Dst: opus_fft_impl
      Src: /src/opus/celt/mips/mdct_mipsr1.h:321,1
    - Dst: ARG_FIXED
      Src: /src/opus/celt/mips/mdct_mipsr1.h:321,1
    - Dst: S_MUL_ADD_PSR
      Src: /src/opus/celt/mips/mdct_mipsr1.h:341,1
    - Dst: S_MUL_SUB_PSR
      Src: /src/opus/celt/mips/mdct_mipsr1.h:342,1
    - Dst: S_MUL_ADD_PSR
      Src: /src/opus/celt/mips/mdct_mipsr1.h:352,1
    - Dst: S_MUL_SUB_PSR
      Src: /src/opus/celt/mips/mdct_mipsr1.h:353,1
    - Dst: S_MUL_SUB
      Src: /src/opus/celt/mips/mdct_mipsr1.h:373,1
    - Dst: S_MUL_ADD
      Src: /src/opus/celt/mips/mdct_mipsr1.h:374,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 65
    argCount: 8
    argNames:
    - l
    - in
    - OPUS_RESTRICT
    - OPUS_RESTRICT
    - overlap
    - shift
    - stride
    - arch
    argTypes:
    - mdct_lookup*
    - kiss_fft_scalar*
    - kiss_fft_scalar*
    - celt_coef*
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 258
    functionDepth: 1
    functionLinenumber: 258
    functionLinenumberEnd: 379
    functionName: clt_mdct_backward
    functionSourceFile: /src/opus/celt/mips/mdct_mipsr1.h
    functionUses: 2
    functionsReached:
    - IMIN
    - S_MUL_ADD
    - S_MUL_ADD_PSR
    - celt_ilog2
    - S_MUL_SUB
    - celt_zlog2
    - ADD32_ovflw
    - S_MUL_SUB_PSR
    - ARG_FIXED
    - MAX32
    - SHR32
    - ABS32
    - opus_fft_impl
    - IMAX
    - SHL32_ovflw
    linkageType: ''
    returnType: void
    signature: "void clt_mdct_backward(const mdct_lookup *l, kiss_fft_scalar *in,
      kiss_fft_scalar * OPUS_RESTRICT out,\n      const celt_coef * OPUS_RESTRICT
      window, int overlap, int shift, int stride, int arch)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fopen
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:54,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:55,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:56,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:60,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:62,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:63,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - modes
    - nb_modes
    argTypes:
    - CELTMode**
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 64
    functionName: dump_modes_arch_init
    functionSourceFile: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c
    functionUses: 0
    functionsReached:
    - fopen
    - fprintf
    linkageType: ''
    returnType: void
    signature: void dump_modes_arch_init(CELTMode **modes, int nb_modes)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fclose
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 69
    functionName: dump_modes_arch_finalize
    functionSourceFile: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c
    functionUses: 0
    functionsReached:
    - fclose
    linkageType: ''
    returnType: void
    signature: void dump_modes_arch_finalize()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:78,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:79,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:86,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:89,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:91,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:100,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:105,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:108,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:112,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:119,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:121,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:122,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:123,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:124,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:127,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:129,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:130,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:131,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:133,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:134,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:137,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:138,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:139,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:140,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:142,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:144,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:146,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:147,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:149,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c:151,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 52
    argCount: 1
    argNames:
    - mode
    argTypes:
    - CELTMode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 152
    functionName: dump_mode_arch
    functionSourceFile: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void dump_mode_arch(CELTMode *mode)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - x
    - ','
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 53
    functionName: COEF16
    functionSourceFile: /src/opus/celt/dump_modes/dump_modes.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: COEF16(x, a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionName: opus_select_arch
    functionSourceFile: /src/opus/celt/dump_modes/dump_modes.c
    functionUses: 19
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int opus_select_arch(void)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:61,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:62,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:66,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:68,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:69,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:70,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:71,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:72,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:73,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:74,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:76,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:90,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:91,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:92,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:94,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:95,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:96,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:97,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:100,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:101,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:102,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:104,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:106,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:107,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:109,1
    - Dst: COEF16
      Src: /src/opus/celt/dump_modes/dump_modes.c:109,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:110,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:113,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:115,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:116,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:117,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:121,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:122,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:123,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:127,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:128,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:130,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:131,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:132,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:135,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:136,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:137,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:139,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:140,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:141,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:142,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:145,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:146,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:147,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:149,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:150,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:151,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:153,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:154,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:155,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:157,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:158,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:160,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:161,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:165,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:166,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:167,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:168,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:170,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:171,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:172,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:174,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:175,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:176,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:178,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:179,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:180,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:181,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:182,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:186,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:187,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:189,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:192,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:194,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:195,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:197,1
    - Dst: COEF16
      Src: /src/opus/celt/dump_modes/dump_modes.c:197,1
    - Dst: COEF16
      Src: /src/opus/celt/dump_modes/dump_modes.c:197,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:198,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:201,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:203,1
    - Dst: dump_mode_arch
      Src: /src/opus/celt/dump_modes/dump_modes.c:206,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:211,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:212,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:213,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:216,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:217,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:219,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:220,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:226,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:227,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:228,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:230,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:233,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:234,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:235,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:236,1
    - Dst: COEF16
      Src: /src/opus/celt/dump_modes/dump_modes.c:236,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:237,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:239,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:242,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:244,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:245,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:247,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:248,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:249,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:250,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:252,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:253,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:254,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:255,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:256,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:258,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:260,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:261,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:264,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:265,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:269,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:270,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:271,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:275,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:277,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:278,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:280,1
    - Dst: COEF16
      Src: /src/opus/celt/dump_modes/dump_modes.c:280,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:281,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:284,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:287,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:289,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:290,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:294,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:295,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:296,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:297,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:298,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:299,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:301,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:302,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:304,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:306,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:308,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:309,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:310,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:312,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:314,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:316,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:318,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:319,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:320,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:322,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:323,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:325,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:328,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:330,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:333,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:335,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:336,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:338,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:339,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:340,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:341,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:347,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:349,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 214
    argCount: 3
    argNames:
    - file
    - modes
    - nb_modes
    argTypes:
    - FILE*
    - CELTMode**
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 350
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 350
    functionName: dump_modes
    functionSourceFile: /src/opus/celt/dump_modes/dump_modes.c
    functionUses: 0
    functionsReached:
    - COEF16
    - dump_mode_arch
    - fprintf
    linkageType: ''
    returnType: void
    signature: void dump_modes(FILE *file, CELTMode **modes, int nb_modes)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:358,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:373,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:375,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:379,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:383,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 23
    argCount: 3
    argNames:
    - file
    - modes
    - nb_modes
    argTypes:
    - FILE*
    - CELTMode**
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 352
    functionDepth: 0
    functionLinenumber: 352
    functionLinenumberEnd: 385
    functionName: dump_header
    functionSourceFile: /src/opus/celt/dump_modes/dump_modes.c
    functionUses: 0
    functionsReached:
    - fprintf
    linkageType: ''
    returnType: void
    signature: void dump_header(FILE *file, CELTMode **modes, int nb_modes)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:400,1
    - Dst: malloc
      Src: /src/opus/celt/dump_modes/dump_modes.c:404,1
    - Dst: atoi
      Src: /src/opus/celt/dump_modes/dump_modes.c:408,1
    - Dst: atoi
      Src: /src/opus/celt/dump_modes/dump_modes.c:409,1
    - Dst: opus_custom_mode_create
      Src: /src/opus/celt/dump_modes/dump_modes.c:410,1
    - Dst: fprintf
      Src: /src/opus/celt/dump_modes/dump_modes.c:413,1
    - Dst: fopen
      Src: /src/opus/celt/dump_modes/dump_modes.c:418,1
    - Dst: dump_modes_arch_init
      Src: /src/opus/celt/dump_modes/dump_modes.c:420,1
    - Dst: dump_modes
      Src: /src/opus/celt/dump_modes/dump_modes.c:422,1
    - Dst: fclose
      Src: /src/opus/celt/dump_modes/dump_modes.c:423,1
    - Dst: dump_modes_arch_finalize
      Src: /src/opus/celt/dump_modes/dump_modes.c:425,1
    - Dst: opus_custom_mode_destroy
      Src: /src/opus/celt/dump_modes/dump_modes.c:428,1
    - Dst: free
      Src: /src/opus/celt/dump_modes/dump_modes.c:429,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 431
      start: 393
    functionDepth: 4
    functionLinenumber: 393
    functionLinenumberEnd: 431
    functionName: main
    functionSourceFile: /src/opus/celt/dump_modes/dump_modes.c
    functionUses: 0
    functionsReached:
    - dump_modes_arch_finalize
    - atoi
    - malloc
    - fclose
    - dump_modes
    - opus_custom_mode_destroy
    - fprintf
    - opus_custom_mode_create
    - fopen
    - dump_modes_arch_init
    - free
    linkageType: ''
    returnType: int
    signature: int main(int argc, char **argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vcvtaq_s32_f32
      Src: /src/opus/celt/arm/mathops_arm.h:41,1
    - Dst: vandq_u32
      Src: /src/opus/celt/arm/mathops_arm.h:43,1
    - Dst: vreinterpretq_u32_f32
      Src: /src/opus/celt/arm/mathops_arm.h:43,1
    - Dst: vdupq_n_u32
      Src: /src/opus/celt/arm/mathops_arm.h:43,1
    - Dst: vdupq_n_u32
      Src: /src/opus/celt/arm/mathops_arm.h:44,1
    - Dst: vcvtq_s32_f32
      Src: /src/opus/celt/arm/mathops_arm.h:45,1
    - Dst: vaddq_f32
      Src: /src/opus/celt/arm/mathops_arm.h:45,1
    - Dst: vreinterpretq_f32_u32
      Src: /src/opus/celt/arm/mathops_arm.h:45,1
    - Dst: vorrq_u32
      Src: /src/opus/celt/arm/mathops_arm.h:45,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - float32x4_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 47
    functionName: vroundf
    functionSourceFile: /src/opus/celt/arm/mathops_arm.h
    functionUses: 0
    functionsReached:
    - vcvtq_s32_f32
    - vandq_u32
    - vcvtaq_s32_f32
    - vaddq_f32
    - vdupq_n_u32
    - vorrq_u32
    - vreinterpretq_f32_u32
    - vreinterpretq_u32_f32
    linkageType: ''
    returnType: int32x4_t
    signature: int32x4_t vroundf(float32x4_t x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vminvq_f32
      Src: /src/opus/celt/arm/mathops_arm.h:52,1
    - Dst: vmin_f32
      Src: /src/opus/celt/arm/mathops_arm.h:54,1
    - Dst: vget_low_f32
      Src: /src/opus/celt/arm/mathops_arm.h:54,1
    - Dst: vget_high_f32
      Src: /src/opus/celt/arm/mathops_arm.h:54,1
    - Dst: vget_lane_f32
      Src: /src/opus/celt/arm/mathops_arm.h:55,1
    - Dst: vget_lane_f32
      Src: /src/opus/celt/arm/mathops_arm.h:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - a
    argTypes:
    - float32x4_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 59
    functionName: vminvf
    functionSourceFile: /src/opus/celt/arm/mathops_arm.h
    functionUses: 0
    functionsReached:
    - vget_high_f32
    - vminvq_f32
    - vmin_f32
    - vget_lane_f32
    - vget_low_f32
    linkageType: ''
    returnType: float
    signature: float vminvf(float32x4_t a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vmaxvq_f32
      Src: /src/opus/celt/arm/mathops_arm.h:64,1
    - Dst: vmax_f32
      Src: /src/opus/celt/arm/mathops_arm.h:66,1
    - Dst: vget_low_f32
      Src: /src/opus/celt/arm/mathops_arm.h:66,1
    - Dst: vget_high_f32
      Src: /src/opus/celt/arm/mathops_arm.h:66,1
    - Dst: vget_lane_f32
      Src: /src/opus/celt/arm/mathops_arm.h:67,1
    - Dst: vget_lane_f32
      Src: /src/opus/celt/arm/mathops_arm.h:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - a
    argTypes:
    - float32x4_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 71
    functionName: vmaxvf
    functionSourceFile: /src/opus/celt/arm/mathops_arm.h
    functionUses: 0
    functionsReached:
    - vget_high_f32
    - vmax_f32
    - vget_lane_f32
    - vmaxvq_f32
    - vget_low_f32
    linkageType: ''
    returnType: float
    signature: float vmaxvf(float32x4_t a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - in
    - ','
    - out
    - ','
    - cnt
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 82
    functionName: celt_float2int16
    functionSourceFile: /src/opus/celt/arm/mathops_arm.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_float2int16(in, out, cnt, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - in
    - ','
    - out
    - ','
    - cnt
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 86
    functionName: celt_float2int16
    functionSourceFile: /src/opus/celt/arm/mathops_arm.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_float2int16(in, out, cnt, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - samples
    - ','
    - cnt
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionName: opus_limit2_checkwithin1
    functionSourceFile: /src/opus/celt/arm/mathops_arm.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: opus_limit2_checkwithin1(samples, cnt, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - samples
    - ','
    - cnt
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 100
    functionName: opus_limit2_checkwithin1
    functionSourceFile: /src/opus/celt/arm/mathops_arm.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: opus_limit2_checkwithin1(samples, cnt, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SHL32
      Src: /src/opus/celt/arm/fixed_armv4.h:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_val16
    - opus_val32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 43
    functionName: MULT16_32_Q16_armv4
    functionSourceFile: /src/opus/celt/arm/fixed_armv4.h
    functionUses: 0
    functionsReached:
    - SHL32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE MULT16_32_Q16_armv4(opus_val16 a, opus_val32 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 45
    functionName: MULT16_32_Q16
    functionSourceFile: /src/opus/celt/arm/fixed_armv4.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_32_Q16(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SHL32
      Src: /src/opus/celt/arm/fixed_armv4.h:57,1
    - Dst: SHL32
      Src: /src/opus/celt/arm/fixed_armv4.h:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_val16
    - opus_val32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 61
    functionName: MULT16_32_Q15_armv4
    functionSourceFile: /src/opus/celt/arm/fixed_armv4.h
    functionUses: 0
    functionsReached:
    - SHL32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE MULT16_32_Q15_armv4(opus_val16 a, opus_val32 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 63
    functionName: MULT16_32_Q15
    functionSourceFile: /src/opus/celt/arm/fixed_armv4.h
    functionUses: 25
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_32_Q15(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - c
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 70
    functionName: MAC16_32_Q15
    functionSourceFile: /src/opus/celt/arm/fixed_armv4.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAC16_32_Q15(c, a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - c
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 75
    functionName: MAC16_32_Q16
    functionSourceFile: /src/opus/celt/arm/fixed_armv4.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAC16_32_Q16(c, a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 79
    functionName: MULT32_32_Q31
    functionSourceFile: /src/opus/celt/arm/fixed_armv4.h
    functionUses: 26
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT32_32_Q31(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_val16
    - opus_val32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 47
    functionName: MULT16_32_Q16_armv5e
    functionSourceFile: /src/opus/celt/arm/fixed_armv5e.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE MULT16_32_Q16_armv5e(opus_val16 a, opus_val32 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 49
    functionName: MULT16_32_Q16
    functionSourceFile: /src/opus/celt/arm/fixed_armv5e.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_32_Q16(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SHL32
      Src: /src/opus/celt/arm/fixed_armv5e.h:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_val16
    - opus_val32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 63
    functionName: MULT16_32_Q15_armv5e
    functionSourceFile: /src/opus/celt/arm/fixed_armv5e.h
    functionUses: 0
    functionsReached:
    - SHL32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE MULT16_32_Q15_armv5e(opus_val16 a, opus_val32 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 65
    functionName: MULT16_32_Q15
    functionSourceFile: /src/opus/celt/arm/fixed_armv5e.h
    functionUses: 25
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_32_Q15(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SHL32
      Src: /src/opus/celt/arm/fixed_armv5e.h:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - c
    - a
    - b
    argTypes:
    - opus_val32
    - opus_val16
    - opus_val32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 82
    functionName: MAC16_32_Q15_armv5e
    functionSourceFile: /src/opus/celt/arm/fixed_armv5e.h
    functionUses: 0
    functionsReached:
    - SHL32
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE MAC16_32_Q15_armv5e(opus_val32 c, opus_val16 a,\n opus_val32
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - c
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 84
    functionName: MAC16_32_Q15
    functionSourceFile: /src/opus/celt/arm/fixed_armv5e.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAC16_32_Q15(c, a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - c
    - a
    - b
    argTypes:
    - opus_val32
    - opus_val16
    - opus_val32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 99
    functionName: MAC16_32_Q16_armv5e
    functionSourceFile: /src/opus/celt/arm/fixed_armv5e.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE MAC16_32_Q16_armv5e(opus_val32 c, opus_val16 a,\n opus_val32
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - c
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 101
    functionName: MAC16_32_Q16
    functionSourceFile: /src/opus/celt/arm/fixed_armv5e.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAC16_32_Q16(c, a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - c
    - a
    - b
    argTypes:
    - opus_val32
    - opus_val16
    - opus_val16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 115
    functionName: MAC16_16_armv5e
    functionSourceFile: /src/opus/celt/arm/fixed_armv5e.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: "OPUS_INLINE MAC16_16_armv5e(opus_val32 c, opus_val16 a,\n opus_val16
      b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - c
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 117
    functionName: MAC16_16
    functionSourceFile: /src/opus/celt/arm/fixed_armv5e.h
    functionUses: 19
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAC16_16(c, a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - opus_val16
    - opus_val16
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 130
    functionName: MULT16_16_armv5e
    functionSourceFile: /src/opus/celt/arm/fixed_armv5e.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE MULT16_16_armv5e(opus_val16 a, opus_val16 b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 132
    functionName: MULT16_16
    functionSourceFile: /src/opus/celt/arm/fixed_armv5e.h
    functionUses: 24
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MULT16_16(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXTRACT16
      Src: /src/opus/celt/arm/fixed_armv5e.h:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - opus_val32
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 146
    functionName: SIG2WORD16_armv6
    functionSourceFile: /src/opus/celt/arm/fixed_armv5e.h
    functionUses: 0
    functionsReached:
    - EXTRACT16
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE SIG2WORD16_armv6(opus_val32 x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 148
    functionName: SIG2WORD16
    functionSourceFile: /src/opus/celt/arm/fixed_armv5e.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SIG2WORD16(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 33
    functionName: MAY_HAVE_EDSP
    functionSourceFile: /src/opus/celt/arm/armcpu.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAY_HAVE_EDSP(name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 35
    functionName: MAY_HAVE_EDSP
    functionSourceFile: /src/opus/celt/arm/armcpu.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAY_HAVE_EDSP(name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 39
    functionName: MAY_HAVE_MEDIA
    functionSourceFile: /src/opus/celt/arm/armcpu.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAY_HAVE_MEDIA(name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 41
    functionName: MAY_HAVE_MEDIA
    functionSourceFile: /src/opus/celt/arm/armcpu.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAY_HAVE_MEDIA(name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 45
    functionName: MAY_HAVE_NEON
    functionSourceFile: /src/opus/celt/arm/armcpu.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAY_HAVE_NEON(name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 47
    functionName: MAY_HAVE_NEON
    functionSourceFile: /src/opus/celt/arm/armcpu.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAY_HAVE_NEON(name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 51
    functionName: MAY_HAVE_DOTPROD
    functionSourceFile: /src/opus/celt/arm/armcpu.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAY_HAVE_DOTPROD(name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 53
    functionName: MAY_HAVE_DOTPROD
    functionSourceFile: /src/opus/celt/arm/armcpu.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAY_HAVE_DOTPROD(name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 57
    functionName: PRESUME_EDSP
    functionSourceFile: /src/opus/celt/arm/armcpu.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PRESUME_EDSP(name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 59
    functionName: PRESUME_EDSP
    functionSourceFile: /src/opus/celt/arm/armcpu.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PRESUME_EDSP(name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 63
    functionName: PRESUME_MEDIA
    functionSourceFile: /src/opus/celt/arm/armcpu.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PRESUME_MEDIA(name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 65
    functionName: PRESUME_MEDIA
    functionSourceFile: /src/opus/celt/arm/armcpu.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PRESUME_MEDIA(name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 69
    functionName: PRESUME_NEON
    functionSourceFile: /src/opus/celt/arm/armcpu.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PRESUME_NEON(name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 71
    functionName: PRESUME_NEON
    functionSourceFile: /src/opus/celt/arm/armcpu.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PRESUME_NEON(name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 75
    functionName: PRESUME_DOTPROD
    functionSourceFile: /src/opus/celt/arm/armcpu.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PRESUME_DOTPROD(name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 77
    functionName: PRESUME_DOTPROD
    functionSourceFile: /src/opus/celt/arm/armcpu.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: PRESUME_DOTPROD(name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: vdupq_n_s32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:42,1
    - Dst: vld1q_s16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:47,1
    - Dst: vld1q_s16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:48,1
    - Dst: vmlal_s16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:49,1
    - Dst: vget_low_s16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:49,1
    - Dst: vget_low_s16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:49,1
    - Dst: vmlal_s16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:50,1
    - Dst: vget_high_s16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:50,1
    - Dst: vget_high_s16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:50,1
    - Dst: vld1_s16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:54,1
    - Dst: vld1_s16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:55,1
    - Dst: vmlal_s16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:56,1
    - Dst: vpaddlq_s32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:60,1
    - Dst: vadd_s64
      Src: /src/opus/celt/arm/pitch_neon_intr.c:61,1
    - Dst: vget_low_s64
      Src: /src/opus/celt/arm/pitch_neon_intr.c:61,1
    - Dst: vget_high_s64
      Src: /src/opus/celt/arm/pitch_neon_intr.c:61,1
    - Dst: vget_lane_s32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:62,1
    - Dst: vreinterpret_s32_s64
      Src: /src/opus/celt/arm/pitch_neon_intr.c:62,1
    - Dst: MAC16_16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:65,1
    - Dst: celt_assert
      Src: /src/opus/celt/arm/pitch_neon_intr.c:69,1
    - Dst: celt_inner_prod_c
      Src: /src/opus/celt/arm/pitch_neon_intr.c:69,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 3
    argNames:
    - x
    - y
    - N
    argTypes:
    - opus_val16*
    - opus_val16*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 73
    functionName: celt_inner_prod_neon
    functionSourceFile: /src/opus/celt/arm/pitch_neon_intr.c
    functionUses: 0
    functionsReached:
    - vld1_s16
    - celt_assert
    - MAC16_16
    - vget_lane_s32
    - vld1q_s16
    - vreinterpret_s32_s64
    - vmlal_s16
    - vget_low_s16
    - celt_inner_prod_c
    - vget_low_s64
    - vget_high_s16
    - vpaddlq_s32
    - vget_high_s64
    - vdupq_n_s32
    - vadd_s64
    linkageType: ''
    returnType: opus_val32
    signature: opus_val32 celt_inner_prod_neon(const opus_val16 *x, const opus_val16
      *y, int N)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: vdupq_n_s32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:81,1
    - Dst: vdupq_n_s32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:82,1
    - Dst: vld1q_s16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:87,1
    - Dst: vld1q_s16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:88,1
    - Dst: vld1q_s16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:89,1
    - Dst: vmlal_s16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:90,1
    - Dst: vget_low_s16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:90,1
    - Dst: vget_low_s16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:90,1
    - Dst: vmlal_s16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:91,1
    - Dst: vget_low_s16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:91,1
    - Dst: vget_low_s16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:91,1
    - Dst: vmlal_s16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:92,1
    - Dst: vget_high_s16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:92,1
    - Dst: vget_high_s16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:92,1
    - Dst: vmlal_s16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:93,1
    - Dst: vget_high_s16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:93,1
    - Dst: vget_high_s16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:93,1
    - Dst: vld1_s16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:97,1
    - Dst: vld1_s16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:98,1
    - Dst: vld1_s16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:99,1
    - Dst: vmlal_s16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:100,1
    - Dst: vmlal_s16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:101,1
    - Dst: vpaddlq_s32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:105,1
    - Dst: vpaddlq_s32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:106,1
    - Dst: vadd_s64
      Src: /src/opus/celt/arm/pitch_neon_intr.c:107,1
    - Dst: vget_low_s64
      Src: /src/opus/celt/arm/pitch_neon_intr.c:107,1
    - Dst: vget_high_s64
      Src: /src/opus/celt/arm/pitch_neon_intr.c:107,1
    - Dst: vadd_s64
      Src: /src/opus/celt/arm/pitch_neon_intr.c:108,1
    - Dst: vget_low_s64
      Src: /src/opus/celt/arm/pitch_neon_intr.c:108,1
    - Dst: vget_high_s64
      Src: /src/opus/celt/arm/pitch_neon_intr.c:108,1
    - Dst: vget_lane_s32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:109,1
    - Dst: vreinterpret_s32_s64
      Src: /src/opus/celt/arm/pitch_neon_intr.c:109,1
    - Dst: vget_lane_s32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:110,1
    - Dst: vreinterpret_s32_s64
      Src: /src/opus/celt/arm/pitch_neon_intr.c:110,1
    - Dst: MAC16_16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:113,1
    - Dst: MAC16_16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:114,1
    - Dst: dual_inner_prod_c
      Src: /src/opus/celt/arm/pitch_neon_intr.c:122,1
    - Dst: celt_assert
      Src: /src/opus/celt/arm/pitch_neon_intr.c:123,1
    - Dst: celt_assert
      Src: /src/opus/celt/arm/pitch_neon_intr.c:124,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 31
    argCount: 6
    argNames:
    - x
    - y01
    - y02
    - N
    - xy1
    - xy2
    argTypes:
    - opus_val16*
    - opus_val16*
    - opus_val16*
    - int
    - opus_val32*
    - opus_val32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 127
    functionName: dual_inner_prod_neon
    functionSourceFile: /src/opus/celt/arm/pitch_neon_intr.c
    functionUses: 0
    functionsReached:
    - vld1_s16
    - celt_assert
    - MAC16_16
    - vget_lane_s32
    - vld1q_s16
    - vreinterpret_s32_s64
    - vmlal_s16
    - dual_inner_prod_c
    - vget_low_s16
    - vget_low_s64
    - vget_high_s16
    - vpaddlq_s32
    - vget_high_s64
    - vdupq_n_s32
    - vadd_s64
    linkageType: ''
    returnType: void
    signature: "void dual_inner_prod_neon(const opus_val16 *x, const opus_val16 *y01,
      const opus_val16 *y02,\n        int N, opus_val32 *xy1, opus_val32 *xy2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 137
    functionName: vmlaq_f32
    functionSourceFile: /src/opus/celt/arm/pitch_neon_intr.c
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: vmlaq_f32(a,b,c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MAC16_16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:153,1
    - Dst: MAC16_16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:154,1
    - Dst: MAC16_16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:155,1
    - Dst: MAC16_16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:156,1
    - Dst: ABS32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:157,1
    - Dst: ABS32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:157,1
    - Dst: ABS32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:157,1
    - Dst: ABS32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:157,1
    - Dst: ABS32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:162,1
    - Dst: ABS32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:162,1
    - Dst: ABS32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:162,1
    - Dst: MAC16_16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:164,1
    - Dst: ABS32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:165,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 4
    argNames:
    - x
    - y
    - err
    - N
    argTypes:
    - opus_val16*
    - opus_val16*
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 147
    functionDepth: 1
    functionLinenumber: 147
    functionLinenumberEnd: 169
    functionName: celt_inner_prod_neon_float_c_simulation
    functionSourceFile: /src/opus/celt/arm/pitch_neon_intr.c
    functionUses: 0
    functionsReached:
    - ABS32
    - MAC16_16
    linkageType: ''
    returnType: opus_val32
    signature: opus_val32 celt_inner_prod_neon_float_c_simulation(const opus_val16
      *x, const opus_val16 *y, float *err, int N)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_inner_prod_neon_float_c_simulation
      Src: /src/opus/celt/arm/pitch_neon_intr.c:177,1
    - Dst: celt_inner_prod_neon_float_c_simulation
      Src: /src/opus/celt/arm/pitch_neon_intr.c:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 7
    argNames:
    - x
    - y01
    - y02
    - N
    - xy1
    - xy2
    - err
    argTypes:
    - opus_val16*
    - opus_val16*
    - opus_val16*
    - int
    - opus_val32*
    - opus_val32*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 174
    functionDepth: 2
    functionLinenumber: 174
    functionLinenumberEnd: 179
    functionName: dual_inner_prod_neon_float_c_simulation
    functionSourceFile: /src/opus/celt/arm/pitch_neon_intr.c
    functionUses: 0
    functionsReached:
    - celt_inner_prod_neon_float_c_simulation
    linkageType: ''
    returnType: void
    signature: "void dual_inner_prod_neon_float_c_simulation(const opus_val16 *x,
      const opus_val16 *y01, const opus_val16 *y02,\n      int N, opus_val32 *xy1,
      opus_val32 *xy2, float *err)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: vdupq_n_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:189,1
    - Dst: vld1q_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:194,1
    - Dst: vld1q_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:195,1
    - Dst: vmlaq_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:196,1
    - Dst: vld1q_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:197,1
    - Dst: vld1q_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:198,1
    - Dst: vmlaq_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:199,1
    - Dst: vld1q_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:203,1
    - Dst: vld1q_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:204,1
    - Dst: vmlaq_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:205,1
    - Dst: vadd_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:209,1
    - Dst: vget_low_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:209,1
    - Dst: vget_high_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:209,1
    - Dst: vpadd_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:210,1
    - Dst: vget_lane_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:211,1
    - Dst: MAC16_16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:214,1
    - Dst: celt_inner_prod_neon_float_c_simulation
      Src: /src/opus/celt/arm/pitch_neon_intr.c:220,1
    - Dst: celt_assert
      Src: /src/opus/celt/arm/pitch_neon_intr.c:222,1
    - Dst: ABS32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:222,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 3
    argNames:
    - x
    - y
    - N
    argTypes:
    - opus_val16*
    - opus_val16*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 185
    functionDepth: 2
    functionLinenumber: 185
    functionLinenumberEnd: 227
    functionName: celt_inner_prod_neon
    functionSourceFile: /src/opus/celt/arm/pitch_neon_intr.c
    functionUses: 0
    functionsReached:
    - vget_high_f32
    - celt_assert
    - vmlaq_f32
    - MAC16_16
    - celt_inner_prod_neon_float_c_simulation
    - vpadd_f32
    - vadd_f32
    - vld1q_f32
    - vget_lane_f32
    - vdupq_n_f32
    - ABS32
    - vget_low_f32
    linkageType: ''
    returnType: opus_val32
    signature: opus_val32 celt_inner_prod_neon(const opus_val16 *x, const opus_val16
      *y, int N)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: vdupq_n_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:234,1
    - Dst: vdupq_n_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:235,1
    - Dst: vld1q_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:240,1
    - Dst: vld1q_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:241,1
    - Dst: vld1q_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:242,1
    - Dst: vmlaq_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:243,1
    - Dst: vmlaq_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:244,1
    - Dst: vld1q_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:245,1
    - Dst: vld1q_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:246,1
    - Dst: vld1q_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:247,1
    - Dst: vmlaq_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:248,1
    - Dst: vmlaq_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:249,1
    - Dst: vld1q_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:253,1
    - Dst: vld1q_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:254,1
    - Dst: vld1q_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:255,1
    - Dst: vmlaq_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:256,1
    - Dst: vmlaq_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:257,1
    - Dst: vadd_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:261,1
    - Dst: vget_low_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:261,1
    - Dst: vget_high_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:261,1
    - Dst: vadd_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:262,1
    - Dst: vget_low_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:262,1
    - Dst: vget_high_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:262,1
    - Dst: vpadd_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:263,1
    - Dst: vpadd_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:264,1
    - Dst: vget_lane_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:265,1
    - Dst: vget_lane_f32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:266,1
    - Dst: MAC16_16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:269,1
    - Dst: MAC16_16
      Src: /src/opus/celt/arm/pitch_neon_intr.c:270,1
    - Dst: dual_inner_prod_neon_float_c_simulation
      Src: /src/opus/celt/arm/pitch_neon_intr.c:279,1
    - Dst: celt_assert
      Src: /src/opus/celt/arm/pitch_neon_intr.c:282,1
    - Dst: ABS32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:282,1
    - Dst: celt_assert
      Src: /src/opus/celt/arm/pitch_neon_intr.c:283,1
    - Dst: ABS32
      Src: /src/opus/celt/arm/pitch_neon_intr.c:283,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 34
    argCount: 6
    argNames:
    - x
    - y01
    - y02
    - N
    - xy1
    - xy2
    argTypes:
    - opus_val16*
    - opus_val16*
    - opus_val16*
    - int
    - opus_val32*
    - opus_val32*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 229
    functionDepth: 3
    functionLinenumber: 229
    functionLinenumberEnd: 286
    functionName: dual_inner_prod_neon
    functionSourceFile: /src/opus/celt/arm/pitch_neon_intr.c
    functionUses: 0
    functionsReached:
    - vget_high_f32
    - celt_assert
    - vmlaq_f32
    - MAC16_16
    - vpadd_f32
    - dual_inner_prod_neon_float_c_simulation
    - vadd_f32
    - vld1q_f32
    - vget_lane_f32
    - vdupq_n_f32
    - ABS32
    - vget_low_f32
    linkageType: ''
    returnType: void
    signature: "void dual_inner_prod_neon(const opus_val16 *x, const opus_val16 *y01,
      const opus_val16 *y02,\n        int N, opus_val32 *xy1, opus_val32 *xy2)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:52,1
    - Dst: VARDECL
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:53,1
    - Dst: ALLOC
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:69,1
    - Dst: ALLOC
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:70,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:84,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:84,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:85,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:85,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:104,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:104,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:105,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:105,1
    - Dst: S_MUL
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:125,1
    - Dst: S_MUL
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:125,1
    - Dst: S_MUL
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:126,1
    - Dst: S_MUL
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:126,1
    - Dst: opus_fft
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:133,1
    - Dst: S_MUL
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:146,1
    - Dst: S_MUL
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:146,1
    - Dst: S_MUL
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:147,1
    - Dst: S_MUL
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:147,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 67
    argCount: 8
    argNames:
    - l
    - in
    - OPUS_RESTRICT
    - window
    - overlap
    - shift
    - stride
    - arch
    argTypes:
    - mdct_lookup*
    - kiss_fft_scalar*
    - kiss_fft_scalar*
    - opus_val16*
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 156
    functionName: clt_mdct_forward_neon
    functionSourceFile: /src/opus/celt/arm/celt_mdct_ne10.c
    functionUses: 0
    functionsReached:
    - MULT16_32_Q15
    - VARDECL
    - ALLOC
    - opus_fft
    - S_MUL
    linkageType: ''
    returnType: void
    signature: "void clt_mdct_forward_neon(const mdct_lookup *l,\n                           kiss_fft_scalar
      *in,\n                           kiss_fft_scalar * OPUS_RESTRICT out,\n                           const
      opus_val16 *window,\n                           int overlap, int shift, int
      stride, int arch)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:166,1
    - Dst: ALLOC
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:180,1
    - Dst: S_MUL
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:192,1
    - Dst: S_MUL
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:192,1
    - Dst: S_MUL
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:193,1
    - Dst: S_MUL
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:193,1
    - Dst: opus_ifft
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:201,1
    - Dst: S_MUL
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:220,1
    - Dst: S_MUL
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:220,1
    - Dst: S_MUL
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:221,1
    - Dst: S_MUL
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:221,1
    - Dst: S_MUL
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:230,1
    - Dst: S_MUL
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:230,1
    - Dst: S_MUL
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:231,1
    - Dst: S_MUL
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:231,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:251,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:251,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:252,1
    - Dst: MULT16_32_Q15
      Src: /src/opus/celt/arm/celt_mdct_ne10.c:252,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 55
    argCount: 8
    argNames:
    - l
    - in
    - OPUS_RESTRICT
    - OPUS_RESTRICT
    - overlap
    - shift
    - stride
    - arch
    argTypes:
    - mdct_lookup*
    - kiss_fft_scalar*
    - kiss_fft_scalar*
    - opus_val16*
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 258
    functionName: clt_mdct_backward_neon
    functionSourceFile: /src/opus/celt/arm/celt_mdct_ne10.c
    functionUses: 0
    functionsReached:
    - opus_ifft
    - MULT16_32_Q15
    - VARDECL
    - ALLOC
    - S_MUL
    linkageType: ''
    returnType: void
    signature: "void clt_mdct_backward_neon(const mdct_lookup *l,\n                            kiss_fft_scalar
      *in,\n                            kiss_fft_scalar * OPUS_RESTRICT out,\n                            const
      opus_val16 * OPUS_RESTRICT window,\n                            int overlap,
      int shift, int stride, int arch)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - m
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 65
    functionName: C_MUL
    functionSourceFile: /src/opus/celt/arm/kiss_fft_armv5e.h
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: C_MUL(m,a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - m
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 90
    functionName: C_MUL4
    functionSourceFile: /src/opus/celt/arm/kiss_fft_armv5e.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: C_MUL4(m,a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - m
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 115
    functionName: C_MULC
    functionSourceFile: /src/opus/celt/arm/kiss_fft_armv5e.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: C_MULC(m,a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - nfft
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 53
    functionName: NE10_FFT_ALLOC_C2C_TYPE_NEON
    functionSourceFile: /src/opus/celt/arm/celt_fft_ne10.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NE10_FFT_ALLOC_C2C_TYPE_NEON(nfft)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: opus_alloc
      Src: /src/opus/celt/arm/celt_fft_ne10.c:74,1
    - Dst: NE10_FFT_ALLOC_C2C_TYPE_NEON
      Src: /src/opus/celt/arm/celt_fft_ne10.c:89,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 1
    argNames:
    - st
    argTypes:
    - kiss_fft_state*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 95
    functionName: opus_fft_alloc_arm_neon
    functionSourceFile: /src/opus/celt/arm/celt_fft_ne10.c
    functionUses: 0
    functionsReached:
    - NE10_FFT_ALLOC_C2C_TYPE_NEON
    - opus_alloc
    linkageType: ''
    returnType: int
    signature: int opus_fft_alloc_arm_neon(kiss_fft_state *st)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: NE10_FFT_DESTROY_C2C_TYPE
      Src: /src/opus/celt/arm/celt_fft_ne10.c:106,1
    - Dst: opus_free
      Src: /src/opus/celt/arm/celt_fft_ne10.c:107,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - st
    argTypes:
    - kiss_fft_state*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 108
    functionName: opus_fft_free_arm_neon
    functionSourceFile: /src/opus/celt/arm/celt_fft_ne10.c
    functionUses: 0
    functionsReached:
    - opus_free
    - NE10_FFT_DESTROY_C2C_TYPE
    linkageType: ''
    returnType: void
    signature: void opus_fft_free_arm_neon(kiss_fft_state *st)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/celt/arm/celt_fft_ne10.c:117,1
    - Dst: ALLOC
      Src: /src/opus/celt/arm/celt_fft_ne10.c:119,1
    - Dst: opus_fft_c
      Src: /src/opus/celt/arm/celt_fft_ne10.c:123,1
    - Dst: memcpy
      Src: /src/opus/celt/arm/celt_fft_ne10.c:126,1
    - Dst: NE10_FFT_C2C_1D_TYPE_NEON
      Src: /src/opus/celt/arm/celt_fft_ne10.c:131,1
    - Dst: NE10_FFT_C2C_1D_TYPE_NEON
      Src: /src/opus/celt/arm/celt_fft_ne10.c:135,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 3
    argNames:
    - st
    - fin
    - fout
    argTypes:
    - kiss_fft_state*
    - kiss_fft_cpx*
    - kiss_fft_cpx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 111
    functionDepth: 2
    functionLinenumber: 111
    functionLinenumberEnd: 141
    functionName: opus_fft_neon
    functionSourceFile: /src/opus/celt/arm/celt_fft_ne10.c
    functionUses: 0
    functionsReached:
    - memcpy
    - opus_fft_c
    - VARDECL
    - ALLOC
    - NE10_FFT_C2C_1D_TYPE_NEON
    linkageType: ''
    returnType: void
    signature: "void opus_fft_neon(const kiss_fft_state *st,\n                   const
      kiss_fft_cpx *fin,\n                   kiss_fft_cpx *fout)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: VARDECL
      Src: /src/opus/celt/arm/celt_fft_ne10.c:149,1
    - Dst: ALLOC
      Src: /src/opus/celt/arm/celt_fft_ne10.c:151,1
    - Dst: opus_ifft_c
      Src: /src/opus/celt/arm/celt_fft_ne10.c:155,1
    - Dst: memcpy
      Src: /src/opus/celt/arm/celt_fft_ne10.c:158,1
    - Dst: NE10_FFT_C2C_1D_TYPE_NEON
      Src: /src/opus/celt/arm/celt_fft_ne10.c:163,1
    - Dst: NE10_FFT_C2C_1D_TYPE_NEON
      Src: /src/opus/celt/arm/celt_fft_ne10.c:167,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 3
    argNames:
    - st
    - fin
    - fout
    argTypes:
    - kiss_fft_state*
    - kiss_fft_cpx*
    - kiss_fft_cpx*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 143
    functionDepth: 2
    functionLinenumber: 143
    functionLinenumberEnd: 173
    functionName: opus_ifft_neon
    functionSourceFile: /src/opus/celt/arm/celt_fft_ne10.c
    functionUses: 0
    functionsReached:
    - memcpy
    - opus_ifft_c
    - VARDECL
    - ALLOC
    - NE10_FFT_C2C_1D_TYPE_NEON
    linkageType: ''
    returnType: void
    signature: "void opus_ifft_neon(const kiss_fft_state *st,\n                    const
      kiss_fft_cpx *fin,\n                    kiss_fft_cpx *fout)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _st
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionName: opus_fft_alloc_arch
    functionSourceFile: /src/opus/celt/arm/fft_arm.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: opus_fft_alloc_arch(_st, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - _st
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionName: opus_fft_free_arch
    functionSourceFile: /src/opus/celt/arm/fft_arm.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: opus_fft_free_arch(_st, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - _st
    - ','
    - _fin
    - ','
    - _fout
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: opus_fft
    functionSourceFile: /src/opus/celt/arm/fft_arm.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: opus_fft(_st, _fin, _fout, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - _st
    - ','
    - _fin
    - ','
    - _fout
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionName: opus_ifft
    functionSourceFile: /src/opus/celt/arm/fft_arm.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: opus_ifft(_st, _fin, _fout, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - x
    - ','
    - y
    - ','
    - N
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 42
    functionName: celt_inner_prod
    functionSourceFile: /src/opus/celt/arm/pitch_arm.h
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_inner_prod(x, y, N, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 15
    argNames:
    - (
    - x
    - ','
    - y01
    - ','
    - y02
    - ','
    - N
    - ','
    - xy1
    - ','
    - xy2
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 43
    functionName: dual_inner_prod
    functionSourceFile: /src/opus/celt/arm/pitch_arm.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: dual_inner_prod(x, y01, y02, N, xy1, xy2, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - x
    - ','
    - y
    - ','
    - N
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 51
    functionName: celt_inner_prod
    functionSourceFile: /src/opus/celt/arm/pitch_arm.h
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_inner_prod(x, y, N, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - x
    - ','
    - y
    - ','
    - N
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 54
    functionName: celt_inner_prod
    functionSourceFile: /src/opus/celt/arm/pitch_arm.h
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_inner_prod(x, y, N, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 15
    argNames:
    - (
    - x
    - ','
    - y01
    - ','
    - y02
    - ','
    - N
    - ','
    - xy1
    - ','
    - xy2
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 63
    functionName: dual_inner_prod
    functionSourceFile: /src/opus/celt/arm/pitch_arm.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: dual_inner_prod(x, y01, y02, N, xy1, xy2, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 15
    argNames:
    - (
    - x
    - ','
    - y01
    - ','
    - y02
    - ','
    - N
    - ','
    - xy1
    - ','
    - xy2
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 66
    functionName: dual_inner_prod
    functionSourceFile: /src/opus/celt/arm/pitch_arm.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: dual_inner_prod(x, y01, y02, N, xy1, xy2, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 13
    argNames:
    - (
    - _x
    - ','
    - _y
    - ','
    - xcorr
    - ','
    - len
    - ','
    - max_pitch
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 96
    functionName: celt_pitch_xcorr
    functionSourceFile: /src/opus/celt/arm/pitch_arm.h
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_pitch_xcorr(_x, _y, xcorr, len, max_pitch, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - x
    - ','
    - y
    - ','
    - sum
    - ','
    - len
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionName: xcorr_kernel
    functionSourceFile: /src/opus/celt/arm/pitch_arm.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xcorr_kernel(x, y, sum, len, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - x
    - ','
    - y
    - ','
    - sum
    - ','
    - len
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 130
    functionName: xcorr_kernel
    functionSourceFile: /src/opus/celt/arm/pitch_arm.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: xcorr_kernel(x, y, sum, len, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 13
    argNames:
    - (
    - _x
    - ','
    - _y
    - ','
    - xcorr
    - ','
    - len
    - ','
    - max_pitch
    - ','
    - arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 150
    functionName: celt_pitch_xcorr
    functionSourceFile: /src/opus/celt/arm/pitch_arm.h
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: celt_pitch_xcorr(_x, _y, xcorr, len, max_pitch, arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 17
    argNames:
    - (
    - _l
    - ','
    - _in
    - ','
    - _out
    - ','
    - _window
    - ','
    - _int
    - ','
    - _shift
    - ','
    - _stride
    - ','
    - _arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 54
    functionName: clt_mdct_forward
    functionSourceFile: /src/opus/celt/arm/mdct_arm.h
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: clt_mdct_forward(_l, _in, _out, _window, _int, _shift, _stride, _arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 17
    argNames:
    - (
    - _l
    - ','
    - _in
    - ','
    - _out
    - ','
    - _window
    - ','
    - _int
    - ','
    - _shift
    - ','
    - _stride
    - ','
    - _arch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: clt_mdct_backward
    functionSourceFile: /src/opus/celt/arm/mdct_arm.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: clt_mdct_backward(_l, _in, _out, _window, _int, _shift, _stride, _arch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 34
    functionName: SIG2WORD16
    functionSourceFile: /src/opus/celt/arm/fixed_arm64.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: SIG2WORD16(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vld1q_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:59,1
    - Dst: vld1q_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:60,1
    - Dst: vld1q_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:61,1
    - Dst: vld1q_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:62,1
    - Dst: vqmovn_s32
      Src: /src/opus/celt/arm/celt_neon_intr.c:64,1
    - Dst: vroundf
      Src: /src/opus/celt/arm/celt_neon_intr.c:64,1
    - Dst: vmulq_n_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:64,1
    - Dst: vqmovn_s32
      Src: /src/opus/celt/arm/celt_neon_intr.c:65,1
    - Dst: vroundf
      Src: /src/opus/celt/arm/celt_neon_intr.c:65,1
    - Dst: vmulq_n_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:65,1
    - Dst: vqmovn_s32
      Src: /src/opus/celt/arm/celt_neon_intr.c:66,1
    - Dst: vroundf
      Src: /src/opus/celt/arm/celt_neon_intr.c:66,1
    - Dst: vmulq_n_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:66,1
    - Dst: vqmovn_s32
      Src: /src/opus/celt/arm/celt_neon_intr.c:67,1
    - Dst: vroundf
      Src: /src/opus/celt/arm/celt_neon_intr.c:67,1
    - Dst: vmulq_n_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:67,1
    - Dst: vst1_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:69,1
    - Dst: vst1_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:70,1
    - Dst: vst1_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:71,1
    - Dst: vst1_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:72,1
    - Dst: FLOAT2INT16
      Src: /src/opus/celt/arm/celt_neon_intr.c:78,1
    - Dst: celt_assert
      Src: /src/opus/celt/arm/celt_neon_intr.c:79,1
    - Dst: abs
      Src: /src/opus/celt/arm/celt_neon_intr.c:79,1
    - Dst: FLOAT2INT16
      Src: /src/opus/celt/arm/celt_neon_intr.c:87,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 3
    argNames:
    - OPUS_RESTRICT
    - OPUS_RESTRICT
    - cnt
    argTypes:
    - float*
    - short*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 49
    functionDepth: 2
    functionLinenumber: 49
    functionLinenumberEnd: 89
    functionName: celt_float2int16_neon
    functionSourceFile: /src/opus/celt/arm/celt_neon_intr.c
    functionUses: 0
    functionsReached:
    - FLOAT2INT16
    - celt_assert
    - vqmovn_s32
    - abs
    - vld1q_f32
    - vst1_s16
    - vmulq_n_f32
    - vroundf
    linkageType: ''
    returnType: void
    signature: void celt_float2int16_neon(const float * OPUS_RESTRICT in, short *
      OPUS_RESTRICT out, int cnt)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: vdupq_n_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:104,1
    - Dst: vdupq_n_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:105,1
    - Dst: vdupq_n_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:106,1
    - Dst: vdupq_n_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:107,1
    - Dst: vld1q_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:113,1
    - Dst: vld1q_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:114,1
    - Dst: vld1q_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:115,1
    - Dst: vld1q_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:116,1
    - Dst: vmaxq_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:117,1
    - Dst: vmaxq_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:117,1
    - Dst: vmaxq_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:118,1
    - Dst: vmaxq_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:118,1
    - Dst: vminq_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:119,1
    - Dst: vminq_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:119,1
    - Dst: vminq_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:120,1
    - Dst: vminq_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:120,1
    - Dst: vmaxvf
      Src: /src/opus/celt/arm/celt_neon_intr.c:123,1
    - Dst: vmaxq_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:123,1
    - Dst: vminvf
      Src: /src/opus/celt/arm/celt_neon_intr.c:124,1
    - Dst: vminq_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:124,1
    - Dst: vdupq_n_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:128,1
    - Dst: vdupq_n_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:129,1
    - Dst: vld1q_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:132,1
    - Dst: vld1q_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:133,1
    - Dst: vld1q_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:134,1
    - Dst: vld1q_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:135,1
    - Dst: vminq_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:136,1
    - Dst: vmaxq_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:136,1
    - Dst: vminq_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:137,1
    - Dst: vmaxq_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:137,1
    - Dst: vminq_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:138,1
    - Dst: vmaxq_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:138,1
    - Dst: vminq_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:139,1
    - Dst: vmaxq_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:139,1
    - Dst: vst1q_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:140,1
    - Dst: vst1q_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:141,1
    - Dst: vst1q_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:142,1
    - Dst: vst1q_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:143,1
    - Dst: MAX16
      Src: /src/opus/celt/arm/celt_neon_intr.c:156,1
    - Dst: MIN16
      Src: /src/opus/celt/arm/celt_neon_intr.c:157,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 26
    argCount: 2
    argNames:
    - samples
    - cnt
    argTypes:
    - float*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 164
    functionName: opus_limit2_checkwithin1_neon
    functionSourceFile: /src/opus/celt/arm/celt_neon_intr.c
    functionUses: 0
    functionsReached:
    - vminvf
    - vmaxq_f32
    - vminq_f32
    - vld1q_f32
    - vdupq_n_f32
    - MIN16
    - vst1q_f32
    - MAX16
    - vmaxvf
    linkageType: ''
    returnType: int
    signature: int opus_limit2_checkwithin1_neon(float *samples, int cnt)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: vld1q_s32
      Src: /src/opus/celt/arm/celt_neon_intr.c:175,1
    - Dst: vld1_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:178,1
    - Dst: vld1q_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:187,1
    - Dst: vget_low_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:188,1
    - Dst: vget_high_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:189,1
    - Dst: vld1q_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:191,1
    - Dst: vget_low_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:192,1
    - Dst: vget_high_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:193,1
    - Dst: vmlal_lane_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:194,1
    - Dst: vmlal_lane_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:195,1
    - Dst: vext_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:197,1
    - Dst: vext_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:198,1
    - Dst: vmlal_lane_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:199,1
    - Dst: vmlal_lane_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:200,1
    - Dst: vext_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:202,1
    - Dst: vext_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:203,1
    - Dst: vmlal_lane_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:204,1
    - Dst: vmlal_lane_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:205,1
    - Dst: vext_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:207,1
    - Dst: vext_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:208,1
    - Dst: vmlal_lane_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:209,1
    - Dst: vmlal_lane_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:210,1
    - Dst: vld1_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:219,1
    - Dst: vld1_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:221,1
    - Dst: vmlal_lane_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:222,1
    - Dst: vext_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:223,1
    - Dst: vmlal_lane_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:224,1
    - Dst: vext_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:225,1
    - Dst: vmlal_lane_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:226,1
    - Dst: vext_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:227,1
    - Dst: vmlal_lane_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:228,1
    - Dst: vld2_dup_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:237,1
    - Dst: memcpy
      Src: /src/opus/celt/arm/celt_neon_intr.c:246,1
    - Dst: vreinterpret_s16_s32
      Src: /src/opus/celt/arm/celt_neon_intr.c:247,1
    - Dst: vdup_n_s32
      Src: /src/opus/celt/arm/celt_neon_intr.c:247,1
    - Dst: vmlal_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:248,1
    - Dst: vext_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:249,1
    - Dst: vreinterpret_s16_s64
      Src: /src/opus/celt/arm/celt_neon_intr.c:253,1
    - Dst: vsri_n_s64
      Src: /src/opus/celt/arm/celt_neon_intr.c:253,1
    - Dst: vreinterpret_s64_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:253,1
    - Dst: vreinterpret_s64_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:254,1
    - Dst: vmlal_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:255,1
    - Dst: vld1_dup_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:263,1
    - Dst: vmlal_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:264,1
    - Dst: vld1_dup_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:266,1
    - Dst: vreinterpret_s16_s64
      Src: /src/opus/celt/arm/celt_neon_intr.c:267,1
    - Dst: vsri_n_s64
      Src: /src/opus/celt/arm/celt_neon_intr.c:267,1
    - Dst: vreinterpret_s64_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:267,1
    - Dst: vreinterpret_s64_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:268,1
    - Dst: vld1_dup_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:273,1
    - Dst: vmlal_s16
      Src: /src/opus/celt/arm/celt_neon_intr.c:274,1
    - Dst: vst1q_s32
      Src: /src/opus/celt/arm/celt_neon_intr.c:275,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 29
    argCount: 4
    argNames:
    - x
    - y
    - sum
    - len
    argTypes:
    - opus_val16*
    - opus_val16*
    - opus_val32[]
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 276
    functionName: xcorr_kernel_neon_fixed
    functionSourceFile: /src/opus/celt/arm/celt_neon_intr.c
    functionUses: 0
    functionsReached:
    - vld1_s16
    - vld2_dup_s16
    - vmlal_lane_s16
    - vsri_n_s64
    - memcpy
    - vld1q_s16
    - vld1_dup_s16
    - vmlal_s16
    - vld1q_s32
    - vget_low_s16
    - vreinterpret_s16_s32
    - vst1q_s32
    - vreinterpret_s64_s16
    - vget_high_s16
    - vext_s16
    - vreinterpret_s16_s64
    - vdup_n_s32
    linkageType: ''
    returnType: void
    signature: void xcorr_kernel_neon_fixed(const opus_val16 * x, const opus_val16
      * y, opus_val32 sum[4], int len)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - ','
    - lane
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 286
    functionDepth: 0
    functionLinenumber: 286
    functionLinenumberEnd: 287
    functionName: vmlaq_lane_f32
    functionSourceFile: /src/opus/celt/arm/celt_neon_intr.c
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: vmlaq_lane_f32(a,b,c,lane)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/celt/arm/celt_neon_intr.c:305,1
    - Dst: vld1q_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:307,1
    - Dst: vdupq_n_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:308,1
    - Dst: vld1q_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:318,1
    - Dst: vld1q_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:320,1
    - Dst: vld1q_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:322,1
    - Dst: vld1q_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:324,1
    - Dst: vmlaq_lane_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:327,1
    - Dst: vget_low_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:327,1
    - Dst: vextq_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:328,1
    - Dst: vmlaq_lane_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:329,1
    - Dst: vget_low_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:329,1
    - Dst: vextq_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:330,1
    - Dst: vmlaq_lane_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:331,1
    - Dst: vget_high_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:331,1
    - Dst: vextq_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:332,1
    - Dst: vmlaq_lane_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:333,1
    - Dst: vget_high_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:333,1
    - Dst: vmlaq_lane_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:335,1
    - Dst: vget_low_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:335,1
    - Dst: vextq_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:336,1
    - Dst: vmlaq_lane_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:337,1
    - Dst: vget_low_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:337,1
    - Dst: vextq_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:338,1
    - Dst: vmlaq_lane_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:339,1
    - Dst: vget_high_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:339,1
    - Dst: vextq_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:340,1
    - Dst: vmlaq_lane_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:341,1
    - Dst: vget_high_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:341,1
    - Dst: vld1q_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:355,1
    - Dst: vld1q_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:357,1
    - Dst: vmlaq_lane_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:360,1
    - Dst: vget_low_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:360,1
    - Dst: vextq_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:361,1
    - Dst: vmlaq_lane_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:362,1
    - Dst: vget_low_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:362,1
    - Dst: vextq_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:363,1
    - Dst: vmlaq_lane_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:364,1
    - Dst: vget_high_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:364,1
    - Dst: vextq_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:365,1
    - Dst: vmlaq_lane_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:366,1
    - Dst: vget_high_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:366,1
    - Dst: vld1_dup_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:373,1
    - Dst: vmlaq_lane_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:374,1
    - Dst: vld1q_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:375,1
    - Dst: vld1_dup_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:378,1
    - Dst: vmlaq_lane_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:379,1
    - Dst: vst1q_f32
      Src: /src/opus/celt/arm/celt_neon_intr.c:381,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 53
    argCount: 4
    argNames:
    - x
    - y
    - sum
    - len
    argTypes:
    - float32_t*
    - float32_t*
    - float32_t[]
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 382
      start: 295
    functionDepth: 1
    functionLinenumber: 295
    functionLinenumberEnd: 382
    functionName: xcorr_kernel_neon_float
    functionSourceFile: /src/opus/celt/arm/celt_neon_intr.c
    functionUses: 0
    functionsReached:
    - vget_high_f32
    - celt_assert
    - vld1q_f32
    - vextq_f32
    - vdupq_n_f32
    - vst1q_f32
    - vget_low_f32
    - vld1_dup_f32
    - vmlaq_lane_f32
    linkageType: ''
    returnType: void
    signature: "void xcorr_kernel_neon_float(const float32_t *x, const float32_t *y,\n
      \     float32_t sum[4], int len)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: celt_assert
      Src: /src/opus/celt/arm/celt_neon_intr.c:388,1
    - Dst: celt_sig_assert
      Src: /src/opus/celt/arm/celt_neon_intr.c:389,1
    - Dst: xcorr_kernel_neon_float
      Src: /src/opus/celt/arm/celt_neon_intr.c:392,1
    - Dst: celt_inner_prod_neon
      Src: /src/opus/celt/arm/celt_neon_intr.c:398,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 6
    argNames:
    - _x
    - _y
    - xcorr
    - len
    - max_pitch
    - arch
    argTypes:
    - opus_val16*
    - opus_val16*
    - opus_val32*
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 384
    functionDepth: 2
    functionLinenumber: 384
    functionLinenumberEnd: 400
    functionName: celt_pitch_xcorr_float_neon
    functionSourceFile: /src/opus/celt/arm/celt_neon_intr.c
    functionUses: 0
    functionsReached:
    - celt_assert
    - celt_sig_assert
    - celt_inner_prod_neon
    - xcorr_kernel_neon_float
    linkageType: ''
    returnType: void
    signature: "void celt_pitch_xcorr_float_neon(const opus_val16 *_x, const opus_val16
      *_y,\n                        opus_val32 *xcorr, int len, int max_pitch, int
      arch)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: __emit
      Src: /src/opus/celt/arm/armcpu.c:64,1
    - Dst: GetExceptionCode
      Src: /src/opus/celt/arm/armcpu.c:67,1
    - Dst: __emit
      Src: /src/opus/celt/arm/armcpu.c:74,1
    - Dst: GetExceptionCode
      Src: /src/opus/celt/arm/armcpu.c:77,1
    - Dst: __emit
      Src: /src/opus/celt/arm/armcpu.c:83,1
    - Dst: GetExceptionCode
      Src: /src/opus/celt/arm/armcpu.c:86,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 93
    functionName: opus_uint32::opus_cpu_capabilities
    functionSourceFile: /src/opus/celt/arm/armcpu.c
    functionUses: 0
    functionsReached:
    - GetExceptionCode
    - __emit
    linkageType: ''
    returnType: OPUS_INLINE
    signature: OPUS_INLINE opus_uint32 opus_cpu_capabilities(void)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: fopen
      Src: /src/opus/celt/arm/armcpu.c:106,1
    - Dst: fgets
      Src: /src/opus/celt/arm/armcpu.c:114,1
    - Dst: memcmp
      Src: /src/opus/celt/arm/armcpu.c:119,1
    - Dst: strstr
      Src: /src/opus/celt/arm/armcpu.c:122,1
    - Dst: strstr
      Src: /src/opus/celt/arm/armcpu.c:127,1
    - Dst: strstr
      Src: /src/opus/celt/arm/armcpu.c:130,1
    - Dst: strstr
      Src: /src/opus/celt/arm/armcpu.c:135,1
    - Dst: memcmp
      Src: /src/opus/celt/arm/armcpu.c:145,1
    - Dst: atoi
      Src: /src/opus/celt/arm/armcpu.c:148,1
    - Dst: fclose
      Src: /src/opus/celt/arm/armcpu.c:163,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 29
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 166
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 166
    functionName: opus_cpu_capabilities
    functionSourceFile: /src/opus/celt/arm/armcpu.c
    functionUses: 0
    functionsReached:
    - memcmp
    - fgets
    - atoi
    - fclose
    - fopen
    - strstr
    linkageType: ''
    returnType: opus_uint32
    signature: opus_uint32 opus_cpu_capabilities(void)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sysctlbyname
      Src: /src/opus/celt/arm/armcpu.c:179,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 172
    functionDepth: 0
    functionLinenumber: 172
    functionLinenumberEnd: 192
    functionName: opus_cpu_capabilities
    functionSourceFile: /src/opus/celt/arm/armcpu.c
    functionUses: 0
    functionsReached:
    - sysctlbyname
    linkageType: ''
    returnType: opus_uint32
    signature: opus_uint32 opus_cpu_capabilities(void)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: elf_aux_info
      Src: /src/opus/celt/arm/armcpu.c:208,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 240
    functionName: opus_cpu_capabilities
    functionSourceFile: /src/opus/celt/arm/armcpu.c
    functionUses: 0
    functionsReached:
    - elf_aux_info
    linkageType: ''
    returnType: opus_uint32
    signature: opus_uint32 opus_cpu_capabilities(void)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: sysctl
      Src: /src/opus/celt/arm/armcpu.c:257,1
    - Dst: ID_AA64ISAR0_DP
      Src: /src/opus/celt/arm/armcpu.c:259,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 248
    functionDepth: 0
    functionLinenumber: 248
    functionLinenumberEnd: 272
    functionName: opus_cpu_capabilities
    functionSourceFile: /src/opus/celt/arm/armcpu.c
    functionUses: 0
    functionsReached:
    - sysctl
    - ID_AA64ISAR0_DP
    linkageType: ''
    returnType: opus_uint32
    signature: opus_uint32 opus_cpu_capabilities(void)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: opus_cpu_capabilities
      Src: /src/opus/celt/arm/armcpu.c:284,1
    - Dst: celt_assert
      Src: /src/opus/celt/arm/armcpu.c:289,1
    - Dst: celt_assert
      Src: /src/opus/celt/arm/armcpu.c:295,1
    - Dst: celt_assert
      Src: /src/opus/celt/arm/armcpu.c:301,1
    - Dst: celt_assert
      Src: /src/opus/celt/arm/armcpu.c:307,1
    - Dst: celt_assert
      Src: /src/opus/celt/arm/armcpu.c:312,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 282
    functionDepth: 1
    functionLinenumber: 282
    functionLinenumberEnd: 314
    functionName: opus_select_arch_impl
    functionSourceFile: /src/opus/celt/arm/armcpu.c
    functionUses: 1
    functionsReached:
    - celt_assert
    - opus_cpu_capabilities
    linkageType: ''
    returnType: int
    signature: int opus_select_arch_impl(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opus_select_arch_impl
      Src: /src/opus/celt/arm/armcpu.c:317,1
    - Dst: rand
      Src: /src/opus/celt/arm/armcpu.c:319,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 316
    functionDepth: 0
    functionLinenumber: 316
    functionLinenumberEnd: 322
    functionName: opus_select_arch
    functionSourceFile: /src/opus/celt/arm/armcpu.c
    functionUses: 19
    functionsReached:
    - opus_select_arch_impl
    - rand
    linkageType: ''
    returnType: int
    signature: int opus_select_arch(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - m
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 62
    functionName: C_MUL
    functionSourceFile: /src/opus/celt/arm/kiss_fft_armv4.h
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: C_MUL(m,a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - m
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 90
    functionName: C_MUL4
    functionSourceFile: /src/opus/celt/arm/kiss_fft_armv4.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: C_MUL4(m,a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - m
    - ','
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 118
    functionName: C_MULC
    functionSourceFile: /src/opus/celt/arm/kiss_fft_armv4.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: C_MULC(m,a,b)
Fuzzer filename: /src/opus/tests/opus_multistream_encode_fuzzer.cc
Fuzzing method: LLVMFuzzerTestOneInput
included-header-files:
- malloc.h
- mapping_matrix.h
- valgrind/memcheck.h
- immintrin.h
- celt/arm/armcpu.h
- NSQ.h
- opus_types.h
- lpcnet.h
- windows.h
- dred_decoder.h
- debug.h
- osce_config.h
- cpuid.h
- structs_FIX.h
- plc_data.c
- x86/x86cpu.h
- custom_support.h
- errors.h
- pitchdnn_data.c
- smmintrin.h
- entenc.h
- fwgan.h
- freq.h
- modes.h
- dred_coding.h
- osce_features.h
- lace_data.c
- lossgen_data.h
- arm/dnn_arm.h
- opus_ossfuzz_utils.h
- arm/macros_armv4.h
- x86/vq_sse.h
- test_opus_common.h
- emmintrin.h
- vec_avx.h
- arm/fft_arm.h
- xtensa/macros_lx7.h
- arm/macros_armv5e.h
- celt/entenc.h
- laplace.h
- x86/x86_arch_macros.h
- intsafe.h
- config.h
- laplace.c
- dump_modes_arch.h
- opus_multistream.h
- mips/pitch_mipsr1.h
- fixed_c6x.h
- assert.h
- x86/dnn_x86.h
- unistd.h
- celt/laplace.h
- pitch_est_defines.h
- bbwenet_data.h
- mini_kfft.c
- entdec.h
- stdarg.h
- nndsp.h
- xtensa/SigProc_FIX_lx7.h
- fixed_bfin.h
- limits.h
- arm/macros_arm64.h
- opus_projection.h
- entenc.c
- arm/SigProc_FIX_armv5e.h
- opus.h
- mdct.h
- string.h
- array
- stack_alloc.h
- SigProc_FIX.h
- os_support.h
- mips/kiss_fft_mipsr1.h
- stdalign.h
- fixed_debug.h
- fixed/arm/warped_autocorrelation_FIX_arm.h
- fixed_generic.h
- arm_neon.h
- typedef.h
- dsplib.h
- algorithm
- silk/structs.h
- celt/x86/x86cpu.h
- fixed_c5x.h
- float.h
- float_cast.h
- tuning_parameters.h
- machine/cpu.h
- alloca.h
- _G_config.h
- dred_rdovae_enc.h
- arm/fixed_armv4.h
- mathops.c
- static_modes_fixed.h
- nolace_data.h
- resampler_structs.h
- API.h
- parse_lpcnet_weights.c
- intrin0.h
- ../celt/os_support.h
- arm/LPC_inv_pred_gain_arm.h
- arm/fixed_armv5e.h
- fec_packets.h
- sys/time.h
- crtdbg.h
- Inlines.h
- SigProc_FLP.h
- fixed_armv4.h
- float/structs_FLP.h
- celt/entdec.h
- arm/kiss_fft_armv5e.h
- fwgan_data.h
- intrin.h
- arm/SigProc_FIX_armv4.h
- celt.h
- celt/stack_alloc.h
- ../float_cast.h
- x86cpu.h
- mips/warped_autocorrelation_FIX_mipsr1.h
- ../src/mapping_matrix.h
- arm/fixed_arm64.h
- plc_data.h
- stdlib.h
- main_FIX.h
- dred_config.h
- mips/celt_mipsr1.h
- cwrs.h
- armcpu.h
- resampler_rom.h
- static_modes_float.h
- structs.h
- arm/kiss_fft_armv4.h
- _kiss_fft_guts.h
- main.h
- cwrs.c
- arm/mathops_arm.h
- errno.h
- fixed_generic_mipsr1.h
- structs_FLP.h
- arm/mdct_arm.h
- opus_private.h
- main_FLP.h
- pitch_sse.h
- nolace_data.c
- memory
- lpcnet_private.h
- fcntl.h
- static_modes_float_arm_ne10.h
- quant_bands.h
- MacroDebug.h
- fargan_data.c
- ecintrin.h
- x86/celt_lpc_sse.h
- x86/pitch_sse.h
- kiss99.h
- vec_neon.h
- ../pitch.h
- stdint.h
- dred_rdovae_dec_data.h
- fargan.h
- mips/sigproc_fix_mipsr1.h
- dred_rdovae_dec.h
- tables.h
- resampler_private.h
- control.h
- mfrngcod.h
- time.h
- stdio.h
- bands.h
- mlp.h
- dred_encoder.h
- sys/sysctl.h
- nnet_data.h
- sys/auxv.h
- entcode.h
- arm/armcpu.h
- pitchdnn_data.h
- x86/SigProc_FIX_sse.h
- math.h
- sys/types.h
- arm/NSQ_neon.h
- entcode.c
- fuzzer/FuzzedDataProvider.h
- fargan_data.h
- ../mathops.h
- xmmintrin.h
- lace_data.h
- machine/armreg.h
- vec.h
- process.h
- mips/NSQ_mips.h
- burg.h
- celt/cpu_support.h
- entdec.c
- arm/biquad_alt_arm.h
- fixed/structs_FIX.h
- define.h
- ../celt/mathops.h
- vq.h
- kiss_fft.h
- mips/mdct_mipsr1.h
- stddef.h
- ../src/opus_private.h
- mathops.h
- sys/mman.h
- inttypes.h
- static_modes_fixed_arm_ne10.h
- NE10_dsp.h
- rate.h
- NE10_types.h
- MacroCount.h
- dred_rdovae_constants.h
- osce.h
- PLC.h
- arch.h
- common.h
- pitch.h
- cpu_support.h
- celt_lpc.h
- osce_structs.h
- macros.h
- fixed/main_FIX.h
- nnet_arch.h
- cmath
- dred_rdovae_enc_data.c
- opus_defines.h
- dred_rdovae_dec_data.c
- arm/NSQ_del_dec_arm.h
- dred_rdovae_stats_data.h
- dred_rdovae_enc_data.h
- mips/fixed_generic_mipsr1.h
- tansig_table.h
- lossgen.h
- nnet.h
- mips/macros_mipsr1.h
- opus_custom.h
- random
- analysis.h
- dred_rdovae.h
- x86/main_sse.h
- sys/stat.h
- pitchdnn.h
- arm/pitch_arm.h
report: name
sources:
- function_names:
  - main
  source_file: /src/opus/cmake/cpu_info_by_c.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  source_file: /src/opus/cmake/vla.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  source_file: /src/opus/cmake/cpu_info_by_asm.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - celt_ec_internal_error
  - mscbr_encode_fail10
  - mscbr_encode_fail
  - surround_analysis_uninit
  - ec_enc_shrink_assert
  - ec_enc_shrink_assert2
  - silk_gain_assert
  - analysis_overflow
  - projection_overflow2
  - projection_overflow3
  - projection_overflow
  - projection_overflow4
  - qext_repacketize_fail
  - qext_stereo_overflow
  - qext_dred_combination
  - regression_test
  source_file: /src/opus/tests/opus_encode_regressions.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - RAND_SAMPLE
  - generate_sine_sweep
  - test_encode
  - test_opus_custom
  - main
  source_file: /src/opus/tests/test_opus_custom.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: getpid
      pos:
        line_end: 20
        line_start: 19
        source_file: /src/opus/tests/test_opus_custom.c
      type_or_value: _getpid
    - item_type: preproc_def
      name: MAX_PACKET
      pos:
        line_end: 27
        line_start: 26
        source_file: /src/opus/tests/test_opus_custom.c
      type_or_value: (1500)
    - item_type: preproc_def
      name: PI
      pos:
        line_end: 28
        line_start: 27
        source_file: /src/opus/tests/test_opus_custom.c
      type_or_value: (3.141592653589793238462643)
    - item_type: preproc_def
      name: RMS_THRESH
      pos:
        line_end: 30
        line_start: 29
        source_file: /src/opus/tests/test_opus_custom.c
      type_or_value: (3e-6)
    - item_type: preproc_def
      name: SINE_SWEEP_AMPLITUDE
      pos:
        line_end: 32
        line_start: 31
        source_file: /src/opus/tests/test_opus_custom.c
      type_or_value: (0.5f)
    - item_type: preproc_def
      name: SINE_SWEEP_DURATION_S
      pos:
        line_end: 33
        line_start: 32
        source_file: /src/opus/tests/test_opus_custom.c
      type_or_value: (60.0f)
    structs:
    - fields:
      - name: '* encoder'
        type: void
      - name: '* decoder'
        type: void
      - name: '*mode'
        type: OpusCustomMode
      - name: sample_rate
        type: int
      - name: num_channels
        type: int
      - name: frame_size
        type: int
      - name: float_encode
        type: int
      - name: float_decode
        type: int
      - name: custom_encode
        type: int
      - name: custom_decode
        type: int
      - name: encoder_bit_depth
        type: int
      - name: decoder_bit_depth
        type: int
      item_type: struct
      name: TestCustomParams
      pos:
        line_end: 50
        line_start: 34
        source_file: /src/opus/tests/test_opus_custom.c
    typedefs: []
    union: []
- function_names:
  - deb2_impl
  - debruijn2
  - opus_uint32::fast_rand
  - _test_failed
  - test_failed
  - opus_test_assert
  - expect_true
  source_file: /src/opus/tests/test_opus_common.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - VG_UNDEF
  - VG_CHECK
  - malloc_hook
  - test_dec_api
  - test_msdec_api
  - test_parse
  - CHECK_SETGET
  - test_enc_api
  - test_repacketizer_api
  - main
  source_file: /src/opus/tests/test_opus_api.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: UNDEFINE_FOR_PARSE
      pos:
        line_end: 702
        line_start: 695
        source_file: /src/opus/tests/test_opus_api.c
      type_or_value: "toc=-1; \\\n   frames[0]=(unsigned char *)0; \\\n   frames[1]=(unsigned
        char *)0; \\\n   payload_offset=-1; \\\n   VG_UNDEF(&toc,sizeof(toc)); \\\n
        \  VG_UNDEF(frames,sizeof(frames));\\\n   VG_UNDEF(&payload_offset,sizeof(payload_offset));"
    - item_type: preproc_def
      name: UNDEFINE_FOR_PARSE
      pos:
        line_end: 707
        line_start: 703
        source_file: /src/opus/tests/test_opus_api.c
      type_or_value: "toc=-1; \\\n   frames[0]=(unsigned char *)0; \\\n   frames[1]=(unsigned
        char *)0; \\\n   payload_offset=-1;"
    - item_type: preproc_def
      name: max_out
      pos:
        line_end: 1455
        line_start: 1454
        source_file: /src/opus/tests/test_opus_api.c
      type_or_value: (1276*48+48*2+2)
    structs: []
    typedefs:
    - item_type: typedef
      name: '*(*mhook)(size_t __size, __const void *)'
      pos:
        line_end: 1774
        line_start: 1774
        source_file: /src/opus/tests/test_opus_api.c
      type: void
    union: []
- function_names:
  - ParseToc
  - LLVMFuzzerTestOneInput
  source_file: /src/opus/tests/opus_decode_fuzzer.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAX_FRAME_SAMP
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/opus/tests/opus_decode_fuzzer.c
      type_or_value: '5760'
    - item_type: preproc_def
      name: MAX_PACKET
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/opus/tests/opus_decode_fuzzer.c
      type_or_value: '1500'
    - item_type: preproc_def
      name: SETUP_BYTE_COUNT
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/opus/tests/opus_decode_fuzzer.c
      type_or_value: '8'
    - item_type: preproc_def
      name: MAX_DECODES
      pos:
        line_end: 43
        line_start: 42
        source_file: /src/opus/tests/opus_decode_fuzzer.c
      type_or_value: '12'
    structs:
    - fields:
      - name: fs
        type: int
      - name: channels
        type: int
      item_type: struct
      name: TocInfo
      pos:
        line_end: 47
        line_start: 44
        source_file: /src/opus/tests/opus_decode_fuzzer.c
    typedefs: []
    union: []
- function_names:
  - test_overflow
  - main
  source_file: /src/opus/tests/test_opus_padding.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: PACKETSIZE
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/opus/tests/test_opus_padding.c
      type_or_value: '16909318'
    - item_type: preproc_def
      name: CHANNELS
      pos:
        line_end: 43
        line_start: 42
        source_file: /src/opus/tests/test_opus_padding.c
      type_or_value: '2'
    - item_type: preproc_def
      name: FRAMESIZE
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/opus/tests/test_opus_padding.c
      type_or_value: '5760'
    structs: []
    typedefs: []
    union: []
- function_names:
  - test_random_dred
  - main
  source_file: /src/opus/tests/test_opus_dred.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: getpid
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/opus/tests/test_opus_dred.c
      type_or_value: _getpid
    - item_type: preproc_def
      name: NB_RANDOM_EXTENSIONS
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/opus/tests/test_opus_dred.c
      type_or_value: '10000000'
    - item_type: preproc_def
      name: MAX_EXTENSION_SIZE
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/opus/tests/test_opus_dred.c
      type_or_value: '200'
    - item_type: preproc_def
      name: MAX_NB_EXTENSIONS
      pos:
        line_end: 52
        line_start: 51
        source_file: /src/opus/tests/test_opus_dred.c
      type_or_value: '100'
    structs: []
    typedefs: []
    union: []
- function_names:
  - RAND_SAMPLE
  - generate_music
  - int_to_char
  - save_packet
  - get_frame_size_enum
  - test_encode
  - fuzz_encoder_settings
  - run_test1
  - print_usage
  - main
  source_file: /src/opus/tests/test_opus_encode.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: getpid
      pos:
        line_end: 43
        line_start: 42
        source_file: /src/opus/tests/test_opus_encode.c
      type_or_value: _getpid
    - item_type: preproc_def
      name: MAX_PACKET
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/opus/tests/test_opus_encode.c
      type_or_value: (1500)
    - item_type: preproc_def
      name: SAMPLES
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/opus/tests/test_opus_encode.c
      type_or_value: (48000*30)
    - item_type: preproc_def
      name: SSAMPLES
      pos:
        line_end: 52
        line_start: 51
        source_file: /src/opus/tests/test_opus_encode.c
      type_or_value: (SAMPLES/3)
    - item_type: preproc_def
      name: MAX_FRAME_SAMP
      pos:
        line_end: 53
        line_start: 52
        source_file: /src/opus/tests/test_opus_encode.c
      type_or_value: (5760)
    - item_type: preproc_def
      name: PI
      pos:
        line_end: 54
        line_start: 53
        source_file: /src/opus/tests/test_opus_encode.c
      type_or_value: (3.141592653589793238462643f)
    structs: []
    typedefs: []
    union: []
- function_names:
  - assert_is_equal
  - assert_is_equal_short
  - test_simple_matrix
  - test_creation_arguments
  - generate_music
  - test_encode_decode
  - main
  source_file: /src/opus/tests/test_opus_projection.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: BUFFER_SIZE
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/opus/tests/test_opus_projection.c
      type_or_value: '960'
    - item_type: preproc_def
      name: MAX_DATA_BYTES
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/opus/tests/test_opus_projection.c
      type_or_value: '32768'
    - item_type: preproc_def
      name: MAX_FRAME_SAMPLES
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/opus/tests/test_opus_projection.c
      type_or_value: '5760'
    - item_type: preproc_def
      name: ERROR_TOLERANCE
      pos:
        line_end: 47
        line_start: 46
        source_file: /src/opus/tests/test_opus_projection.c
      type_or_value: '1'
    - item_type: preproc_def
      name: SIMPLE_MATRIX_SIZE
      pos:
        line_end: 49
        line_start: 48
        source_file: /src/opus/tests/test_opus_projection.c
      type_or_value: '12'
    - item_type: preproc_def
      name: SIMPLE_MATRIX_FRAME_SIZE
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/opus/tests/test_opus_projection.c
      type_or_value: '10'
    - item_type: preproc_def
      name: SIMPLE_MATRIX_INPUT_SIZE
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/opus/tests/test_opus_projection.c
      type_or_value: '30'
    - item_type: preproc_def
      name: SIMPLE_MATRIX_OUTPUT_SIZE
      pos:
        line_end: 52
        line_start: 51
        source_file: /src/opus/tests/test_opus_projection.c
      type_or_value: '40'
    structs: []
    typedefs: []
    union: []
- function_names:
  - test_decoder_code0
  - test_soft_clip
  - main
  source_file: /src/opus/tests/test_opus_decode.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: getpid
      pos:
        line_end: 43
        line_start: 42
        source_file: /src/opus/tests/test_opus_decode.c
      type_or_value: _getpid
    - item_type: preproc_def
      name: MAX_PACKET
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/opus/tests/test_opus_decode.c
      type_or_value: (1500)
    - item_type: preproc_def
      name: MAX_FRAME_SAMP
      pos:
        line_end: 49
        line_start: 48
        source_file: /src/opus/tests/test_opus_decode.c
      type_or_value: (5760)
    structs: []
    typedefs: []
    union: []
- function_names:
  - test_extensions_generate_success
  - test_extensions_generate_zero
  - test_extensions_generate_no_padding
  - test_extensions_generate_fail
  - test_extensions_parse_success
  - test_extensions_parse_zero
  - test_extensions_parse_fail
  - check_ext_data
  - test_extensions_repeating
  - test_random_extensions_parse
  - test_opus_repacketizer_out_range_impl
  - main
  source_file: /src/opus/tests/test_opus_extensions.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: getpid
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/opus/tests/test_opus_extensions.c
      type_or_value: _getpid
    - item_type: preproc_def
      name: LENSIZE
      pos:
        line_end: 393
        line_start: 392
        source_file: /src/opus/tests/test_opus_extensions.c
      type_or_value: ((1U<<31)/255 + 1)
    - item_type: preproc_def
      name: NB_EXT
      pos:
        line_end: 440
        line_start: 439
        source_file: /src/opus/tests/test_opus_extensions.c
      type_or_value: (13)
    - item_type: preproc_def
      name: NB_RANDOM_EXTENSIONS
      pos:
        line_end: 572
        line_start: 571
        source_file: /src/opus/tests/test_opus_extensions.c
      type_or_value: '100000000'
    - item_type: preproc_def
      name: MAX_EXTENSION_SIZE
      pos:
        line_end: 573
        line_start: 572
        source_file: /src/opus/tests/test_opus_extensions.c
      type_or_value: '200'
    - item_type: preproc_def
      name: MAX_NB_EXTENSIONS
      pos:
        line_end: 576
        line_start: 575
        source_file: /src/opus/tests/test_opus_extensions.c
      type_or_value: ((MAX_EXTENSION_SIZE - 1)*48)
    structs: []
    typedefs: []
    union: []
- function_names:
  - ARG_QEXT
  source_file: /src/opus/tests/opus_ossfuzz_utils.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - LLVMFuzzerTestOneInput
  source_file: /src/opus/tests/opus_projection_encoder_fuzzer.cc
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAX_PACKET
      pos:
        line_end: 29
        line_start: 28
        source_file: /src/opus/tests/opus_projection_encoder_fuzzer.cc
      type_or_value: (1500)
    structs: []
    typedefs: []
    union: []
- function_names:
  - LLVMFuzzerTestOneInput
  source_file: /src/opus/tests/opus_projection_decoder_fuzzer.cc
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAX_MATRIX_SIZE
      pos:
        line_end: 33
        line_start: 32
        source_file: /src/opus/tests/opus_projection_decoder_fuzzer.cc
      type_or_value: '4096'
    structs: []
    typedefs: []
    union: []
- function_names:
  - LLVMFuzzerTestOneInput
  source_file: /src/opus/tests/opus_multistream_encode_fuzzer.cc
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAX_PACKET
      pos:
        line_end: 29
        line_start: 28
        source_file: /src/opus/tests/opus_multistream_encode_fuzzer.cc
      type_or_value: (1500)
    structs: []
    typedefs: []
    union: []
- function_names:
  - LLVMFuzzerTestOneInput
  source_file: /src/opus/tests/opus_encode_fuzzer.cc
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAX_PACKET
      pos:
        line_end: 26
        line_start: 25
        source_file: /src/opus/tests/opus_encode_fuzzer.cc
      type_or_value: (1500)
    - item_type: preproc_def
      name: SAMPLES
      pos:
        line_end: 28
        line_start: 27
        source_file: /src/opus/tests/opus_encode_fuzzer.cc
      type_or_value: (96000 * 10)
    - item_type: preproc_def
      name: SAMPLES
      pos:
        line_end: 30
        line_start: 29
        source_file: /src/opus/tests/opus_encode_fuzzer.cc
      type_or_value: (48000 * 10)
    - item_type: preproc_def
      name: MAX_FRAME_SAMP
      pos:
        line_end: 32
        line_start: 31
        source_file: /src/opus/tests/opus_encode_fuzzer.cc
      type_or_value: (5760)
    structs: []
    typedefs: []
    union: []
- function_names:
  - char_to_int
  - LLVMFuzzerTestOneInput
  source_file: /src/opus/tests/opus_repacketizer_fuzzer.cc
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAX_PACKETOUT
      pos:
        line_end: 23
        line_start: 22
        source_file: /src/opus/tests/opus_repacketizer_fuzzer.cc
      type_or_value: '32000'
    structs: []
    typedefs: []
    union: []
- function_names:
  - LLVMFuzzerTestOneInput
  source_file: /src/opus/tests/opus_multistream_decode_fuzzer.cc
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  source_file: /src/opus/doc/trivial_example.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: FRAME_SIZE
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/opus/doc/trivial_example.c
      type_or_value: '960'
    - item_type: preproc_def
      name: SAMPLE_RATE
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/opus/doc/trivial_example.c
      type_or_value: '48000'
    - item_type: preproc_def
      name: CHANNELS
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/opus/doc/trivial_example.c
      type_or_value: '2'
    - item_type: preproc_def
      name: APPLICATION
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/opus/doc/trivial_example.c
      type_or_value: OPUS_APPLICATION_AUDIO
    - item_type: preproc_def
      name: BITRATE
      pos:
        line_end: 43
        line_start: 42
        source_file: /src/opus/doc/trivial_example.c
      type_or_value: '64000'
    - item_type: preproc_def
      name: MAX_FRAME_SIZE
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/opus/doc/trivial_example.c
      type_or_value: 6*960
    - item_type: preproc_def
      name: MAX_PACKET_SIZE
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/opus/doc/trivial_example.c
      type_or_value: (3*1276)
    structs: []
    typedefs: []
    union: []
- function_names:
  - MAX
  - OPUS_COSF
  - OPUS_SINF
  - check_alloc
  - opus_malloc
  - opus_realloc
  - read_pcm
  - band_energy
  - usage
  - main
  source_file: /src/opus/src/qext_compare.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: OPUS_PI
      pos:
        line_end: 35
        line_start: 34
        source_file: /src/opus/src/qext_compare.c
      type_or_value: (3.14159265F)
    - item_type: preproc_def
      name: FORMAT_S16_LE
      pos:
        line_end: 56
        line_start: 55
        source_file: /src/opus/src/qext_compare.c
      type_or_value: '0'
    - item_type: preproc_def
      name: FORMAT_S24_LE
      pos:
        line_end: 57
        line_start: 56
        source_file: /src/opus/src/qext_compare.c
      type_or_value: '1'
    - item_type: preproc_def
      name: FORMAT_F32_LE
      pos:
        line_end: 58
        line_start: 57
        source_file: /src/opus/src/qext_compare.c
      type_or_value: '2'
    - item_type: preproc_def
      name: NBANDS
      pos:
        line_end: 60
        line_start: 59
        source_file: /src/opus/src/qext_compare.c
      type_or_value: (28)
    - item_type: preproc_def
      name: NFREQS
      pos:
        line_end: 61
        line_start: 60
        source_file: /src/opus/src/qext_compare.c
      type_or_value: (240*2)
    - item_type: preproc_def
      name: TEST_WIN_SIZE
      pos:
        line_end: 62
        line_start: 61
        source_file: /src/opus/src/qext_compare.c
      type_or_value: (480*2)
    - item_type: preproc_def
      name: TEST_WIN_STEP
      pos:
        line_end: 63
        line_start: 62
        source_file: /src/opus/src/qext_compare.c
      type_or_value: (120*2)
    structs: []
    typedefs: []
    union:
    - fields:
      - name: i
        type: int
      - name: f
        type: float
      item_type: union
      name: float_bits
      pos:
        line_end: 68
        line_start: 65
        source_file: /src/opus/src/qext_compare.c
- function_names:
  - opus_pcm_soft_clip_impl
  - opus_pcm_soft_clip
  - encode_size
  - parse_size
  - opus_packet_get_samples_per_frame
  - opus_packet_parse_impl
  - opus_packet_parse
  source_file: /src/opus/src/opus.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - OPUS_SET_VOICE_RATIO
  - OPUS_GET_VOICE_RATIO
  - OPUS_SET_FORCE_MODE
  - align
  source_file: /src/opus/src/opus_private.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MODE_SILK_ONLY
      pos:
        line_end: 148
        line_start: 147
        source_file: /src/opus/src/opus_private.h
      type_or_value: '1000'
    - item_type: preproc_def
      name: MODE_HYBRID
      pos:
        line_end: 149
        line_start: 148
        source_file: /src/opus/src/opus_private.h
      type_or_value: '1001'
    - item_type: preproc_def
      name: MODE_CELT_ONLY
      pos:
        line_end: 150
        line_start: 149
        source_file: /src/opus/src/opus_private.h
      type_or_value: '1002'
    - item_type: preproc_def
      name: OPUS_SET_VOICE_RATIO_REQUEST
      pos:
        line_end: 152
        line_start: 151
        source_file: /src/opus/src/opus_private.h
      type_or_value: '11018'
    - item_type: preproc_def
      name: OPUS_GET_VOICE_RATIO_REQUEST
      pos:
        line_end: 153
        line_start: 152
        source_file: /src/opus/src/opus_private.h
      type_or_value: '11019'
    - item_type: preproc_def
      name: OPUS_SET_FORCE_MODE_REQUEST
      pos:
        line_end: 172
        line_start: 171
        source_file: /src/opus/src/opus_private.h
      type_or_value: '11002'
    structs:
    - fields:
      - name: toc
        type: unsigned char
      - name: nb_frames
        type: int
      - name: '*frames[48]'
        type: unsigned char
      - name: len[48]
        type: opus_int16
      - name: framesize
        type: int
      - name: '*paddings[48]'
        type: unsigned char
      - name: padding_len[48]
        type: opus_int32
      - name: padding_nb_frames[48]
        type: unsigned char
      item_type: struct
      name: OpusRepacketizer
      pos:
        line_end: 47
        line_start: 38
        source_file: /src/opus/src/opus_private.h
    - fields:
      - name: '*data'
        type: unsigned char
      - name: '*curr_data'
        type: unsigned char
      - name: '*repeat_data'
        type: unsigned char
      - name: '*last_long'
        type: unsigned char
      - name: '*src_data'
        type: unsigned char
      - name: len
        type: opus_int32
      - name: curr_len
        type: opus_int32
      - name: repeat_len
        type: opus_int32
      - name: src_len
        type: opus_int32
      - name: trailing_short_len
        type: opus_int32
      - name: nb_frames
        type: int
      - name: frame_max
        type: int
      - name: curr_frame
        type: int
      - name: repeat_frame
        type: int
      - name: repeat_l
        type: unsigned char
      item_type: struct
      name: OpusExtensionIterator
      pos:
        line_end: 65
        line_start: 49
        source_file: /src/opus/src/opus_private.h
    - fields:
      - name: id
        type: int
      - name: frame
        type: int
      - name: '*data'
        type: unsigned char
      - name: len
        type: opus_int32
      item_type: struct
      name: opus_extension_data
      pos:
        line_end: 72
        line_start: 67
        source_file: /src/opus/src/opus_private.h
    - fields:
      - name: nb_channels
        type: int
      - name: nb_streams
        type: int
      - name: nb_coupled_streams
        type: int
      - name: mapping[256]
        type: unsigned char
      item_type: struct
      name: ChannelLayout
      pos:
        line_end: 90
        line_start: 85
        source_file: /src/opus/src/opus_private.h
    - fields:
      - name: layout
        type: ChannelLayout
      - name: arch
        type: int
      - name: lfe_stream
        type: int
      - name: application
        type: int
      - name: Fs
        type: opus_int32
      - name: variable_duration
        type: int
      - name: mapping_type
        type: MappingType
      - name: bitrate_bps
        type: opus_int32
      item_type: struct
      name: OpusMSEncoder
      pos:
        line_end: 110
        line_start: 98
        source_file: /src/opus/src/opus_private.h
    - fields:
      - name: layout
        type: ChannelLayout
      item_type: struct
      name: OpusMSDecoder
      pos:
        line_end: 115
        line_start: 112
        source_file: /src/opus/src/opus_private.h
    - fields:
      - name: c
        type: char
      - name: u
        type: union { void* p; opus_int32 i; opus_val32 v; }
      item_type: struct
      name: foo
      pos:
        line_end: 198
        line_start: 198
        source_file: /src/opus/src/opus_private.h
    typedefs:
    - item_type: typedef
      name: "(*opus_copy_channel_in_func)(\n  opus_res *dst,\n  int dst_stride,\n
        \ const void *src,\n  int src_stride,\n  int src_channel,\n  int frame_size,\n
        \ void *user_data\n)"
      pos:
        line_end: 135
        line_start: 127
        source_file: /src/opus/src/opus_private.h
      type: void
    - item_type: typedef
      name: "(*opus_copy_channel_out_func)(\n  void *dst,\n  int dst_stride,\n  int
        dst_channel,\n  const opus_res *src,\n  int src_stride,\n  int frame_size,\n
        \ void *user_data\n)"
      pos:
        line_end: 145
        line_start: 137
        source_file: /src/opus/src/opus_private.h
      type: void
    - item_type: typedef
      name: (*downmix_func)(const void *, opus_val32 *, int, int, int, int, int)
      pos:
        line_end: 174
        line_start: 174
        source_file: /src/opus/src/opus_private.h
      type: void
    union: []
- function_names:
  - fmadd
  - tansig_approx
  - sigmoid_approx
  - gemm_accum
  - analysis_compute_dense
  - analysis_compute_gru
  source_file: /src/opus/src/mlp.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - OPUS_COSF
  - OPUS_SINF
  - check_alloc
  - opus_malloc
  - opus_realloc
  - read_pcm16
  - band_energy
  - main
  source_file: /src/opus/src/opus_compare.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: OPUS_PI
      pos:
        line_end: 33
        line_start: 32
        source_file: /src/opus/src/opus_compare.c
      type_or_value: (3.14159265F)
    - item_type: preproc_def
      name: NBANDS
      pos:
        line_end: 153
        line_start: 152
        source_file: /src/opus/src/opus_compare.c
      type_or_value: (21)
    - item_type: preproc_def
      name: NFREQS
      pos:
        line_end: 154
        line_start: 153
        source_file: /src/opus/src/opus_compare.c
      type_or_value: (240)
    - item_type: preproc_def
      name: TEST_WIN_SIZE
      pos:
        line_end: 162
        line_start: 161
        source_file: /src/opus/src/opus_compare.c
      type_or_value: (480)
    - item_type: preproc_def
      name: TEST_WIN_STEP
      pos:
        line_end: 163
        line_start: 162
        source_file: /src/opus/src/opus_compare.c
      type_or_value: (120)
    structs: []
    typedefs: []
    union: []
- function_names:
  - usage
  - int_to_char
  - char_to_int
  - main
  source_file: /src/opus/src/repacketizer_demo.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAX_PACKETOUT
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/opus/src/repacketizer_demo.c
      type_or_value: '32000'
    structs: []
    typedefs: []
    union: []
- function_names:
  - opus_repacketizer_get_size
  - opus_repacketizer_init
  - opus_repacketizer_create
  - opus_repacketizer_destroy
  - opus_repacketizer_cat_impl
  - opus_repacketizer_cat
  - opus_repacketizer_get_nb_frames
  - opus_repacketizer_out_range_impl
  - opus_repacketizer_out_range
  - opus_repacketizer_out
  - opus_packet_pad_impl
  - opus_packet_pad
  - opus_packet_unpad
  - opus_multistream_packet_pad
  - opus_multistream_packet_unpad
  source_file: /src/opus/src/repacketizer.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - opus_projection_copy_channel_in_float
  - opus_projection_copy_channel_in_short
  - opus_projection_copy_channel_in_int24
  - get_order_plus_one_from_channels
  - get_streams_from_channels
  - get_mixing_matrix
  - get_enc_demixing_matrix
  - get_multistream_encoder
  - opus_projection_ambisonics_encoder_get_size
  - opus_projection_ambisonics_encoder_init
  - opus_projection_ambisonics_encoder_create
  - opus_projection_encode
  - opus_projection_encode24
  - opus_projection_encode_float
  - opus_projection_encoder_destroy
  - opus_projection_encoder_ctl
  source_file: /src/opus/src/opus_projection_encoder.c
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: mixing_matrix_size_in_bytes
        type: opus_int32
      - name: demixing_matrix_size_in_bytes
        type: opus_int32
      item_type: struct
      name: OpusProjectionEncoder
      pos:
        line_end: 45
        line_start: 40
        source_file: /src/opus/src/opus_projection_encoder.c
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/src/analysis.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: NB_FRAMES
      pos:
        line_end: 35
        line_start: 34
        source_file: /src/opus/src/analysis.h
      type_or_value: '8'
    - item_type: preproc_def
      name: NB_TBANDS
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/opus/src/analysis.h
      type_or_value: '18'
    - item_type: preproc_def
      name: ANALYSIS_BUF_SIZE
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/opus/src/analysis.h
      type_or_value: '720 '
    - item_type: preproc_def
      name: ANALYSIS_COUNT_MAX
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/opus/src/analysis.h
      type_or_value: '10000'
    - item_type: preproc_def
      name: DETECT_SIZE
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/opus/src/analysis.h
      type_or_value: '100'
    - item_type: preproc_def
      name: TONALITY_ANALYSIS_RESET_START
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/opus/src/analysis.h
      type_or_value: angle
    structs:
    - fields:
      - name: arch
        type: int
      - name: application
        type: int
      - name: Fs
        type: opus_int32
      - name: angle[240]
        type: float
      - name: d_angle[240]
        type: float
      - name: d2_angle[240]
        type: float
      - name: inmem[ANALYSIS_BUF_SIZE]
        type: opus_val32
      - name: mem_fill
        type: int
      - name: prev_band_tonality[NB_TBANDS]
        type: float
      - name: prev_tonality
        type: float
      - name: prev_bandwidth
        type: int
      - name: E[NB_FRAMES][NB_TBANDS]
        type: float
      - name: logE[NB_FRAMES][NB_TBANDS]
        type: float
      - name: lowE[NB_TBANDS]
        type: float
      - name: highE[NB_TBANDS]
        type: float
      - name: meanE[NB_TBANDS+1]
        type: float
      - name: mem[32]
        type: float
      - name: cmean[8]
        type: float
      - name: std[9]
        type: float
      - name: Etracker
        type: float
      - name: lowECount
        type: float
      - name: E_count
        type: int
      - name: count
        type: int
      - name: analysis_offset
        type: int
      - name: write_pos
        type: int
      - name: read_pos
        type: int
      - name: read_subframe
        type: int
      - name: hp_ener_accum
        type: float
      - name: initialized
        type: int
      - name: rnn_state[MAX_NEURONS]
        type: float
      - name: downmix_state[3]
        type: opus_val32
      - name: info[DETECT_SIZE]
        type: AnalysisInfo
      item_type: struct
      name: TonalityAnalysisState
      pos:
        line_end: 80
        line_start: 46
        source_file: /src/opus/src/analysis.h
    typedefs: []
    union: []
- function_names:
  - opus_projection_copy_channel_out_float
  - opus_projection_copy_channel_out_short
  - opus_projection_copy_channel_out_int24
  - get_dec_demixing_matrix
  - get_multistream_decoder
  - opus_projection_decoder_get_size
  - opus_projection_decoder_init
  - opus_projection_decoder_create
  - opus_projection_decode
  - opus_projection_decode24
  - opus_projection_decode_float
  - opus_projection_decoder_ctl
  - opus_projection_decoder_destroy
  source_file: /src/opus/src/opus_projection_decoder.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: OPTIONAL_CLIP
      pos:
        line_end: 234
        line_start: 233
        source_file: /src/opus/src/opus_projection_decoder.c
      type_or_value: '0'
    - item_type: preproc_def
      name: OPTIONAL_CLIP
      pos:
        line_end: 236
        line_start: 235
        source_file: /src/opus/src/opus_projection_decoder.c
      type_or_value: '1'
    structs:
    - fields:
      - name: demixing_matrix_size_in_bytes
        type: opus_int32
      item_type: struct
      name: OpusProjectionDecoder
      pos:
        line_end: 44
        line_start: 40
        source_file: /src/opus/src/opus_projection_decoder.c
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/src/mlp.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: WEIGHTS_SCALE
      pos:
        line_end: 32
        line_start: 31
        source_file: /src/opus/src/mlp.h
      type_or_value: (1.f/128)
    - item_type: preproc_def
      name: MAX_NEURONS
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/opus/src/mlp.h
      type_or_value: '32'
    structs:
    - fields:
      - name: '*bias'
        type: opus_int8
      - name: '*input_weights'
        type: opus_int8
      - name: nb_inputs
        type: int
      - name: nb_neurons
        type: int
      - name: sigmoid
        type: int
      item_type: struct
      name: AnalysisDenseLayer
      pos:
        line_end: 41
        line_start: 35
        source_file: /src/opus/src/mlp.h
    - fields:
      - name: '*bias'
        type: opus_int8
      - name: '*input_weights'
        type: opus_int8
      - name: '*recurrent_weights'
        type: opus_int8
      - name: nb_inputs
        type: int
      - name: nb_neurons
        type: int
      item_type: struct
      name: AnalysisGRULayer
      pos:
        line_end: 49
        line_start: 43
        source_file: /src/opus/src/mlp.h
    typedefs: []
    union: []
- function_names:
  - silk_resampler_down2_hp
  - downmix_and_resample
  - tonality_analysis_init
  - tonality_analysis_reset
  - tonality_get_info
  - SCALE_ENER
  - SCALE_ENER
  - is_digital_silence32
  - is_digital_silence32
  - tonality_analysis
  - run_analysis
  source_file: /src/opus/src/analysis.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: M_PI
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/opus/src/analysis.c
      type_or_value: '3.141592653'
    - item_type: preproc_def
      name: TRANSITION_PENALTY
      pos:
        line_end: 55
        line_start: 54
        source_file: /src/opus/src/analysis.c
      type_or_value: '10'
    - item_type: preproc_def
      name: NB_TONAL_SKIP_BANDS
      pos:
        line_end: 113
        line_start: 112
        source_file: /src/opus/src/analysis.c
      type_or_value: '9'
    - item_type: preproc_def
      name: LEAKAGE_OFFSET
      pos:
        line_end: 415
        line_start: 414
        source_file: /src/opus/src/analysis.c
      type_or_value: 2.5f
    - item_type: preproc_def
      name: LEAKAGE_SLOPE
      pos:
        line_end: 416
        line_start: 415
        source_file: /src/opus/src/analysis.c
      type_or_value: 2.f
    - item_type: preproc_def
      name: SCALE_COMPENS
      pos:
        line_end: 421
        line_start: 420
        source_file: /src/opus/src/analysis.c
      type_or_value: (1.f/((opus_int32)1<<(15+SIG_SHIFT)))
    structs: []
    typedefs: []
    union: []
- function_names:
  - load_blob
  - free_blob
  - load_blob
  - free_blob
  - print_usage
  - int_to_char
  - char_to_int
  - check_encoder_option
  - check_decoder_option
  - ms_opus_encoder_create
  - ms_opus_decoder_create
  - randint
  - new_random_setting
  - main
  source_file: /src/opus/src/opus_demo.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAX_PACKET
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/opus/src/opus_demo.c
      type_or_value: '15000'
    - item_type: preproc_def
      name: MAX_SAMPLING_RATE
      pos:
        line_end: 49
        line_start: 48
        source_file: /src/opus/src/opus_demo.c
      type_or_value: '96000'
    - item_type: preproc_def
      name: MAX_SAMPLING_RATE
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/opus/src/opus_demo.c
      type_or_value: '48000'
    - item_type: preproc_def
      name: FORMAT_S16_LE
      pos:
        line_end: 158
        line_start: 157
        source_file: /src/opus/src/opus_demo.c
      type_or_value: '0'
    - item_type: preproc_def
      name: FORMAT_S24_LE
      pos:
        line_end: 159
        line_start: 158
        source_file: /src/opus/src/opus_demo.c
      type_or_value: '1'
    - item_type: preproc_def
      name: FORMAT_F32_LE
      pos:
        line_end: 160
        line_start: 159
        source_file: /src/opus/src/opus_demo.c
      type_or_value: '2'
    - item_type: preproc_def
      name: OpusEncoder
      pos:
        line_end: 307
        line_start: 306
        source_file: /src/opus/src/opus_demo.c
      type_or_value: OpusMSEncoder
    - item_type: preproc_def
      name: OpusDecoder
      pos:
        line_end: 308
        line_start: 307
        source_file: /src/opus/src/opus_demo.c
      type_or_value: OpusMSDecoder
    - item_type: preproc_def
      name: opus_encode24
      pos:
        line_end: 309
        line_start: 308
        source_file: /src/opus/src/opus_demo.c
      type_or_value: opus_multistream_encode24
    - item_type: preproc_def
      name: opus_decode24
      pos:
        line_end: 310
        line_start: 309
        source_file: /src/opus/src/opus_demo.c
      type_or_value: opus_multistream_decode24
    - item_type: preproc_def
      name: opus_encoder_ctl
      pos:
        line_end: 311
        line_start: 310
        source_file: /src/opus/src/opus_demo.c
      type_or_value: opus_multistream_encoder_ctl
    - item_type: preproc_def
      name: opus_decoder_ctl
      pos:
        line_end: 312
        line_start: 311
        source_file: /src/opus/src/opus_demo.c
      type_or_value: opus_multistream_decoder_ctl
    - item_type: preproc_def
      name: opus_encoder_create
      pos:
        line_end: 313
        line_start: 312
        source_file: /src/opus/src/opus_demo.c
      type_or_value: ms_opus_encoder_create
    - item_type: preproc_def
      name: opus_decoder_create
      pos:
        line_end: 314
        line_start: 313
        source_file: /src/opus/src/opus_demo.c
      type_or_value: ms_opus_decoder_create
    - item_type: preproc_def
      name: opus_encoder_destroy
      pos:
        line_end: 315
        line_start: 314
        source_file: /src/opus/src/opus_demo.c
      type_or_value: opus_multistream_encoder_destroy
    - item_type: preproc_def
      name: opus_decoder_destroy
      pos:
        line_end: 316
        line_start: 315
        source_file: /src/opus/src/opus_demo.c
      type_or_value: opus_multistream_decoder_destroy
    - item_type: preproc_def
      name: COMPLEXITY_MIN
      pos:
        line_end: 337
        line_start: 336
        source_file: /src/opus/src/opus_demo.c
      type_or_value: '0'
    - item_type: preproc_def
      name: COMPLEXITY_MAX
      pos:
        line_end: 338
        line_start: 337
        source_file: /src/opus/src/opus_demo.c
      type_or_value: '10'
    - item_type: preproc_def
      name: PACKET_LOSS_PERC_MIN
      pos:
        line_end: 340
        line_start: 339
        source_file: /src/opus/src/opus_demo.c
      type_or_value: '0'
    - item_type: preproc_def
      name: PACKET_LOSS_PERC_MAX
      pos:
        line_end: 341
        line_start: 340
        source_file: /src/opus/src/opus_demo.c
      type_or_value: '50'
    - item_type: preproc_def
      name: PACKET_LOSS_PERC_STEP
      pos:
        line_end: 342
        line_start: 341
        source_file: /src/opus/src/opus_demo.c
      type_or_value: '5'
    - item_type: preproc_def
      name: CBR_BITRATE_LIMIT
      pos:
        line_end: 344
        line_start: 343
        source_file: /src/opus/src/opus_demo.c
      type_or_value: '80000'
    - item_type: preproc_def
      name: NUM_BITRATES
      pos:
        line_end: 346
        line_start: 345
        source_file: /src/opus/src/opus_demo.c
      type_or_value: '102'
    structs: []
    typedefs: []
    union:
    - fields:
      - name: i
        type: opus_int32
      - name: f
        type: float
      item_type: union
      name: float_bits
      pos:
        line_end: 166
        line_start: 163
        source_file: /src/opus/src/opus_demo.c
- function_names:
  - opus_encoder_get_size
  - opus_encoder_init
  - gen_toc
  - silk_biquad_res
  - silk_biquad_res
  - hp_cutoff
  - dc_reject
  - dc_reject
  - stereo_fade
  - gain_fade
  - opus_encoder_create
  - estimate_dred_bitrate
  - compute_dred_bitrate
  - user_bitrate_to_bitrate
  - downmix_float
  - downmix_int
  - downmix_int24
  - frame_size_select
  - compute_stereo_width
  - decide_fec
  - compute_silk_rate_for_hybrid
  - compute_equiv_rate
  - is_digital_silence
  - compute_frame_energy
  - compute_frame_energy
  - decide_dtx_mode
  - compute_redundancy_bytes
  - opus_encode_frame_native
  - opus_encode
  - opus_encode
  - opus_encode24
  - opus_encode24
  - opus_encode_float
  - opus_encode_float
  - opus_encoder_ctl
  - opus_encoder_destroy
  source_file: /src/opus/src/opus_encoder.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAX_ENCODER_BUFFER
      pos:
        line_end: 63
        line_start: 62
        source_file: /src/opus/src/opus_encoder.c
      type_or_value: '960'
    - item_type: preproc_def
      name: MAX_ENCODER_BUFFER
      pos:
        line_end: 65
        line_start: 64
        source_file: /src/opus/src/opus_encoder.c
      type_or_value: '480'
    - item_type: preproc_def
      name: PSEUDO_SNR_THRESHOLD
      pos:
        line_end: 68
        line_start: 67
        source_file: /src/opus/src/opus_encoder.c
      type_or_value: '316.23f    '
    - item_type: preproc_def
      name: OPUS_ENCODER_RESET_START
      pos:
        line_end: 111
        line_start: 110
        source_file: /src/opus/src/opus_encoder.c
      type_or_value: stream_channels
    structs:
    - fields:
      - name: XX
        type: opus_val32
      - name: smoothed_width
        type: opus_val16
      - name: max_follower
        type: opus_val16
      item_type: struct
      name: StereoWidthState
      pos:
        line_end: 73
        line_start: 69
        source_file: /src/opus/src/opus_encoder.c
    - fields:
      - name: celt_enc_offset
        type: int
      - name: silk_enc_offset
        type: int
      - name: silk_mode
        type: silk_EncControlStruct
      - name: application
        type: int
      - name: channels
        type: int
      - name: delay_compensation
        type: int
      - name: force_channels
        type: int
      - name: signal_type
        type: int
      - name: user_bandwidth
        type: int
      - name: max_bandwidth
        type: int
      - name: user_forced_mode
        type: int
      - name: voice_ratio
        type: int
      - name: Fs
        type: opus_int32
      - name: use_vbr
        type: int
      - name: vbr_constraint
        type: int
      - name: variable_duration
        type: int
      - name: bitrate_bps
        type: opus_int32
      - name: user_bitrate_bps
        type: opus_int32
      - name: lsb_depth
        type: int
      - name: encoder_buffer
        type: int
      - name: lfe
        type: int
      - name: arch
        type: int
      - name: use_dtx
        type: int
      - name: fec_config
        type: int
      - name: stream_channels
        type: int
      - name: hybrid_stereo_width_Q14
        type: opus_int16
      - name: variable_HP_smth2_Q15
        type: opus_int32
      - name: prev_HB_gain
        type: opus_val16
      - name: hp_mem[4]
        type: opus_val32
      - name: mode
        type: int
      - name: prev_mode
        type: int
      - name: prev_channels
        type: int
      - name: prev_framesize
        type: int
      - name: bandwidth
        type: int
      - name: auto_bandwidth
        type: int
      - name: silk_bw_switch
        type: int
      - name: first
        type: int
      - name: '* energy_masking'
        type: celt_glog
      - name: width_mem
        type: StereoWidthState
      - name: nb_no_activity_ms_Q1
        type: int
      - name: peak_signal_energy
        type: opus_val32
      - name: nonfinal_frame
        type: int
      - name: rangeFinal
        type: opus_uint32
      - name: delay_buffer[MAX_ENCODER_BUFFER*2]
        type: opus_res
      item_type: struct
      name: OpusEncoder
      pos:
        line_end: 145
        line_start: 75
        source_file: /src/opus/src/opus_encoder.c
    typedefs: []
    union: []
- function_names:
  - validate_layout
  - get_left_channel
  - get_right_channel
  - get_mono_channel
  source_file: /src/opus/src/opus_multistream.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - validate_opus_decoder
  - VALIDATE_OPUS_DECODER
  - opus_decoder_get_size
  - opus_decoder_init
  - opus_decoder_create
  - smooth_fade
  - smooth_fade
  - opus_packet_get_mode
  - opus_decode_native
  - opus_decode
  - opus_decode
  - opus_decode24
  - opus_decode24
  - opus_decode_float
  - opus_decode_float
  - opus_decoder_ctl
  - opus_decoder_destroy
  - opus_packet_get_bandwidth
  - opus_packet_get_nb_channels
  - opus_packet_get_nb_frames
  - opus_packet_get_nb_samples
  - opus_packet_has_lbrr
  - opus_decoder_get_nb_samples
  - validate_dred_decoder
  - VALIDATE_DRED_DECODER
  - opus_dred_decoder_get_size
  - dred_decoder_load_model
  - opus_dred_decoder_init
  - opus_dred_decoder_create
  - opus_dred_decoder_destroy
  - opus_dred_decoder_ctl
  - dred_find_payload
  - opus_dred_get_size
  - opus_dred_alloc
  - opus_dred_free
  - opus_dred_parse
  - opus_dred_process
  - opus_decoder_dred_decode
  - opus_decoder_dred_decode24
  - opus_decoder_dred_decode_float
  source_file: /src/opus/src/opus_decoder.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: OPUS_DECODER_RESET_START
      pos:
        line_end: 80
        line_start: 79
        source_file: /src/opus/src/opus_decoder.c
      type_or_value: stream_channels
    - item_type: preproc_def
      name: OPTIONAL_CLIP
      pos:
        line_end: 882
        line_start: 881
        source_file: /src/opus/src/opus_decoder.c
      type_or_value: '0'
    - item_type: preproc_def
      name: OPTIONAL_CLIP
      pos:
        line_end: 884
        line_start: 883
        source_file: /src/opus/src/opus_decoder.c
      type_or_value: '1'
    structs:
    - fields:
      - name: celt_dec_offset
        type: int
      - name: silk_dec_offset
        type: int
      - name: channels
        type: int
      - name: Fs
        type: opus_int32
      - name: DecControl
        type: silk_DecControlStruct
      - name: decode_gain
        type: int
      - name: complexity
        type: int
      - name: ignore_extensions
        type: int
      - name: arch
        type: int
      - name: stream_channels
        type: int
      - name: bandwidth
        type: int
      - name: mode
        type: int
      - name: prev_mode
        type: int
      - name: frame_size
        type: int
      - name: prev_redundancy
        type: int
      - name: last_packet_duration
        type: int
      - name: rangeFinal
        type: opus_uint32
      item_type: struct
      name: OpusDecoder
      pos:
        line_end: 93
        line_start: 64
        source_file: /src/opus/src/opus_decoder.c
    - fields:
      - name: loaded
        type: int
      - name: arch
        type: int
      - name: magic
        type: opus_uint32
      item_type: struct
      name: OpusDREDDecoder
      pos:
        line_end: 1345
        line_start: 1338
        source_file: /src/opus/src/opus_decoder.c
    typedefs: []
    union: []
- function_names:
  - validate_ms_decoder
  - VALIDATE_MS_DECODER
  - opus_multistream_decoder_get_size
  - opus_multistream_decoder_init
  - opus_multistream_decoder_create
  - opus_multistream_packet_validate
  - opus_multistream_decode_native
  - opus_copy_channel_out_float
  - opus_copy_channel_out_short
  - opus_copy_channel_out_int24
  - opus_multistream_decode
  - opus_multistream_decode24
  - opus_multistream_decode_float
  - opus_multistream_decoder_ctl_va_list
  - opus_multistream_decoder_ctl
  - opus_multistream_decoder_destroy
  source_file: /src/opus/src/opus_multistream_decoder.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: OPTIONAL_CLIP
      pos:
        line_end: 390
        line_start: 389
        source_file: /src/opus/src/opus_multistream_decoder.c
      type_or_value: '0'
    - item_type: preproc_def
      name: OPTIONAL_CLIP
      pos:
        line_end: 392
        line_start: 391
        source_file: /src/opus/src/opus_multistream_decoder.c
      type_or_value: '1'
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/src/mlp_data.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/src/tansig_table.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/src/mapping_matrix.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: rows
        type: int
      - name: cols
        type: int
      - name: gain
        type: int
      item_type: struct
      name: MappingMatrix
      pos:
        line_end: 44
        line_start: 38
        source_file: /src/opus/src/mapping_matrix.h
    typedefs: []
    union: []
- function_names:
  - skip_extension_payload
  - skip_extension
  - opus_extension_iterator_init
  - opus_extension_iterator_reset
  - opus_extension_iterator_set_frame_max
  - opus_extension_iterator_next_repeat
  - opus_extension_iterator_next
  - opus_extension_iterator_find
  - opus_packet_extensions_count
  - opus_packet_extensions_count_ext
  - opus_packet_extensions_parse
  - opus_packet_extensions_parse_ext
  - write_extension_payload
  - write_extension
  - opus_packet_extensions_generate
  - main
  source_file: /src/opus/src/extensions.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - MATRIX_INDEX
  - mapping_matrix_get_size
  - mapping_matrix_get_data
  - mapping_matrix_init
  - mapping_matrix_multiply_channel_in_float
  - mapping_matrix_multiply_channel_out_float
  - mapping_matrix_multiply_channel_in_short
  - mapping_matrix_multiply_channel_out_short
  - mapping_matrix_multiply_channel_in_int24
  - mapping_matrix_multiply_channel_out_int24
  source_file: /src/opus/src/mapping_matrix.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - ms_get_preemph_mem
  - ms_get_window_mem
  - validate_ambisonics
  - validate_encoder_layout
  - channel_pos
  - logSum
  - logSum
  - surround_analysis
  - opus_multistream_encoder_get_size
  - opus_multistream_surround_encoder_get_size
  - opus_multistream_encoder_init_impl
  - opus_multistream_encoder_init
  - opus_multistream_surround_encoder_init
  - opus_multistream_encoder_create
  - opus_multistream_surround_encoder_create
  - surround_rate_allocation
  - ambisonics_rate_allocation
  - rate_allocation
  - opus_multistream_encode_native
  - opus_copy_channel_in_float
  - opus_copy_channel_in_short
  - opus_copy_channel_in_int24
  - opus_multistream_encode
  - opus_multistream_encode24
  - opus_multistream_encode_float
  - opus_multistream_encoder_ctl_va_list
  - opus_multistream_encoder_ctl
  - opus_multistream_encoder_destroy
  source_file: /src/opus/src/opus_multistream_encoder.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAX_OVERLAP
      pos:
        line_end: 65
        line_start: 64
        source_file: /src/opus/src/opus_multistream_encoder.c
      type_or_value: '240'
    - item_type: preproc_def
      name: MAX_OVERLAP
      pos:
        line_end: 67
        line_start: 66
        source_file: /src/opus/src/opus_multistream_encoder.c
      type_or_value: '120'
    - item_type: preproc_def
      name: MS_FRAME_TMP
      pos:
        line_end: 836
        line_start: 835
        source_file: /src/opus/src/opus_multistream_encoder.c
      type_or_value: (6*QEXT_PACKET_SIZE_CAP+12)
    - item_type: preproc_def
      name: MS_FRAME_TMP
      pos:
        line_end: 838
        line_start: 837
        source_file: /src/opus/src/opus_multistream_encoder.c
      type_or_value: (6*1275+12)
    structs:
    - fields:
      - name: nb_streams
        type: int
      - name: nb_coupled_streams
        type: int
      - name: mapping[8]
        type: unsigned char
      item_type: struct
      name: VorbisLayout
      pos:
        line_end: 49
        line_start: 45
        source_file: /src/opus/src/opus_multistream_encoder.c
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/include/opus_custom.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: OPUS_CUSTOM_EXPORT
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/opus/include/opus_custom.h
      type_or_value: OPUS_EXPORT
    - item_type: preproc_def
      name: OPUS_CUSTOM_EXPORT_STATIC
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/opus/include/opus_custom.h
      type_or_value: OPUS_EXPORT
    - item_type: preproc_def
      name: OPUS_CUSTOM_EXPORT_STATIC
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/opus/include/opus_custom.h
      type_or_value: static OPUS_INLINE
    structs: []
    typedefs:
    - item_type: typedef
      name: OpusCustomEncoder
      pos:
        line_end: 94
        line_start: 94
        source_file: /src/opus/include/opus_custom.h
      type: OpusCustomEncoder
    - item_type: typedef
      name: OpusCustomDecoder
      pos:
        line_end: 101
        line_start: 101
        source_file: /src/opus/include/opus_custom.h
      type: OpusCustomDecoder
    - item_type: typedef
      name: OpusCustomMode
      pos:
        line_end: 110
        line_start: 110
        source_file: /src/opus/include/opus_custom.h
      type: OpusCustomMode
    union: []
- function_names:
  - OPUS_PROJECTION_GET_DEMIXING_MATRIX_GAIN
  - OPUS_PROJECTION_GET_DEMIXING_MATRIX_SIZE
  - OPUS_PROJECTION_GET_DEMIXING_MATRIX
  source_file: /src/opus/include/opus_projection.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: OPUS_PROJECTION_GET_DEMIXING_MATRIX_GAIN_REQUEST
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/opus/include/opus_projection.h
      type_or_value: '6001'
    - item_type: preproc_def
      name: OPUS_PROJECTION_GET_DEMIXING_MATRIX_SIZE_REQUEST
      pos:
        line_end: 49
        line_start: 48
        source_file: /src/opus/include/opus_projection.h
      type_or_value: '6003'
    - item_type: preproc_def
      name: OPUS_PROJECTION_GET_DEMIXING_MATRIX_REQUEST
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/opus/include/opus_projection.h
      type_or_value: '6005'
    structs: []
    typedefs:
    - item_type: typedef
      name: OpusProjectionEncoder
      pos:
        line_end: 99
        line_start: 99
        source_file: /src/opus/include/opus_projection.h
      type: OpusProjectionEncoder
    - item_type: typedef
      name: OpusProjectionDecoder
      pos:
        line_end: 108
        line_start: 108
        source_file: /src/opus/include/opus_projection.h
      type: OpusProjectionDecoder
    union: []
- function_names:
  - opus_check_encstate_ptr
  - opus_check_decstate_ptr
  - OPUS_MULTISTREAM_GET_ENCODER_STATE
  - OPUS_MULTISTREAM_GET_DECODER_STATE
  source_file: /src/opus/include/opus_multistream.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: OPUS_MULTISTREAM_GET_ENCODER_STATE_REQUEST
      pos:
        line_end: 55
        line_start: 54
        source_file: /src/opus/include/opus_multistream.h
      type_or_value: '5120'
    - item_type: preproc_def
      name: OPUS_MULTISTREAM_GET_DECODER_STATE_REQUEST
      pos:
        line_end: 56
        line_start: 55
        source_file: /src/opus/include/opus_multistream.h
      type_or_value: '5122'
    structs: []
    typedefs:
    - item_type: typedef
      name: OpusMSEncoder
      pos:
        line_end: 174
        line_start: 174
        source_file: /src/opus/include/opus_multistream.h
      type: OpusMSEncoder
    - item_type: typedef
      name: OpusMSDecoder
      pos:
        line_end: 182
        line_start: 182
        source_file: /src/opus/include/opus_multistream.h
      type: OpusMSDecoder
    union: []
- function_names: []
  source_file: /src/opus/include/opus_types.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: opus_int
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/opus/include/opus_types.h
      type_or_value: 'int                     '
    - item_type: preproc_def
      name: opus_int64
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/opus/include/opus_types.h
      type_or_value: long long
    - item_type: preproc_def
      name: opus_int8
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/opus/include/opus_types.h
      type_or_value: signed char
    - item_type: preproc_def
      name: opus_uint
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/opus/include/opus_types.h
      type_or_value: 'unsigned int            '
    - item_type: preproc_def
      name: opus_uint64
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/opus/include/opus_types.h
      type_or_value: unsigned long long
    - item_type: preproc_def
      name: opus_uint8
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/opus/include/opus_types.h
      type_or_value: unsigned char
    structs: []
    typedefs:
    - item_type: typedef
      name: opus_int8
      pos:
        line_end: 50
        line_start: 50
        source_file: /src/opus/include/opus_types.h
      type: int8_t
    - item_type: typedef
      name: opus_uint8
      pos:
        line_end: 51
        line_start: 51
        source_file: /src/opus/include/opus_types.h
      type: uint8_t
    - item_type: typedef
      name: opus_int16
      pos:
        line_end: 52
        line_start: 52
        source_file: /src/opus/include/opus_types.h
      type: int16_t
    - item_type: typedef
      name: opus_uint16
      pos:
        line_end: 53
        line_start: 53
        source_file: /src/opus/include/opus_types.h
      type: uint16_t
    - item_type: typedef
      name: opus_int32
      pos:
        line_end: 54
        line_start: 54
        source_file: /src/opus/include/opus_types.h
      type: int32_t
    - item_type: typedef
      name: opus_uint32
      pos:
        line_end: 55
        line_start: 55
        source_file: /src/opus/include/opus_types.h
      type: uint32_t
    - item_type: typedef
      name: opus_int64
      pos:
        line_end: 56
        line_start: 56
        source_file: /src/opus/include/opus_types.h
      type: int64_t
    - item_type: typedef
      name: opus_uint64
      pos:
        line_end: 57
        line_start: 57
        source_file: /src/opus/include/opus_types.h
      type: uint64_t
    - item_type: typedef
      name: opus_int32
      pos:
        line_end: 62
        line_start: 62
        source_file: /src/opus/include/opus_types.h
      type: _G_int32_t
    - item_type: typedef
      name: opus_uint32
      pos:
        line_end: 63
        line_start: 63
        source_file: /src/opus/include/opus_types.h
      type: _G_uint32_t
    - item_type: typedef
      name: opus_int16
      pos:
        line_end: 64
        line_start: 64
        source_file: /src/opus/include/opus_types.h
      type: _G_int16
    - item_type: typedef
      name: opus_uint16
      pos:
        line_end: 65
        line_start: 65
        source_file: /src/opus/include/opus_types.h
      type: _G_uint16
    - item_type: typedef
      name: opus_int16
      pos:
        line_end: 67
        line_start: 67
        source_file: /src/opus/include/opus_types.h
      type: short
    - item_type: typedef
      name: opus_uint16
      pos:
        line_end: 68
        line_start: 68
        source_file: /src/opus/include/opus_types.h
      type: unsigned short
    - item_type: typedef
      name: opus_int32
      pos:
        line_end: 69
        line_start: 69
        source_file: /src/opus/include/opus_types.h
      type: int
    - item_type: typedef
      name: opus_uint32
      pos:
        line_end: 70
        line_start: 70
        source_file: /src/opus/include/opus_types.h
      type: unsigned int
    - item_type: typedef
      name: opus_int32
      pos:
        line_end: 72
        line_start: 72
        source_file: /src/opus/include/opus_types.h
      type: int
    - item_type: typedef
      name: opus_uint32
      pos:
        line_end: 73
        line_start: 73
        source_file: /src/opus/include/opus_types.h
      type: unsigned int
    - item_type: typedef
      name: opus_int16
      pos:
        line_end: 74
        line_start: 74
        source_file: /src/opus/include/opus_types.h
      type: short
    - item_type: typedef
      name: opus_uint16
      pos:
        line_end: 75
        line_start: 75
        source_file: /src/opus/include/opus_types.h
      type: unsigned short
    - item_type: typedef
      name: opus_int32
      pos:
        line_end: 78
        line_start: 78
        source_file: /src/opus/include/opus_types.h
      type: __int32
    - item_type: typedef
      name: opus_uint32
      pos:
        line_end: 79
        line_start: 79
        source_file: /src/opus/include/opus_types.h
      type: unsigned __int32
    - item_type: typedef
      name: opus_int16
      pos:
        line_end: 80
        line_start: 80
        source_file: /src/opus/include/opus_types.h
      type: __int16
    - item_type: typedef
      name: opus_uint16
      pos:
        line_end: 81
        line_start: 81
        source_file: /src/opus/include/opus_types.h
      type: unsigned __int16
    - item_type: typedef
      name: opus_int16
      pos:
        line_end: 87
        line_start: 87
        source_file: /src/opus/include/opus_types.h
      type: SInt16
    - item_type: typedef
      name: opus_uint16
      pos:
        line_end: 88
        line_start: 88
        source_file: /src/opus/include/opus_types.h
      type: UInt16
    - item_type: typedef
      name: opus_int32
      pos:
        line_end: 89
        line_start: 89
        source_file: /src/opus/include/opus_types.h
      type: SInt32
    - item_type: typedef
      name: opus_uint32
      pos:
        line_end: 90
        line_start: 90
        source_file: /src/opus/include/opus_types.h
      type: UInt32
    - item_type: typedef
      name: opus_int16
      pos:
        line_end: 95
        line_start: 95
        source_file: /src/opus/include/opus_types.h
      type: int16_t
    - item_type: typedef
      name: opus_uint16
      pos:
        line_end: 96
        line_start: 96
        source_file: /src/opus/include/opus_types.h
      type: u_int16_t
    - item_type: typedef
      name: opus_int32
      pos:
        line_end: 97
        line_start: 97
        source_file: /src/opus/include/opus_types.h
      type: int32_t
    - item_type: typedef
      name: opus_uint32
      pos:
        line_end: 98
        line_start: 98
        source_file: /src/opus/include/opus_types.h
      type: u_int32_t
    - item_type: typedef
      name: opus_int16
      pos:
        line_end: 104
        line_start: 104
        source_file: /src/opus/include/opus_types.h
      type: int16
    - item_type: typedef
      name: opus_uint16
      pos:
        line_end: 105
        line_start: 105
        source_file: /src/opus/include/opus_types.h
      type: u_int16
    - item_type: typedef
      name: opus_int32
      pos:
        line_end: 106
        line_start: 106
        source_file: /src/opus/include/opus_types.h
      type: int32_t
    - item_type: typedef
      name: opus_uint32
      pos:
        line_end: 107
        line_start: 107
        source_file: /src/opus/include/opus_types.h
      type: u_int32_t
    - item_type: typedef
      name: opus_int16
      pos:
        line_end: 112
        line_start: 112
        source_file: /src/opus/include/opus_types.h
      type: short
    - item_type: typedef
      name: opus_uint16
      pos:
        line_end: 113
        line_start: 113
        source_file: /src/opus/include/opus_types.h
      type: unsigned short
    - item_type: typedef
      name: opus_int32
      pos:
        line_end: 114
        line_start: 114
        source_file: /src/opus/include/opus_types.h
      type: int
    - item_type: typedef
      name: opus_uint32
      pos:
        line_end: 115
        line_start: 115
        source_file: /src/opus/include/opus_types.h
      type: unsigned int
    - item_type: typedef
      name: opus_int16
      pos:
        line_end: 120
        line_start: 120
        source_file: /src/opus/include/opus_types.h
      type: short
    - item_type: typedef
      name: opus_uint16
      pos:
        line_end: 121
        line_start: 121
        source_file: /src/opus/include/opus_types.h
      type: unsigned short
    - item_type: typedef
      name: opus_int32
      pos:
        line_end: 122
        line_start: 122
        source_file: /src/opus/include/opus_types.h
      type: int
    - item_type: typedef
      name: opus_uint32
      pos:
        line_end: 123
        line_start: 123
        source_file: /src/opus/include/opus_types.h
      type: unsigned int
    - item_type: typedef
      name: opus_int32
      pos:
        line_end: 128
        line_start: 128
        source_file: /src/opus/include/opus_types.h
      type: int
    - item_type: typedef
      name: opus_uint32
      pos:
        line_end: 129
        line_start: 129
        source_file: /src/opus/include/opus_types.h
      type: unsigned
    - item_type: typedef
      name: opus_int16
      pos:
        line_end: 130
        line_start: 130
        source_file: /src/opus/include/opus_types.h
      type: short
    - item_type: typedef
      name: opus_uint16
      pos:
        line_end: 131
        line_start: 131
        source_file: /src/opus/include/opus_types.h
      type: unsigned short
    - item_type: typedef
      name: opus_int16
      pos:
        line_end: 136
        line_start: 136
        source_file: /src/opus/include/opus_types.h
      type: signed short
    - item_type: typedef
      name: opus_uint16
      pos:
        line_end: 137
        line_start: 137
        source_file: /src/opus/include/opus_types.h
      type: unsigned short
    - item_type: typedef
      name: opus_int32
      pos:
        line_end: 138
        line_start: 138
        source_file: /src/opus/include/opus_types.h
      type: signed int
    - item_type: typedef
      name: opus_uint32
      pos:
        line_end: 139
        line_start: 139
        source_file: /src/opus/include/opus_types.h
      type: unsigned int
    - item_type: typedef
      name: opus_int16
      pos:
        line_end: 143
        line_start: 143
        source_file: /src/opus/include/opus_types.h
      type: short
    - item_type: typedef
      name: opus_uint16
      pos:
        line_end: 144
        line_start: 144
        source_file: /src/opus/include/opus_types.h
      type: unsigned short
    - item_type: typedef
      name: opus_int32
      pos:
        line_end: 145
        line_start: 145
        source_file: /src/opus/include/opus_types.h
      type: long
    - item_type: typedef
      name: opus_uint32
      pos:
        line_end: 146
        line_start: 146
        source_file: /src/opus/include/opus_types.h
      type: unsigned long
    - item_type: typedef
      name: opus_int16
      pos:
        line_end: 150
        line_start: 150
        source_file: /src/opus/include/opus_types.h
      type: short
    - item_type: typedef
      name: opus_uint16
      pos:
        line_end: 151
        line_start: 151
        source_file: /src/opus/include/opus_types.h
      type: unsigned short
    - item_type: typedef
      name: opus_int32
      pos:
        line_end: 152
        line_start: 152
        source_file: /src/opus/include/opus_types.h
      type: int
    - item_type: typedef
      name: opus_uint32
      pos:
        line_end: 153
        line_start: 153
        source_file: /src/opus/include/opus_types.h
      type: unsigned int
    - item_type: typedef
      name: opus_int16
      pos:
        line_end: 158
        line_start: 158
        source_file: /src/opus/include/opus_types.h
      type: short
    - item_type: typedef
      name: opus_uint16
      pos:
        line_end: 159
        line_start: 159
        source_file: /src/opus/include/opus_types.h
      type: unsigned short
    - item_type: typedef
      name: opus_int32
      pos:
        line_end: 160
        line_start: 160
        source_file: /src/opus/include/opus_types.h
      type: int
    - item_type: typedef
      name: opus_uint32
      pos:
        line_end: 161
        line_start: 161
        source_file: /src/opus/include/opus_types.h
      type: unsigned int
    union: []
- function_names:
  - OPUS_GNUC_PREREQ
  - OPUS_GNUC_PREREQ
  - OPUS_ARG_NONNULL
  - opus_check_int
  - opus_check_int_ptr
  - opus_check_uint_ptr
  - opus_check_uint8_ptr
  - opus_check_val16_ptr
  - opus_check_void_ptr
  - opus_check_int_ptr
  - opus_check_uint_ptr
  - opus_check_uint8_ptr
  - opus_check_val16_ptr
  - opus_check_void_ptr
  - OPUS_SET_COMPLEXITY
  - OPUS_GET_COMPLEXITY
  - OPUS_SET_BITRATE
  - OPUS_GET_BITRATE
  - OPUS_SET_VBR
  - OPUS_GET_VBR
  - OPUS_SET_VBR_CONSTRAINT
  - OPUS_GET_VBR_CONSTRAINT
  - OPUS_SET_FORCE_CHANNELS
  - OPUS_GET_FORCE_CHANNELS
  - OPUS_SET_MAX_BANDWIDTH
  - OPUS_GET_MAX_BANDWIDTH
  - OPUS_SET_BANDWIDTH
  - OPUS_SET_SIGNAL
  - OPUS_GET_SIGNAL
  - OPUS_SET_APPLICATION
  - OPUS_GET_APPLICATION
  - OPUS_GET_LOOKAHEAD
  - OPUS_SET_INBAND_FEC
  - OPUS_GET_INBAND_FEC
  - OPUS_SET_PACKET_LOSS_PERC
  - OPUS_GET_PACKET_LOSS_PERC
  - OPUS_SET_DTX
  - OPUS_GET_DTX
  - OPUS_SET_LSB_DEPTH
  - OPUS_GET_LSB_DEPTH
  - OPUS_SET_EXPERT_FRAME_DURATION
  - OPUS_GET_EXPERT_FRAME_DURATION
  - OPUS_SET_PREDICTION_DISABLED
  - OPUS_GET_PREDICTION_DISABLED
  - OPUS_SET_DRED_DURATION
  - OPUS_GET_DRED_DURATION
  - OPUS_SET_DNN_BLOB
  - OPUS_SET_QEXT
  - OPUS_GET_QEXT
  - OPUS_GET_FINAL_RANGE
  - OPUS_GET_BANDWIDTH
  - OPUS_GET_SAMPLE_RATE
  - OPUS_SET_PHASE_INVERSION_DISABLED
  - OPUS_GET_PHASE_INVERSION_DISABLED
  - OPUS_GET_IN_DTX
  - OPUS_SET_GAIN
  - OPUS_GET_GAIN
  - OPUS_GET_LAST_PACKET_DURATION
  - OPUS_GET_PITCH
  - OPUS_SET_OSCE_BWE
  - OPUS_GET_OSCE_BWE
  - OPUS_SET_IGNORE_EXTENSIONS
  - OPUS_GET_IGNORE_EXTENSIONS
  source_file: /src/opus/include/opus_defines.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: OPUS_OK
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '0'
    - item_type: preproc_def
      name: OPUS_BAD_ARG
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '-1'
    - item_type: preproc_def
      name: OPUS_BUFFER_TOO_SMALL
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '-2'
    - item_type: preproc_def
      name: OPUS_INTERNAL_ERROR
      pos:
        line_end: 52
        line_start: 51
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '-3'
    - item_type: preproc_def
      name: OPUS_INVALID_PACKET
      pos:
        line_end: 54
        line_start: 53
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '-4'
    - item_type: preproc_def
      name: OPUS_UNIMPLEMENTED
      pos:
        line_end: 56
        line_start: 55
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '-5'
    - item_type: preproc_def
      name: OPUS_INVALID_STATE
      pos:
        line_end: 58
        line_start: 57
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '-6'
    - item_type: preproc_def
      name: OPUS_ALLOC_FAIL
      pos:
        line_end: 60
        line_start: 59
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '-7'
    - item_type: preproc_def
      name: OPUS_EXPORT
      pos:
        line_end: 69
        line_start: 68
        source_file: /src/opus/include/opus_defines.h
      type_or_value: __declspec(dllexport)
    - item_type: preproc_def
      name: OPUS_EXPORT
      pos:
        line_end: 74
        line_start: 73
        source_file: /src/opus/include/opus_defines.h
      type_or_value: __attribute__ ((visibility ("default")))
    - item_type: preproc_def
      name: OPUS_RESTRICT
      pos:
        line_end: 91
        line_start: 90
        source_file: /src/opus/include/opus_defines.h
      type_or_value: __restrict__
    - item_type: preproc_def
      name: OPUS_RESTRICT
      pos:
        line_end: 93
        line_start: 92
        source_file: /src/opus/include/opus_defines.h
      type_or_value: __restrict
    - item_type: preproc_def
      name: OPUS_RESTRICT
      pos:
        line_end: 98
        line_start: 97
        source_file: /src/opus/include/opus_defines.h
      type_or_value: restrict
    - item_type: preproc_def
      name: OPUS_INLINE
      pos:
        line_end: 103
        line_start: 102
        source_file: /src/opus/include/opus_defines.h
      type_or_value: __inline__
    - item_type: preproc_def
      name: OPUS_INLINE
      pos:
        line_end: 105
        line_start: 104
        source_file: /src/opus/include/opus_defines.h
      type_or_value: __inline
    - item_type: preproc_def
      name: OPUS_INLINE
      pos:
        line_end: 110
        line_start: 109
        source_file: /src/opus/include/opus_defines.h
      type_or_value: inline
    - item_type: preproc_def
      name: OPUS_WARN_UNUSED_RESULT
      pos:
        line_end: 117
        line_start: 116
        source_file: /src/opus/include/opus_defines.h
      type_or_value: __attribute__ ((__warn_unused_result__))
    - item_type: preproc_def
      name: OPUS_SET_APPLICATION_REQUEST
      pos:
        line_end: 130
        line_start: 129
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4000'
    - item_type: preproc_def
      name: OPUS_GET_APPLICATION_REQUEST
      pos:
        line_end: 131
        line_start: 130
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4001'
    - item_type: preproc_def
      name: OPUS_SET_BITRATE_REQUEST
      pos:
        line_end: 132
        line_start: 131
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4002'
    - item_type: preproc_def
      name: OPUS_GET_BITRATE_REQUEST
      pos:
        line_end: 133
        line_start: 132
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4003'
    - item_type: preproc_def
      name: OPUS_SET_MAX_BANDWIDTH_REQUEST
      pos:
        line_end: 134
        line_start: 133
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4004'
    - item_type: preproc_def
      name: OPUS_GET_MAX_BANDWIDTH_REQUEST
      pos:
        line_end: 135
        line_start: 134
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4005'
    - item_type: preproc_def
      name: OPUS_SET_VBR_REQUEST
      pos:
        line_end: 136
        line_start: 135
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4006'
    - item_type: preproc_def
      name: OPUS_GET_VBR_REQUEST
      pos:
        line_end: 137
        line_start: 136
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4007'
    - item_type: preproc_def
      name: OPUS_SET_BANDWIDTH_REQUEST
      pos:
        line_end: 138
        line_start: 137
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4008'
    - item_type: preproc_def
      name: OPUS_GET_BANDWIDTH_REQUEST
      pos:
        line_end: 139
        line_start: 138
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4009'
    - item_type: preproc_def
      name: OPUS_SET_COMPLEXITY_REQUEST
      pos:
        line_end: 140
        line_start: 139
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4010'
    - item_type: preproc_def
      name: OPUS_GET_COMPLEXITY_REQUEST
      pos:
        line_end: 141
        line_start: 140
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4011'
    - item_type: preproc_def
      name: OPUS_SET_INBAND_FEC_REQUEST
      pos:
        line_end: 142
        line_start: 141
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4012'
    - item_type: preproc_def
      name: OPUS_GET_INBAND_FEC_REQUEST
      pos:
        line_end: 143
        line_start: 142
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4013'
    - item_type: preproc_def
      name: OPUS_SET_PACKET_LOSS_PERC_REQUEST
      pos:
        line_end: 144
        line_start: 143
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4014'
    - item_type: preproc_def
      name: OPUS_GET_PACKET_LOSS_PERC_REQUEST
      pos:
        line_end: 145
        line_start: 144
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4015'
    - item_type: preproc_def
      name: OPUS_SET_DTX_REQUEST
      pos:
        line_end: 146
        line_start: 145
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4016'
    - item_type: preproc_def
      name: OPUS_GET_DTX_REQUEST
      pos:
        line_end: 147
        line_start: 146
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4017'
    - item_type: preproc_def
      name: OPUS_SET_VBR_CONSTRAINT_REQUEST
      pos:
        line_end: 148
        line_start: 147
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4020'
    - item_type: preproc_def
      name: OPUS_GET_VBR_CONSTRAINT_REQUEST
      pos:
        line_end: 149
        line_start: 148
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4021'
    - item_type: preproc_def
      name: OPUS_SET_FORCE_CHANNELS_REQUEST
      pos:
        line_end: 150
        line_start: 149
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4022'
    - item_type: preproc_def
      name: OPUS_GET_FORCE_CHANNELS_REQUEST
      pos:
        line_end: 151
        line_start: 150
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4023'
    - item_type: preproc_def
      name: OPUS_SET_SIGNAL_REQUEST
      pos:
        line_end: 152
        line_start: 151
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4024'
    - item_type: preproc_def
      name: OPUS_GET_SIGNAL_REQUEST
      pos:
        line_end: 153
        line_start: 152
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4025'
    - item_type: preproc_def
      name: OPUS_GET_LOOKAHEAD_REQUEST
      pos:
        line_end: 154
        line_start: 153
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4027'
    - item_type: preproc_def
      name: OPUS_GET_SAMPLE_RATE_REQUEST
      pos:
        line_end: 156
        line_start: 155
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4029'
    - item_type: preproc_def
      name: OPUS_GET_FINAL_RANGE_REQUEST
      pos:
        line_end: 157
        line_start: 156
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4031'
    - item_type: preproc_def
      name: OPUS_GET_PITCH_REQUEST
      pos:
        line_end: 158
        line_start: 157
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4033'
    - item_type: preproc_def
      name: OPUS_SET_GAIN_REQUEST
      pos:
        line_end: 159
        line_start: 158
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4034'
    - item_type: preproc_def
      name: OPUS_GET_GAIN_REQUEST
      pos:
        line_end: 160
        line_start: 159
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4045 '
    - item_type: preproc_def
      name: OPUS_SET_LSB_DEPTH_REQUEST
      pos:
        line_end: 161
        line_start: 160
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4036'
    - item_type: preproc_def
      name: OPUS_GET_LSB_DEPTH_REQUEST
      pos:
        line_end: 162
        line_start: 161
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4037'
    - item_type: preproc_def
      name: OPUS_GET_LAST_PACKET_DURATION_REQUEST
      pos:
        line_end: 163
        line_start: 162
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4039'
    - item_type: preproc_def
      name: OPUS_SET_EXPERT_FRAME_DURATION_REQUEST
      pos:
        line_end: 164
        line_start: 163
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4040'
    - item_type: preproc_def
      name: OPUS_GET_EXPERT_FRAME_DURATION_REQUEST
      pos:
        line_end: 165
        line_start: 164
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4041'
    - item_type: preproc_def
      name: OPUS_SET_PREDICTION_DISABLED_REQUEST
      pos:
        line_end: 166
        line_start: 165
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4042'
    - item_type: preproc_def
      name: OPUS_GET_PREDICTION_DISABLED_REQUEST
      pos:
        line_end: 167
        line_start: 166
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4043'
    - item_type: preproc_def
      name: OPUS_SET_PHASE_INVERSION_DISABLED_REQUEST
      pos:
        line_end: 169
        line_start: 168
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4046'
    - item_type: preproc_def
      name: OPUS_GET_PHASE_INVERSION_DISABLED_REQUEST
      pos:
        line_end: 170
        line_start: 169
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4047'
    - item_type: preproc_def
      name: OPUS_GET_IN_DTX_REQUEST
      pos:
        line_end: 171
        line_start: 170
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4049'
    - item_type: preproc_def
      name: OPUS_SET_DRED_DURATION_REQUEST
      pos:
        line_end: 172
        line_start: 171
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4050'
    - item_type: preproc_def
      name: OPUS_GET_DRED_DURATION_REQUEST
      pos:
        line_end: 173
        line_start: 172
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4051'
    - item_type: preproc_def
      name: OPUS_SET_DNN_BLOB_REQUEST
      pos:
        line_end: 174
        line_start: 173
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4052'
    - item_type: preproc_def
      name: OPUS_SET_OSCE_BWE_REQUEST
      pos:
        line_end: 176
        line_start: 175
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4054'
    - item_type: preproc_def
      name: OPUS_GET_OSCE_BWE_REQUEST
      pos:
        line_end: 177
        line_start: 176
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4055'
    - item_type: preproc_def
      name: OPUS_SET_QEXT_REQUEST
      pos:
        line_end: 178
        line_start: 177
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4056'
    - item_type: preproc_def
      name: OPUS_GET_QEXT_REQUEST
      pos:
        line_end: 179
        line_start: 178
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4057'
    - item_type: preproc_def
      name: OPUS_SET_IGNORE_EXTENSIONS_REQUEST
      pos:
        line_end: 180
        line_start: 179
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4058'
    - item_type: preproc_def
      name: OPUS_GET_IGNORE_EXTENSIONS_REQUEST
      pos:
        line_end: 181
        line_start: 180
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4059'
    - item_type: preproc_def
      name: OPUS_AUTO
      pos:
        line_end: 211
        line_start: 210
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '-1000 '
    - item_type: preproc_def
      name: OPUS_BITRATE_MAX
      pos:
        line_end: 212
        line_start: 211
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '-1 '
    - item_type: preproc_def
      name: OPUS_APPLICATION_VOIP
      pos:
        line_end: 216
        line_start: 215
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '2048'
    - item_type: preproc_def
      name: OPUS_APPLICATION_AUDIO
      pos:
        line_end: 219
        line_start: 218
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '2049'
    - item_type: preproc_def
      name: OPUS_APPLICATION_RESTRICTED_LOWDELAY
      pos:
        line_end: 222
        line_start: 221
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '2051'
    - item_type: preproc_def
      name: OPUS_APPLICATION_RESTRICTED_SILK
      pos:
        line_end: 224
        line_start: 223
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '2052'
    - item_type: preproc_def
      name: OPUS_APPLICATION_RESTRICTED_CELT
      pos:
        line_end: 226
        line_start: 225
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '2053'
    - item_type: preproc_def
      name: OPUS_SIGNAL_VOICE
      pos:
        line_end: 228
        line_start: 227
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '3001 '
    - item_type: preproc_def
      name: OPUS_SIGNAL_MUSIC
      pos:
        line_end: 229
        line_start: 228
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '3002 '
    - item_type: preproc_def
      name: OPUS_BANDWIDTH_NARROWBAND
      pos:
        line_end: 230
        line_start: 229
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '1101 '
    - item_type: preproc_def
      name: OPUS_BANDWIDTH_MEDIUMBAND
      pos:
        line_end: 231
        line_start: 230
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '1102 '
    - item_type: preproc_def
      name: OPUS_BANDWIDTH_WIDEBAND
      pos:
        line_end: 232
        line_start: 231
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '1103 '
    - item_type: preproc_def
      name: OPUS_BANDWIDTH_SUPERWIDEBAND
      pos:
        line_end: 233
        line_start: 232
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '1104 '
    - item_type: preproc_def
      name: OPUS_BANDWIDTH_FULLBAND
      pos:
        line_end: 234
        line_start: 233
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '1105 '
    - item_type: preproc_def
      name: OPUS_FRAMESIZE_ARG
      pos:
        line_end: 236
        line_start: 235
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '5000 '
    - item_type: preproc_def
      name: OPUS_FRAMESIZE_2_5_MS
      pos:
        line_end: 237
        line_start: 236
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '5001 '
    - item_type: preproc_def
      name: OPUS_FRAMESIZE_5_MS
      pos:
        line_end: 238
        line_start: 237
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '5002 '
    - item_type: preproc_def
      name: OPUS_FRAMESIZE_10_MS
      pos:
        line_end: 239
        line_start: 238
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '5003 '
    - item_type: preproc_def
      name: OPUS_FRAMESIZE_20_MS
      pos:
        line_end: 240
        line_start: 239
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '5004 '
    - item_type: preproc_def
      name: OPUS_FRAMESIZE_40_MS
      pos:
        line_end: 241
        line_start: 240
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '5005 '
    - item_type: preproc_def
      name: OPUS_FRAMESIZE_60_MS
      pos:
        line_end: 242
        line_start: 241
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '5006 '
    - item_type: preproc_def
      name: OPUS_FRAMESIZE_80_MS
      pos:
        line_end: 243
        line_start: 242
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '5007 '
    - item_type: preproc_def
      name: OPUS_FRAMESIZE_100_MS
      pos:
        line_end: 244
        line_start: 243
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '5008 '
    - item_type: preproc_def
      name: OPUS_FRAMESIZE_120_MS
      pos:
        line_end: 245
        line_start: 244
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '5009 '
    - item_type: preproc_def
      name: OPUS_RESET_STATE
      pos:
        line_end: 710
        line_start: 709
        source_file: /src/opus/include/opus_defines.h
      type_or_value: '4028'
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/include/opus.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs:
    - item_type: typedef
      name: OpusEncoder
      pos:
        line_end: 163
        line_start: 163
        source_file: /src/opus/include/opus.h
      type: OpusEncoder
    - item_type: typedef
      name: OpusDecoder
      pos:
        line_end: 437
        line_start: 437
        source_file: /src/opus/include/opus.h
      type: OpusDecoder
    - item_type: typedef
      name: OpusDREDDecoder
      pos:
        line_end: 444
        line_start: 444
        source_file: /src/opus/include/opus.h
      type: OpusDREDDecoder
    - item_type: typedef
      name: OpusDRED
      pos:
        line_end: 452
        line_start: 452
        source_file: /src/opus/include/opus.h
      type: OpusDRED
    - item_type: typedef
      name: OpusRepacketizer
      pos:
        line_end: 947
        line_start: 947
        source_file: /src/opus/include/opus.h
      type: OpusRepacketizer
    union: []
- function_names:
  - silk_VAD_Init
  - silk_VAD_GetSA_Q8_c
  - silk_VAD_GetNoiseLevels
  source_file: /src/opus/silk/VAD.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_encode_indices
  source_file: /src/opus/silk/encode_indices.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_NLSF_VQ_weights_laroia
  source_file: /src/opus/silk/NLSF_VQ_weights_laroia.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_stereo_decode_pred
  - silk_stereo_decode_mid_only
  source_file: /src/opus/silk/stereo_decode_pred.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_sum_sqr_shift
  source_file: /src/opus/silk/sum_sqr_shift.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_CNG_exc
  - silk_CNG_Reset
  - silk_CNG
  source_file: /src/opus/silk/CNG.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_control_audio_bandwidth
  source_file: /src/opus/silk/control_audio_bandwidth.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_assert
  - silk_fatal
  - _silk_fatal
  - silk_assert
  - silk_assert
  source_file: /src/opus/silk/typedef.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: silk_float
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/opus/silk/typedef.h
      type_or_value: float
    - item_type: preproc_def
      name: silk_float_MAX
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/opus/silk/typedef.h
      type_or_value: FLT_MAX
    - item_type: preproc_def
      name: silk_int64_MAX
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/opus/silk/typedef.h
      type_or_value: '((opus_int64)0x7FFFFFFFFFFFFFFFLL)   '
    - item_type: preproc_def
      name: silk_int64_MIN
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/opus/silk/typedef.h
      type_or_value: '((opus_int64)0x8000000000000000LL)   '
    - item_type: preproc_def
      name: silk_int32_MAX
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/opus/silk/typedef.h
      type_or_value: '0x7FFFFFFF                           '
    - item_type: preproc_def
      name: silk_int32_MIN
      pos:
        line_end: 43
        line_start: 42
        source_file: /src/opus/silk/typedef.h
      type_or_value: '((opus_int32)0x80000000)             '
    - item_type: preproc_def
      name: silk_int16_MAX
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/opus/silk/typedef.h
      type_or_value: '0x7FFF                               '
    - item_type: preproc_def
      name: silk_int16_MIN
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/opus/silk/typedef.h
      type_or_value: '((opus_int16)0x8000)                 '
    - item_type: preproc_def
      name: silk_int8_MAX
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/opus/silk/typedef.h
      type_or_value: '0x7F                                 '
    - item_type: preproc_def
      name: silk_int8_MIN
      pos:
        line_end: 47
        line_start: 46
        source_file: /src/opus/silk/typedef.h
      type_or_value: '((opus_int8)0x80)                    '
    - item_type: preproc_def
      name: silk_uint8_MAX
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/opus/silk/typedef.h
      type_or_value: '0xFF                                 '
    - item_type: preproc_def
      name: silk_TRUE
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/opus/silk/typedef.h
      type_or_value: '1'
    - item_type: preproc_def
      name: silk_FALSE
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/opus/silk/typedef.h
      type_or_value: '0'
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_lin2log
  source_file: /src/opus/silk/lin2log.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_interpolate
  source_file: /src/opus/silk/interpolate.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_A2NLSF_trans_poly
  - silk_A2NLSF_eval_poly
  - silk_A2NLSF_init
  - silk_A2NLSF
  source_file: /src/opus/silk/A2NLSF.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: BIN_DIV_STEPS_A2NLSF_FIX
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/opus/silk/A2NLSF.c
      type_or_value: '3 '
    - item_type: preproc_def
      name: MAX_ITERATIONS_A2NLSF_FIX
      pos:
        line_end: 43
        line_start: 42
        source_file: /src/opus/silk/A2NLSF.c
      type_or_value: '16'
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_NSQ_del_dec_c
  - silk_noise_shape_quantizer_del_dec
  - silk_nsq_del_dec_scale_states
  source_file: /src/opus/silk/NSQ_del_dec.c
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: sLPC_Q14[ MAX_SUB_FRAME_LENGTH + NSQ_LPC_BUF_LENGTH ]
        type: opus_int32
      - name: RandState[ DECISION_DELAY ]
        type: opus_int32
      - name: Q_Q10[     DECISION_DELAY ]
        type: opus_int32
      - name: Xq_Q14[    DECISION_DELAY ]
        type: opus_int32
      - name: Pred_Q15[  DECISION_DELAY ]
        type: opus_int32
      - name: Shape_Q14[ DECISION_DELAY ]
        type: opus_int32
      - name: sAR2_Q14[ MAX_SHAPE_LPC_ORDER ]
        type: opus_int32
      - name: LF_AR_Q14
        type: opus_int32
      - name: Diff_Q14
        type: opus_int32
      - name: Seed
        type: opus_int32
      - name: SeedInit
        type: opus_int32
      - name: RD_Q10
        type: opus_int32
      item_type: struct
      name: NSQ_del_dec_struct
      pos:
        line_end: 49
        line_start: 36
        source_file: /src/opus/silk/NSQ_del_dec.c
    - fields:
      - name: Q_Q10
        type: opus_int32
      - name: RD_Q10
        type: opus_int32
      - name: xq_Q14
        type: opus_int32
      - name: LF_AR_Q14
        type: opus_int32
      - name: Diff_Q14
        type: opus_int32
      - name: sLTP_shp_Q14
        type: opus_int32
      - name: LPC_exc_Q14
        type: opus_int32
      item_type: struct
      name: NSQ_sample_struct
      pos:
        line_end: 59
        line_start: 51
        source_file: /src/opus/silk/NSQ_del_dec.c
    typedefs:
    - item_type: typedef
      name: NSQ_sample_pair[ 2 ]
      pos:
        line_end: 61
        line_start: 61
        source_file: /src/opus/silk/NSQ_del_dec.c
      type: NSQ_sample_struct
    union: []
- function_names: []
  source_file: /src/opus/silk/pitch_est_tables.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_log2lin
  source_file: /src/opus/silk/log2lin.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - MUL32_FRAC_Q
  - LPC_inverse_pred_gain_QA_c
  - silk_LPC_inverse_pred_gain_c
  source_file: /src/opus/silk/LPC_inv_pred_gain.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: QA
      pos:
        line_end: 35
        line_start: 34
        source_file: /src/opus/silk/LPC_inv_pred_gain.c
      type_or_value: '24'
    - item_type: preproc_def
      name: A_LIMIT
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/opus/silk/LPC_inv_pred_gain.c
      type_or_value: SILK_FIX_CONST( 0.99975, QA )
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_decode_pulses
  source_file: /src/opus/silk/decode_pulses.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/silk/PLC.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: BWE_COEF
      pos:
        line_end: 33
        line_start: 32
        source_file: /src/opus/silk/PLC.h
      type_or_value: '0.99'
    - item_type: preproc_def
      name: V_PITCH_GAIN_START_MIN_Q14
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/opus/silk/PLC.h
      type_or_value: '11469               '
    - item_type: preproc_def
      name: V_PITCH_GAIN_START_MAX_Q14
      pos:
        line_end: 35
        line_start: 34
        source_file: /src/opus/silk/PLC.h
      type_or_value: '15565               '
    - item_type: preproc_def
      name: MAX_PITCH_LAG_MS
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/opus/silk/PLC.h
      type_or_value: '18'
    - item_type: preproc_def
      name: RAND_BUF_SIZE
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/opus/silk/PLC.h
      type_or_value: '128'
    - item_type: preproc_def
      name: RAND_BUF_MASK
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/opus/silk/PLC.h
      type_or_value: ( RAND_BUF_SIZE - 1 )
    - item_type: preproc_def
      name: LOG2_INV_LPC_GAIN_HIGH_THRES
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/opus/silk/PLC.h
      type_or_value: '3                   '
    - item_type: preproc_def
      name: LOG2_INV_LPC_GAIN_LOW_THRES
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/opus/silk/PLC.h
      type_or_value: '8                   '
    - item_type: preproc_def
      name: PITCH_DRIFT_FAC_Q16
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/opus/silk/PLC.h
      type_or_value: '655                 '
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/silk/resampler_rom.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_resampler_down2
  source_file: /src/opus/silk/resampler_down2.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_PLC_Reset
  - silk_PLC
  - silk_PLC_update
  - silk_PLC_energy
  - silk_PLC_conceal
  - silk_PLC_glue_frames
  source_file: /src/opus/silk/PLC.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: NB_ATT
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/opus/silk/PLC.c
      type_or_value: '2'
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_VQ_WMat_EC
  - silk_NSQ
  - silk_NSQ_del_dec
  - silk_VAD_GetSA_Q8
  source_file: /src/opus/silk/main.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_NLSF_del_dec_quant
  source_file: /src/opus/silk/NLSF_del_dec_quant.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_process_NLSFs
  source_file: /src/opus/silk/process_NLSFs.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_resampler_private_up2_HQ
  - silk_resampler_private_up2_HQ_wrapper
  source_file: /src/opus/silk/resampler_private_up2_HQ.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_Get_Encoder_Size
  - silk_InitEncoder
  - silk_QueryEncoder
  - silk_Encode
  source_file: /src/opus/silk/enc_API.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_stereo_MS_to_LR
  source_file: /src/opus/silk/stereo_MS_to_LR.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_decode_parameters
  source_file: /src/opus/silk/decode_parameters.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/silk/tables_pulses_per_block.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_LPC_analysis_filter
  source_file: /src/opus/silk/LPC_analysis_filter.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: USE_CELT_FIR
      pos:
        line_end: 47
        line_start: 46
        source_file: /src/opus/silk/LPC_analysis_filter.c
      type_or_value: '0'
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_GetHighResolutionTime
  - GetHighResolutionTime
  - silk_TimerSave
  - silk_TimerSave
  source_file: /src/opus/silk/debug.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs:
    - item_type: typedef
      name: prevent_empty_translation_unit_warning
      pos:
        line_end: 31
        line_start: 31
        source_file: /src/opus/silk/debug.c
      type: int
    union: []
- function_names:
  - silk_quant_LTP_gains
  source_file: /src/opus/silk/quant_LTP_gains.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_NLSF_VQ
  source_file: /src/opus/silk/NLSF_VQ.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_SMULWB
  - silk_SMULWB
  - silk_SMLAWB
  - silk_SMLAWB
  - silk_SMULWT
  - silk_SMULWT
  - silk_SMLAWT
  - silk_SMLAWT
  - silk_SMULBB
  - silk_SMLABB
  - silk_SMULBT
  - silk_SMLABT
  - silk_SMLAL
  - silk_SMULWW
  - silk_SMULWW
  - silk_SMLAWW
  - silk_SMLAWW
  - silk_ADD_SAT32
  - silk_SUB_SAT32
  - silk_CLZ16
  - silk_CLZ32
  - matrix_ptr
  - matrix_adr
  - matrix_c_ptr
  source_file: /src/opus/silk/macros.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/silk/tables.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_bwexpander_32
  source_file: /src/opus/silk/bwexpander_32.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_resampler_private_AR2
  source_file: /src/opus/silk/resampler_private_AR2.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - check_control_input
  source_file: /src/opus/silk/check_control_input.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/silk/resampler_structs.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: SILK_RESAMPLER_MAX_FIR_ORDER
      pos:
        line_end: 31
        line_start: 30
        source_file: /src/opus/silk/resampler_structs.h
      type_or_value: '36'
    - item_type: preproc_def
      name: SILK_RESAMPLER_MAX_IIR_ORDER
      pos:
        line_end: 32
        line_start: 31
        source_file: /src/opus/silk/resampler_structs.h
      type_or_value: '6'
    structs:
    - fields:
      - name: sIIR[ SILK_RESAMPLER_MAX_IIR_ORDER ]
        type: opus_int32
      - name: sFIR
        type: "union{\n        opus_int32   i32[ SILK_RESAMPLER_MAX_FIR_ORDER ];\n
          \       opus_int16   i16[ SILK_RESAMPLER_MAX_FIR_ORDER ];\n    }"
      - name: delayBuf[ 96 ]
        type: opus_int16
      - name: resampler_function
        type: opus_int
      - name: batchSize
        type: opus_int
      - name: invRatio_Q16
        type: opus_int32
      - name: FIR_Order
        type: opus_int
      - name: FIR_Fracs
        type: opus_int
      - name: Fs_in_kHz
        type: opus_int
      - name: Fs_out_kHz
        type: opus_int
      - name: inputDelay
        type: opus_int
      - name: '*Coefs'
        type: opus_int16
      item_type: struct
      name: _silk_resampler_state_struct
      pos:
        line_end: 49
        line_start: 33
        source_file: /src/opus/silk/resampler_structs.h
    typedefs: []
    union: []
- function_names:
  - silk_HP_variable_cutoff
  source_file: /src/opus/silk/HP_variable_cutoff.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - TIC
  - TIC
  - TOC
  - TOC
  - DEBUG_STORE_DATA
  source_file: /src/opus/silk/debug.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: SILK_DEBUG
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/opus/silk/debug.h
      type_or_value: '0'
    - item_type: preproc_def
      name: SILK_TIC_TOC
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/opus/silk/debug.h
      type_or_value: '0'
    - item_type: preproc_def
      name: silk_NUM_TIMERS_MAX
      pos:
        line_end: 74
        line_start: 73
        source_file: /src/opus/silk/debug.h
      type_or_value: '50'
    - item_type: preproc_def
      name: silk_NUM_TIMERS_MAX_TAG_LEN
      pos:
        line_end: 76
        line_start: 75
        source_file: /src/opus/silk/debug.h
      type_or_value: '30'
    - item_type: preproc_def
      name: silk_NUM_STORES_MAX
      pos:
        line_end: 227
        line_start: 226
        source_file: /src/opus/silk/debug.h
      type_or_value: '100'
    - item_type: preproc_def
      name: SILK_DEBUG_STORE_CLOSE_FILES
      pos:
        line_end: 249
        line_start: 243
        source_file: /src/opus/silk/debug.h
      type_or_value: "{                              \\\n    opus_int i;                                                     \\\n
        \   for( i = 0; i < silk_debug_store_count; i++ ) {                 \\\n        fclose(
        silk_debug_store_fp[ i ] );                         \\\n    }                                                               \\\n}"
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_SaveCount
  - silk_SaveResetCount
  - silk_PrintCount
  - silk_MUL
  - opus_uint32::silk_MUL_uint
  - silk_MLA
  - silk_MLA_uint
  - silk_SMULWB
  - silk_SMLAWB
  - silk_SMULWT
  - silk_SMLAWT
  - silk_SMULBB
  - silk_SMLABB
  - silk_SMULBT
  - silk_SMLABT
  - silk_SMULTT
  - silk_SMLATT
  - silk_SMULL
  - silk_SMLAL
  - silk_SMLALBB
  - SigProcFIX_CLZ16
  - SigProcFIX_CLZ32
  - silk_DIV32
  - silk_DIV32_16
  - silk_SAT8
  - silk_SAT16
  - silk_SAT32
  - silk_POS_SAT32
  - silk_ADD_POS_SAT8
  - silk_ADD_POS_SAT16
  - silk_ADD_POS_SAT32
  - silk_LSHIFT8
  - silk_LSHIFT16
  - silk_LSHIFT32
  - silk_LSHIFT64
  - silk_LSHIFT_ovflw
  - opus_uint32::silk_LSHIFT_uint
  - silk_RSHIFT8
  - silk_RSHIFT16
  - silk_RSHIFT32
  - silk_RSHIFT64
  - opus_uint32::silk_RSHIFT_uint
  - silk_ADD_LSHIFT
  - silk_ADD_LSHIFT32
  - opus_uint32::silk_ADD_LSHIFT_uint
  - silk_ADD_RSHIFT
  - silk_ADD_RSHIFT32
  - opus_uint32::silk_ADD_RSHIFT_uint
  - silk_SUB_LSHIFT32
  - silk_SUB_RSHIFT32
  - silk_RSHIFT_ROUND
  - silk_RSHIFT_ROUND64
  - silk_abs_int64
  - silk_abs_int32
  - silk_min
  - silk_max
  - silk_sign
  - silk_ADD16
  - silk_ADD32
  - silk_ADD64
  - silk_SUB16
  - silk_SUB32
  - silk_SUB64
  - silk_ADD_SAT16
  - silk_ADD_SAT32
  - silk_ADD_SAT64
  - silk_SUB_SAT16
  - silk_SUB_SAT32
  - silk_SUB_SAT64
  - silk_SMULWW
  - silk_SMLAWW
  - silk_min_int
  - silk_min_16
  - silk_min_32
  - silk_min_64
  - silk_max_int
  - silk_max_16
  - silk_max_32
  - silk_max_64
  - silk_LIMIT_int
  - silk_LIMIT_16
  - silk_LIMIT_32
  source_file: /src/opus/silk/MacroCount.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: varDefine
      pos:
        line_end: 33
        line_start: 32
        source_file: /src/opus/silk/MacroCount.h
      type_or_value: opus_int64 ops_count = 0;
    - item_type: preproc_def
      name: silk_MLA_ovflw
      pos:
        line_end: 164
        line_start: 163
        source_file: /src/opus/silk/MacroCount.h
      type_or_value: silk_MLA
    - item_type: preproc_def
      name: silk_SMLABB_ovflw
      pos:
        line_end: 167
        line_start: 166
        source_file: /src/opus/silk/MacroCount.h
      type_or_value: silk_SMLABB
    - item_type: preproc_def
      name: silk_SMLABT_ovflw
      pos:
        line_end: 170
        line_start: 169
        source_file: /src/opus/silk/MacroCount.h
      type_or_value: silk_SMLABT
    - item_type: preproc_def
      name: silk_SMLATT_ovflw
      pos:
        line_end: 173
        line_start: 172
        source_file: /src/opus/silk/MacroCount.h
      type_or_value: silk_SMLATT
    - item_type: preproc_def
      name: silk_SMLAWB_ovflw
      pos:
        line_end: 176
        line_start: 175
        source_file: /src/opus/silk/MacroCount.h
      type_or_value: silk_SMLAWB
    - item_type: preproc_def
      name: silk_SMLAWT_ovflw
      pos:
        line_end: 179
        line_start: 178
        source_file: /src/opus/silk/MacroCount.h
      type_or_value: silk_SMLAWT
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_insertion_sort_increasing
  - silk_insertion_sort_decreasing_int16
  - silk_insertion_sort_increasing_all_values_int16
  source_file: /src/opus/silk/sort.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/silk/define.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: ENCODER_NUM_CHANNELS
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/opus/silk/define.h
      type_or_value: '2'
    - item_type: preproc_def
      name: DECODER_NUM_CHANNELS
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/opus/silk/define.h
      type_or_value: '2'
    - item_type: preproc_def
      name: MAX_FRAMES_PER_PACKET
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/opus/silk/define.h
      type_or_value: '3'
    - item_type: preproc_def
      name: MIN_TARGET_RATE_BPS
      pos:
        line_end: 43
        line_start: 42
        source_file: /src/opus/silk/define.h
      type_or_value: '5000'
    - item_type: preproc_def
      name: MAX_TARGET_RATE_BPS
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/opus/silk/define.h
      type_or_value: '80000'
    - item_type: preproc_def
      name: LBRR_NB_MIN_RATE_BPS
      pos:
        line_end: 47
        line_start: 46
        source_file: /src/opus/silk/define.h
      type_or_value: '12000'
    - item_type: preproc_def
      name: LBRR_MB_MIN_RATE_BPS
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/opus/silk/define.h
      type_or_value: '14000'
    - item_type: preproc_def
      name: LBRR_WB_MIN_RATE_BPS
      pos:
        line_end: 49
        line_start: 48
        source_file: /src/opus/silk/define.h
      type_or_value: '16000'
    - item_type: preproc_def
      name: NB_SPEECH_FRAMES_BEFORE_DTX
      pos:
        line_end: 52
        line_start: 51
        source_file: /src/opus/silk/define.h
      type_or_value: '10      '
    - item_type: preproc_def
      name: MAX_CONSECUTIVE_DTX
      pos:
        line_end: 53
        line_start: 52
        source_file: /src/opus/silk/define.h
      type_or_value: '20      '
    - item_type: preproc_def
      name: DTX_ACTIVITY_THRESHOLD
      pos:
        line_end: 54
        line_start: 53
        source_file: /src/opus/silk/define.h
      type_or_value: 0.1f
    - item_type: preproc_def
      name: VAD_NO_DECISION
      pos:
        line_end: 57
        line_start: 56
        source_file: /src/opus/silk/define.h
      type_or_value: '-1'
    - item_type: preproc_def
      name: VAD_NO_ACTIVITY
      pos:
        line_end: 58
        line_start: 57
        source_file: /src/opus/silk/define.h
      type_or_value: '0'
    - item_type: preproc_def
      name: VAD_ACTIVITY
      pos:
        line_end: 59
        line_start: 58
        source_file: /src/opus/silk/define.h
      type_or_value: '1'
    - item_type: preproc_def
      name: MAX_FS_KHZ
      pos:
        line_end: 62
        line_start: 61
        source_file: /src/opus/silk/define.h
      type_or_value: '16'
    - item_type: preproc_def
      name: MAX_API_FS_KHZ
      pos:
        line_end: 64
        line_start: 63
        source_file: /src/opus/silk/define.h
      type_or_value: '96'
    - item_type: preproc_def
      name: MAX_API_FS_KHZ
      pos:
        line_end: 66
        line_start: 65
        source_file: /src/opus/silk/define.h
      type_or_value: '48'
    - item_type: preproc_def
      name: TYPE_NO_VOICE_ACTIVITY
      pos:
        line_end: 70
        line_start: 69
        source_file: /src/opus/silk/define.h
      type_or_value: '0'
    - item_type: preproc_def
      name: TYPE_UNVOICED
      pos:
        line_end: 71
        line_start: 70
        source_file: /src/opus/silk/define.h
      type_or_value: '1'
    - item_type: preproc_def
      name: TYPE_VOICED
      pos:
        line_end: 72
        line_start: 71
        source_file: /src/opus/silk/define.h
      type_or_value: '2'
    - item_type: preproc_def
      name: CODE_INDEPENDENTLY
      pos:
        line_end: 75
        line_start: 74
        source_file: /src/opus/silk/define.h
      type_or_value: '0'
    - item_type: preproc_def
      name: CODE_INDEPENDENTLY_NO_LTP_SCALING
      pos:
        line_end: 76
        line_start: 75
        source_file: /src/opus/silk/define.h
      type_or_value: '1'
    - item_type: preproc_def
      name: CODE_CONDITIONALLY
      pos:
        line_end: 77
        line_start: 76
        source_file: /src/opus/silk/define.h
      type_or_value: '2'
    - item_type: preproc_def
      name: STEREO_QUANT_TAB_SIZE
      pos:
        line_end: 80
        line_start: 79
        source_file: /src/opus/silk/define.h
      type_or_value: '16'
    - item_type: preproc_def
      name: STEREO_QUANT_SUB_STEPS
      pos:
        line_end: 81
        line_start: 80
        source_file: /src/opus/silk/define.h
      type_or_value: '5'
    - item_type: preproc_def
      name: STEREO_INTERP_LEN_MS
      pos:
        line_end: 82
        line_start: 81
        source_file: /src/opus/silk/define.h
      type_or_value: '8       '
    - item_type: preproc_def
      name: STEREO_RATIO_SMOOTH_COEF
      pos:
        line_end: 83
        line_start: 82
        source_file: /src/opus/silk/define.h
      type_or_value: '0.01    '
    - item_type: preproc_def
      name: PITCH_EST_MIN_LAG_MS
      pos:
        line_end: 86
        line_start: 85
        source_file: /src/opus/silk/define.h
      type_or_value: '2       '
    - item_type: preproc_def
      name: PITCH_EST_MAX_LAG_MS
      pos:
        line_end: 87
        line_start: 86
        source_file: /src/opus/silk/define.h
      type_or_value: '18      '
    - item_type: preproc_def
      name: MAX_NB_SUBFR
      pos:
        line_end: 90
        line_start: 89
        source_file: /src/opus/silk/define.h
      type_or_value: '4'
    - item_type: preproc_def
      name: LTP_MEM_LENGTH_MS
      pos:
        line_end: 93
        line_start: 92
        source_file: /src/opus/silk/define.h
      type_or_value: '20'
    - item_type: preproc_def
      name: SUB_FRAME_LENGTH_MS
      pos:
        line_end: 94
        line_start: 93
        source_file: /src/opus/silk/define.h
      type_or_value: '5'
    - item_type: preproc_def
      name: MAX_SUB_FRAME_LENGTH
      pos:
        line_end: 95
        line_start: 94
        source_file: /src/opus/silk/define.h
      type_or_value: ( SUB_FRAME_LENGTH_MS * MAX_FS_KHZ )
    - item_type: preproc_def
      name: MAX_FRAME_LENGTH_MS
      pos:
        line_end: 96
        line_start: 95
        source_file: /src/opus/silk/define.h
      type_or_value: ( SUB_FRAME_LENGTH_MS * MAX_NB_SUBFR )
    - item_type: preproc_def
      name: MAX_FRAME_LENGTH
      pos:
        line_end: 97
        line_start: 96
        source_file: /src/opus/silk/define.h
      type_or_value: ( MAX_FRAME_LENGTH_MS * MAX_FS_KHZ )
    - item_type: preproc_def
      name: LA_PITCH_MS
      pos:
        line_end: 100
        line_start: 99
        source_file: /src/opus/silk/define.h
      type_or_value: '2'
    - item_type: preproc_def
      name: LA_PITCH_MAX
      pos:
        line_end: 101
        line_start: 100
        source_file: /src/opus/silk/define.h
      type_or_value: ( LA_PITCH_MS * MAX_FS_KHZ )
    - item_type: preproc_def
      name: MAX_FIND_PITCH_LPC_ORDER
      pos:
        line_end: 104
        line_start: 103
        source_file: /src/opus/silk/define.h
      type_or_value: '16'
    - item_type: preproc_def
      name: FIND_PITCH_LPC_WIN_MS
      pos:
        line_end: 107
        line_start: 106
        source_file: /src/opus/silk/define.h
      type_or_value: ( 20 + (LA_PITCH_MS << 1) )
    - item_type: preproc_def
      name: FIND_PITCH_LPC_WIN_MS_2_SF
      pos:
        line_end: 108
        line_start: 107
        source_file: /src/opus/silk/define.h
      type_or_value: ( 10 + (LA_PITCH_MS << 1) )
    - item_type: preproc_def
      name: FIND_PITCH_LPC_WIN_MAX
      pos:
        line_end: 109
        line_start: 108
        source_file: /src/opus/silk/define.h
      type_or_value: ( FIND_PITCH_LPC_WIN_MS * MAX_FS_KHZ )
    - item_type: preproc_def
      name: LA_SHAPE_MS
      pos:
        line_end: 112
        line_start: 111
        source_file: /src/opus/silk/define.h
      type_or_value: '5'
    - item_type: preproc_def
      name: LA_SHAPE_MAX
      pos:
        line_end: 113
        line_start: 112
        source_file: /src/opus/silk/define.h
      type_or_value: ( LA_SHAPE_MS * MAX_FS_KHZ )
    - item_type: preproc_def
      name: SHAPE_LPC_WIN_MAX
      pos:
        line_end: 116
        line_start: 115
        source_file: /src/opus/silk/define.h
      type_or_value: ( 15 * MAX_FS_KHZ )
    - item_type: preproc_def
      name: MIN_QGAIN_DB
      pos:
        line_end: 119
        line_start: 118
        source_file: /src/opus/silk/define.h
      type_or_value: '2'
    - item_type: preproc_def
      name: MAX_QGAIN_DB
      pos:
        line_end: 121
        line_start: 120
        source_file: /src/opus/silk/define.h
      type_or_value: '88'
    - item_type: preproc_def
      name: N_LEVELS_QGAIN
      pos:
        line_end: 123
        line_start: 122
        source_file: /src/opus/silk/define.h
      type_or_value: '64'
    - item_type: preproc_def
      name: MAX_DELTA_GAIN_QUANT
      pos:
        line_end: 125
        line_start: 124
        source_file: /src/opus/silk/define.h
      type_or_value: '36'
    - item_type: preproc_def
      name: MIN_DELTA_GAIN_QUANT
      pos:
        line_end: 127
        line_start: 126
        source_file: /src/opus/silk/define.h
      type_or_value: '-4'
    - item_type: preproc_def
      name: OFFSET_VL_Q10
      pos:
        line_end: 130
        line_start: 129
        source_file: /src/opus/silk/define.h
      type_or_value: '32'
    - item_type: preproc_def
      name: OFFSET_VH_Q10
      pos:
        line_end: 131
        line_start: 130
        source_file: /src/opus/silk/define.h
      type_or_value: '100'
    - item_type: preproc_def
      name: OFFSET_UVL_Q10
      pos:
        line_end: 132
        line_start: 131
        source_file: /src/opus/silk/define.h
      type_or_value: '100'
    - item_type: preproc_def
      name: OFFSET_UVH_Q10
      pos:
        line_end: 133
        line_start: 132
        source_file: /src/opus/silk/define.h
      type_or_value: '240'
    - item_type: preproc_def
      name: QUANT_LEVEL_ADJUST_Q10
      pos:
        line_end: 135
        line_start: 134
        source_file: /src/opus/silk/define.h
      type_or_value: '80'
    - item_type: preproc_def
      name: MAX_LPC_STABILIZE_ITERATIONS
      pos:
        line_end: 138
        line_start: 137
        source_file: /src/opus/silk/define.h
      type_or_value: '16'
    - item_type: preproc_def
      name: MAX_PREDICTION_POWER_GAIN
      pos:
        line_end: 139
        line_start: 138
        source_file: /src/opus/silk/define.h
      type_or_value: 1e4f
    - item_type: preproc_def
      name: MAX_PREDICTION_POWER_GAIN_AFTER_RESET
      pos:
        line_end: 140
        line_start: 139
        source_file: /src/opus/silk/define.h
      type_or_value: 1e2f
    - item_type: preproc_def
      name: MAX_LPC_ORDER
      pos:
        line_end: 142
        line_start: 141
        source_file: /src/opus/silk/define.h
      type_or_value: '16'
    - item_type: preproc_def
      name: MIN_LPC_ORDER
      pos:
        line_end: 143
        line_start: 142
        source_file: /src/opus/silk/define.h
      type_or_value: '10'
    - item_type: preproc_def
      name: LTP_ORDER
      pos:
        line_end: 146
        line_start: 145
        source_file: /src/opus/silk/define.h
      type_or_value: '5'
    - item_type: preproc_def
      name: NB_LTP_CBKS
      pos:
        line_end: 149
        line_start: 148
        source_file: /src/opus/silk/define.h
      type_or_value: '3'
    - item_type: preproc_def
      name: USE_HARM_SHAPING
      pos:
        line_end: 152
        line_start: 151
        source_file: /src/opus/silk/define.h
      type_or_value: '1'
    - item_type: preproc_def
      name: MAX_SHAPE_LPC_ORDER
      pos:
        line_end: 155
        line_start: 154
        source_file: /src/opus/silk/define.h
      type_or_value: '24'
    - item_type: preproc_def
      name: HARM_SHAPE_FIR_TAPS
      pos:
        line_end: 157
        line_start: 156
        source_file: /src/opus/silk/define.h
      type_or_value: '3'
    - item_type: preproc_def
      name: MAX_DEL_DEC_STATES
      pos:
        line_end: 160
        line_start: 159
        source_file: /src/opus/silk/define.h
      type_or_value: '4'
    - item_type: preproc_def
      name: LTP_BUF_LENGTH
      pos:
        line_end: 162
        line_start: 161
        source_file: /src/opus/silk/define.h
      type_or_value: '512'
    - item_type: preproc_def
      name: LTP_MASK
      pos:
        line_end: 163
        line_start: 162
        source_file: /src/opus/silk/define.h
      type_or_value: ( LTP_BUF_LENGTH - 1 )
    - item_type: preproc_def
      name: DECISION_DELAY
      pos:
        line_end: 165
        line_start: 164
        source_file: /src/opus/silk/define.h
      type_or_value: '40'
    - item_type: preproc_def
      name: SHELL_CODEC_FRAME_LENGTH
      pos:
        line_end: 168
        line_start: 167
        source_file: /src/opus/silk/define.h
      type_or_value: '16'
    - item_type: preproc_def
      name: LOG2_SHELL_CODEC_FRAME_LENGTH
      pos:
        line_end: 169
        line_start: 168
        source_file: /src/opus/silk/define.h
      type_or_value: '4'
    - item_type: preproc_def
      name: MAX_NB_SHELL_BLOCKS
      pos:
        line_end: 170
        line_start: 169
        source_file: /src/opus/silk/define.h
      type_or_value: ( MAX_FRAME_LENGTH / SHELL_CODEC_FRAME_LENGTH )
    - item_type: preproc_def
      name: N_RATE_LEVELS
      pos:
        line_end: 173
        line_start: 172
        source_file: /src/opus/silk/define.h
      type_or_value: '10'
    - item_type: preproc_def
      name: SILK_MAX_PULSES
      pos:
        line_end: 176
        line_start: 175
        source_file: /src/opus/silk/define.h
      type_or_value: '16'
    - item_type: preproc_def
      name: MAX_MATRIX_SIZE
      pos:
        line_end: 178
        line_start: 177
        source_file: /src/opus/silk/define.h
      type_or_value: 'MAX_LPC_ORDER '
    - item_type: preproc_def
      name: NSQ_LPC_BUF_LENGTH
      pos:
        line_end: 180
        line_start: 179
        source_file: /src/opus/silk/define.h
      type_or_value: MAX_LPC_ORDER
    - item_type: preproc_def
      name: VAD_N_BANDS
      pos:
        line_end: 185
        line_start: 184
        source_file: /src/opus/silk/define.h
      type_or_value: '4'
    - item_type: preproc_def
      name: VAD_INTERNAL_SUBFRAMES_LOG2
      pos:
        line_end: 187
        line_start: 186
        source_file: /src/opus/silk/define.h
      type_or_value: '2'
    - item_type: preproc_def
      name: VAD_INTERNAL_SUBFRAMES
      pos:
        line_end: 188
        line_start: 187
        source_file: /src/opus/silk/define.h
      type_or_value: ( 1 << VAD_INTERNAL_SUBFRAMES_LOG2 )
    - item_type: preproc_def
      name: VAD_NOISE_LEVEL_SMOOTH_COEF_Q16
      pos:
        line_end: 190
        line_start: 189
        source_file: /src/opus/silk/define.h
      type_or_value: '1024    '
    - item_type: preproc_def
      name: VAD_NOISE_LEVELS_BIAS
      pos:
        line_end: 191
        line_start: 190
        source_file: /src/opus/silk/define.h
      type_or_value: '50'
    - item_type: preproc_def
      name: VAD_NEGATIVE_OFFSET_Q5
      pos:
        line_end: 194
        line_start: 193
        source_file: /src/opus/silk/define.h
      type_or_value: '128     '
    - item_type: preproc_def
      name: VAD_SNR_FACTOR_Q16
      pos:
        line_end: 195
        line_start: 194
        source_file: /src/opus/silk/define.h
      type_or_value: '45000'
    - item_type: preproc_def
      name: VAD_SNR_SMOOTH_COEF_Q18
      pos:
        line_end: 198
        line_start: 197
        source_file: /src/opus/silk/define.h
      type_or_value: '4096'
    - item_type: preproc_def
      name: LSF_COS_TAB_SZ_FIX
      pos:
        line_end: 201
        line_start: 200
        source_file: /src/opus/silk/define.h
      type_or_value: '128'
    - item_type: preproc_def
      name: NLSF_W_Q
      pos:
        line_end: 206
        line_start: 205
        source_file: /src/opus/silk/define.h
      type_or_value: '2'
    - item_type: preproc_def
      name: NLSF_VQ_MAX_VECTORS
      pos:
        line_end: 207
        line_start: 206
        source_file: /src/opus/silk/define.h
      type_or_value: '32'
    - item_type: preproc_def
      name: NLSF_QUANT_MAX_AMPLITUDE
      pos:
        line_end: 208
        line_start: 207
        source_file: /src/opus/silk/define.h
      type_or_value: '4'
    - item_type: preproc_def
      name: NLSF_QUANT_MAX_AMPLITUDE_EXT
      pos:
        line_end: 209
        line_start: 208
        source_file: /src/opus/silk/define.h
      type_or_value: '10'
    - item_type: preproc_def
      name: NLSF_QUANT_LEVEL_ADJ
      pos:
        line_end: 210
        line_start: 209
        source_file: /src/opus/silk/define.h
      type_or_value: '0.1'
    - item_type: preproc_def
      name: NLSF_QUANT_DEL_DEC_STATES_LOG2
      pos:
        line_end: 211
        line_start: 210
        source_file: /src/opus/silk/define.h
      type_or_value: '2'
    - item_type: preproc_def
      name: NLSF_QUANT_DEL_DEC_STATES
      pos:
        line_end: 212
        line_start: 211
        source_file: /src/opus/silk/define.h
      type_or_value: ( 1 << NLSF_QUANT_DEL_DEC_STATES_LOG2 )
    - item_type: preproc_def
      name: TRANSITION_TIME_MS
      pos:
        line_end: 215
        line_start: 214
        source_file: /src/opus/silk/define.h
      type_or_value: '5120    '
    - item_type: preproc_def
      name: TRANSITION_NB
      pos:
        line_end: 216
        line_start: 215
        source_file: /src/opus/silk/define.h
      type_or_value: '3       '
    - item_type: preproc_def
      name: TRANSITION_NA
      pos:
        line_end: 217
        line_start: 216
        source_file: /src/opus/silk/define.h
      type_or_value: '2       '
    - item_type: preproc_def
      name: TRANSITION_INT_NUM
      pos:
        line_end: 218
        line_start: 217
        source_file: /src/opus/silk/define.h
      type_or_value: '5       '
    - item_type: preproc_def
      name: TRANSITION_FRAMES
      pos:
        line_end: 219
        line_start: 218
        source_file: /src/opus/silk/define.h
      type_or_value: ( TRANSITION_TIME_MS / MAX_FRAME_LENGTH_MS )
    - item_type: preproc_def
      name: TRANSITION_INT_STEPS
      pos:
        line_end: 220
        line_start: 219
        source_file: /src/opus/silk/define.h
      type_or_value: ( TRANSITION_FRAMES  / ( TRANSITION_INT_NUM - 1 ) )
    - item_type: preproc_def
      name: BWE_AFTER_LOSS_Q16
      pos:
        line_end: 223
        line_start: 222
        source_file: /src/opus/silk/define.h
      type_or_value: '63570'
    - item_type: preproc_def
      name: CNG_BUF_MASK_MAX
      pos:
        line_end: 226
        line_start: 225
        source_file: /src/opus/silk/define.h
      type_or_value: '255     '
    - item_type: preproc_def
      name: CNG_GAIN_SMTH_Q16
      pos:
        line_end: 227
        line_start: 226
        source_file: /src/opus/silk/define.h
      type_or_value: '4634    '
    - item_type: preproc_def
      name: CNG_GAIN_SMTH_THRESHOLD_Q16
      pos:
        line_end: 228
        line_start: 227
        source_file: /src/opus/silk/define.h
      type_or_value: '46396   '
    - item_type: preproc_def
      name: CNG_NLSF_SMTH_Q16
      pos:
        line_end: 229
        line_start: 228
        source_file: /src/opus/silk/define.h
      type_or_value: '16348   '
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/silk/tuning_parameters.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: BITRESERVOIR_DECAY_TIME_MS
      pos:
        line_end: 32
        line_start: 31
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: '500'
    - item_type: preproc_def
      name: FIND_PITCH_WHITE_NOISE_FRACTION
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: 1e-3f
    - item_type: preproc_def
      name: FIND_PITCH_BANDWIDTH_EXPANSION
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: 0.99f
    - item_type: preproc_def
      name: FIND_LPC_COND_FAC
      pos:
        line_end: 49
        line_start: 48
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: 1e-5f
    - item_type: preproc_def
      name: MAX_SUM_LOG_GAIN_DB
      pos:
        line_end: 52
        line_start: 51
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: 250.0f
    - item_type: preproc_def
      name: LTP_CORR_INV_MAX
      pos:
        line_end: 55
        line_start: 54
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: 0.03f
    - item_type: preproc_def
      name: VARIABLE_HP_SMTH_COEF1
      pos:
        line_end: 62
        line_start: 61
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: 0.1f
    - item_type: preproc_def
      name: VARIABLE_HP_SMTH_COEF2
      pos:
        line_end: 63
        line_start: 62
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: 0.015f
    - item_type: preproc_def
      name: VARIABLE_HP_MAX_DELTA_FREQ
      pos:
        line_end: 64
        line_start: 63
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: 0.4f
    - item_type: preproc_def
      name: VARIABLE_HP_MIN_CUTOFF_HZ
      pos:
        line_end: 67
        line_start: 66
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: '60'
    - item_type: preproc_def
      name: VARIABLE_HP_MAX_CUTOFF_HZ
      pos:
        line_end: 68
        line_start: 67
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: '100'
    - item_type: preproc_def
      name: SPEECH_ACTIVITY_DTX_THRES
      pos:
        line_end: 75
        line_start: 74
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: 0.05f
    - item_type: preproc_def
      name: LBRR_SPEECH_ACTIVITY_THRES
      pos:
        line_end: 78
        line_start: 77
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: 0.3f
    - item_type: preproc_def
      name: BG_SNR_DECR_dB
      pos:
        line_end: 85
        line_start: 84
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: 2.0f
    - item_type: preproc_def
      name: HARM_SNR_INCR_dB
      pos:
        line_end: 88
        line_start: 87
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: 2.0f
    - item_type: preproc_def
      name: SPARSE_SNR_INCR_dB
      pos:
        line_end: 91
        line_start: 90
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: 2.0f
    - item_type: preproc_def
      name: ENERGY_VARIATION_THRESHOLD_QNT_OFFSET
      pos:
        line_end: 94
        line_start: 93
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: 0.6f
    - item_type: preproc_def
      name: WARPING_MULTIPLIER
      pos:
        line_end: 97
        line_start: 96
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: 0.015f
    - item_type: preproc_def
      name: SHAPE_WHITE_NOISE_FRACTION
      pos:
        line_end: 100
        line_start: 99
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: 3e-5f
    - item_type: preproc_def
      name: BANDWIDTH_EXPANSION
      pos:
        line_end: 103
        line_start: 102
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: 0.94f
    - item_type: preproc_def
      name: HARMONIC_SHAPING
      pos:
        line_end: 106
        line_start: 105
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: 0.3f
    - item_type: preproc_def
      name: HIGH_RATE_OR_LOW_QUALITY_HARMONIC_SHAPING
      pos:
        line_end: 109
        line_start: 108
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: 0.2f
    - item_type: preproc_def
      name: HP_NOISE_COEF
      pos:
        line_end: 112
        line_start: 111
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: 0.25f
    - item_type: preproc_def
      name: HARM_HP_NOISE_COEF
      pos:
        line_end: 115
        line_start: 114
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: 0.35f
    - item_type: preproc_def
      name: INPUT_TILT
      pos:
        line_end: 118
        line_start: 117
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: 0.05f
    - item_type: preproc_def
      name: HIGH_RATE_INPUT_TILT
      pos:
        line_end: 121
        line_start: 120
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: 0.1f
    - item_type: preproc_def
      name: LOW_FREQ_SHAPING
      pos:
        line_end: 124
        line_start: 123
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: 4.0f
    - item_type: preproc_def
      name: LOW_QUALITY_LOW_FREQ_SHAPING_DECR
      pos:
        line_end: 127
        line_start: 126
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: 0.5f
    - item_type: preproc_def
      name: SUBFR_SMTH_COEF
      pos:
        line_end: 130
        line_start: 129
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: 0.4f
    - item_type: preproc_def
      name: LAMBDA_OFFSET
      pos:
        line_end: 133
        line_start: 132
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: 1.2f
    - item_type: preproc_def
      name: LAMBDA_SPEECH_ACT
      pos:
        line_end: 134
        line_start: 133
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: -0.2f
    - item_type: preproc_def
      name: LAMBDA_DELAYED_DECISIONS
      pos:
        line_end: 135
        line_start: 134
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: -0.05f
    - item_type: preproc_def
      name: LAMBDA_INPUT_QUALITY
      pos:
        line_end: 136
        line_start: 135
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: -0.1f
    - item_type: preproc_def
      name: LAMBDA_CODING_QUALITY
      pos:
        line_end: 137
        line_start: 136
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: -0.2f
    - item_type: preproc_def
      name: LAMBDA_QUANT_OFFSET
      pos:
        line_end: 138
        line_start: 137
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: 0.8f
    - item_type: preproc_def
      name: REDUCE_BITRATE_10_MS_BPS
      pos:
        line_end: 141
        line_start: 140
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: '2200'
    - item_type: preproc_def
      name: MAX_BANDWIDTH_SWITCH_DELAY_MS
      pos:
        line_end: 144
        line_start: 143
        source_file: /src/opus/silk/tuning_parameters.h
      type_or_value: '5000'
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/silk/pitch_est_defines.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: PE_MAX_FS_KHZ
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/opus/silk/pitch_est_defines.h
      type_or_value: '16 '
    - item_type: preproc_def
      name: PE_MAX_NB_SUBFR
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/opus/silk/pitch_est_defines.h
      type_or_value: '4'
    - item_type: preproc_def
      name: PE_SUBFR_LENGTH_MS
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/opus/silk/pitch_est_defines.h
      type_or_value: '5   '
    - item_type: preproc_def
      name: PE_LTP_MEM_LENGTH_MS
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/opus/silk/pitch_est_defines.h
      type_or_value: ( 4 * PE_SUBFR_LENGTH_MS )
    - item_type: preproc_def
      name: PE_MAX_FRAME_LENGTH_MS
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/opus/silk/pitch_est_defines.h
      type_or_value: ( PE_LTP_MEM_LENGTH_MS + PE_MAX_NB_SUBFR * PE_SUBFR_LENGTH_MS
        )
    - item_type: preproc_def
      name: PE_MAX_FRAME_LENGTH
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/opus/silk/pitch_est_defines.h
      type_or_value: ( PE_MAX_FRAME_LENGTH_MS * PE_MAX_FS_KHZ )
    - item_type: preproc_def
      name: PE_MAX_FRAME_LENGTH_ST_1
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/opus/silk/pitch_est_defines.h
      type_or_value: ( PE_MAX_FRAME_LENGTH >> 2 )
    - item_type: preproc_def
      name: PE_MAX_FRAME_LENGTH_ST_2
      pos:
        line_end: 47
        line_start: 46
        source_file: /src/opus/silk/pitch_est_defines.h
      type_or_value: ( PE_MAX_FRAME_LENGTH >> 1 )
    - item_type: preproc_def
      name: PE_MAX_LAG_MS
      pos:
        line_end: 49
        line_start: 48
        source_file: /src/opus/silk/pitch_est_defines.h
      type_or_value: '18           '
    - item_type: preproc_def
      name: PE_MIN_LAG_MS
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/opus/silk/pitch_est_defines.h
      type_or_value: '2            '
    - item_type: preproc_def
      name: PE_MAX_LAG
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/opus/silk/pitch_est_defines.h
      type_or_value: ( PE_MAX_LAG_MS * PE_MAX_FS_KHZ )
    - item_type: preproc_def
      name: PE_MIN_LAG
      pos:
        line_end: 52
        line_start: 51
        source_file: /src/opus/silk/pitch_est_defines.h
      type_or_value: ( PE_MIN_LAG_MS * PE_MAX_FS_KHZ )
    - item_type: preproc_def
      name: PE_D_SRCH_LENGTH
      pos:
        line_end: 54
        line_start: 53
        source_file: /src/opus/silk/pitch_est_defines.h
      type_or_value: '24'
    - item_type: preproc_def
      name: PE_NB_STAGE3_LAGS
      pos:
        line_end: 56
        line_start: 55
        source_file: /src/opus/silk/pitch_est_defines.h
      type_or_value: '5'
    - item_type: preproc_def
      name: PE_NB_CBKS_STAGE2
      pos:
        line_end: 58
        line_start: 57
        source_file: /src/opus/silk/pitch_est_defines.h
      type_or_value: '3'
    - item_type: preproc_def
      name: PE_NB_CBKS_STAGE2_EXT
      pos:
        line_end: 59
        line_start: 58
        source_file: /src/opus/silk/pitch_est_defines.h
      type_or_value: '11'
    - item_type: preproc_def
      name: PE_NB_CBKS_STAGE3_MAX
      pos:
        line_end: 61
        line_start: 60
        source_file: /src/opus/silk/pitch_est_defines.h
      type_or_value: '34'
    - item_type: preproc_def
      name: PE_NB_CBKS_STAGE3_MID
      pos:
        line_end: 62
        line_start: 61
        source_file: /src/opus/silk/pitch_est_defines.h
      type_or_value: '24'
    - item_type: preproc_def
      name: PE_NB_CBKS_STAGE3_MIN
      pos:
        line_end: 63
        line_start: 62
        source_file: /src/opus/silk/pitch_est_defines.h
      type_or_value: '16'
    - item_type: preproc_def
      name: PE_NB_CBKS_STAGE3_10MS
      pos:
        line_end: 65
        line_start: 64
        source_file: /src/opus/silk/pitch_est_defines.h
      type_or_value: '12'
    - item_type: preproc_def
      name: PE_NB_CBKS_STAGE2_10MS
      pos:
        line_end: 66
        line_start: 65
        source_file: /src/opus/silk/pitch_est_defines.h
      type_or_value: '3'
    - item_type: preproc_def
      name: PE_SHORTLAG_BIAS
      pos:
        line_end: 68
        line_start: 67
        source_file: /src/opus/silk/pitch_est_defines.h
      type_or_value: '0.2f    '
    - item_type: preproc_def
      name: PE_PREVLAG_BIAS
      pos:
        line_end: 69
        line_start: 68
        source_file: /src/opus/silk/pitch_est_defines.h
      type_or_value: '0.2f    '
    - item_type: preproc_def
      name: PE_FLATCONTOUR_BIAS
      pos:
        line_end: 70
        line_start: 69
        source_file: /src/opus/silk/pitch_est_defines.h
      type_or_value: 0.05f
    - item_type: preproc_def
      name: SILK_PE_MIN_COMPLEX
      pos:
        line_end: 72
        line_start: 71
        source_file: /src/opus/silk/pitch_est_defines.h
      type_or_value: '0'
    - item_type: preproc_def
      name: SILK_PE_MID_COMPLEX
      pos:
        line_end: 73
        line_start: 72
        source_file: /src/opus/silk/pitch_est_defines.h
      type_or_value: '1'
    - item_type: preproc_def
      name: SILK_PE_MAX_COMPLEX
      pos:
        line_end: 74
        line_start: 73
        source_file: /src/opus/silk/pitch_est_defines.h
      type_or_value: '2'
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/silk/tables_LTP.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_decode_frame
  source_file: /src/opus/silk/decode_frame.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_sigm_Q15
  source_file: /src/opus/silk/sigm_Q15.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_VQ_WMat_EC_c
  source_file: /src/opus/silk/VQ_WMat_EC.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - rateID
  - silk_resampler_init
  - silk_resampler
  source_file: /src/opus/silk/resampler.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: USE_silk_resampler_copy
      pos:
        line_end: 73
        line_start: 72
        source_file: /src/opus/silk/resampler.c
      type_or_value: (0)
    - item_type: preproc_def
      name: USE_silk_resampler_private_up2_HQ_wrapper
      pos:
        line_end: 74
        line_start: 73
        source_file: /src/opus/silk/resampler.c
      type_or_value: (1)
    - item_type: preproc_def
      name: USE_silk_resampler_private_IIR_FIR
      pos:
        line_end: 75
        line_start: 74
        source_file: /src/opus/silk/resampler.c
      type_or_value: (2)
    - item_type: preproc_def
      name: USE_silk_resampler_private_down_FIR
      pos:
        line_end: 76
        line_start: 75
        source_file: /src/opus/silk/resampler.c
      type_or_value: (3)
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_resampler_private_down_FIR_INTERPOL
  - silk_resampler_private_down_FIR
  source_file: /src/opus/silk/resampler_private_down_FIR.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_stereo_find_predictor
  source_file: /src/opus/silk/stereo_find_predictor.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_noise_shape_quantizer_short_prediction_c
  - silk_noise_shape_quantizer_short_prediction
  - silk_NSQ_noise_shape_feedback_loop_c
  - silk_NSQ_noise_shape_feedback_loop
  source_file: /src/opus/silk/NSQ.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_control_SNR
  source_file: /src/opus/silk/control_SNR.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_CLZ64
  - silk_CLZ_FRAC
  - silk_SQRT_APPROX
  - silk_DIV32_varQ
  - silk_INVERSE32_varQ
  source_file: /src/opus/silk/Inlines.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_decode_pitch
  source_file: /src/opus/silk/decode_pitch.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/silk/tables_NLSF_CB_NB_MB.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_ADD16
  - silk_ADD16_
  - silk_ADD32
  - silk_ADD32_
  - silk_ADD64
  - silk_ADD64_
  - silk_SUB16
  - silk_SUB16_
  - silk_SUB32
  - silk_SUB32_
  - silk_SUB64
  - silk_SUB64_
  - silk_ADD_SAT16
  - silk_ADD_SAT16_
  - silk_ADD_SAT32
  - silk_ADD_SAT32_
  - silk_ADD_SAT64
  - silk_ADD_SAT64_
  - silk_SUB_SAT16
  - silk_SUB_SAT16_
  - silk_SUB_SAT32
  - silk_SUB_SAT32_
  - silk_SUB_SAT64
  - silk_SUB_SAT64_
  - silk_MUL
  - silk_MUL_
  - silk_MUL_uint
  - opus_uint32::silk_MUL_uint_
  - silk_MLA
  - silk_MLA_
  - silk_MLA_uint
  - silk_MLA_uint_
  - silk_SMULWB
  - silk_SMULWB_
  - silk_SMLAWB
  - silk_SMLAWB_
  - silk_SMULWT
  - silk_SMULWT_
  - silk_SMLAWT
  - silk_SMLAWT_
  - silk_SMULL
  - silk_SMULL_
  - silk_SMLABB
  - silk_SMLABB_
  - silk_SMLABT
  - silk_SMLABT_
  - silk_SMLATT
  - silk_SMLATT_
  - silk_SMULWW
  - silk_SMULWW_
  - silk_SMLAWW
  - silk_SMLAWW_
  - silk_DIV32
  - silk_DIV32_
  - silk_DIV32_16
  - silk_DIV32_16_
  - silk_LSHIFT8
  - silk_LSHIFT8_
  - silk_LSHIFT16
  - silk_LSHIFT16_
  - silk_LSHIFT32
  - silk_LSHIFT32_
  - silk_LSHIFT64
  - silk_LSHIFT64_
  - silk_LSHIFT_ovflw
  - silk_LSHIFT_ovflw_
  - silk_LSHIFT_uint
  - opus_uint32::silk_LSHIFT_uint_
  - silk_RSHITF8
  - silk_RSHIFT8_
  - silk_RSHITF16
  - silk_RSHIFT16_
  - silk_RSHIFT32
  - silk_RSHIFT32_
  - silk_RSHIFT64
  - silk_RSHIFT64_
  - silk_RSHIFT_uint
  - opus_uint32::silk_RSHIFT_uint_
  - silk_ADD_LSHIFT
  - silk_ADD_LSHIFT_
  - silk_ADD_LSHIFT32
  - silk_ADD_LSHIFT32_
  - silk_ADD_LSHIFT_uint
  - opus_uint32::silk_ADD_LSHIFT_uint_
  - silk_ADD_RSHIFT
  - silk_ADD_RSHIFT_
  - silk_ADD_RSHIFT32
  - silk_ADD_RSHIFT32_
  - silk_ADD_RSHIFT_uint
  - opus_uint32::silk_ADD_RSHIFT_uint_
  - silk_SUB_LSHIFT32
  - silk_SUB_LSHIFT32_
  - silk_SUB_RSHIFT32
  - silk_SUB_RSHIFT32_
  - silk_RSHIFT_ROUND
  - silk_RSHIFT_ROUND_
  - silk_RSHIFT_ROUND64
  - silk_RSHIFT_ROUND64_
  - silk_abs_int64
  - silk_abs_int64_
  - silk_abs_int32
  - silk_abs_int32_
  - silk_CHECK_FIT8
  - silk_CHECK_FIT8_
  - silk_CHECK_FIT16
  - silk_CHECK_FIT16_
  - silk_CHECK_FIT32
  - silk_CHECK_FIT32_
  source_file: /src/opus/silk/MacroDebug.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/silk/tables_gain.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/silk/resampler_rom.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: RESAMPLER_DOWN_ORDER_FIR0
      pos:
        line_end: 35
        line_start: 34
        source_file: /src/opus/silk/resampler_rom.h
      type_or_value: '18'
    - item_type: preproc_def
      name: RESAMPLER_DOWN_ORDER_FIR1
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/opus/silk/resampler_rom.h
      type_or_value: '24'
    - item_type: preproc_def
      name: RESAMPLER_DOWN_ORDER_FIR2
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/opus/silk/resampler_rom.h
      type_or_value: '36'
    - item_type: preproc_def
      name: RESAMPLER_ORDER_FIR_12
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/opus/silk/resampler_rom.h
      type_or_value: '8'
    structs: []
    typedefs: []
    union: []
- function_names:
  - combine_and_check
  - silk_encode_pulses
  source_file: /src/opus/silk/encode_pulses.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/silk/tables_NLSF_CB_WB.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/silk/API.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: SILK_MAX_FRAMES_PER_PACKET
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/opus/silk/API.h
      type_or_value: '3'
    structs:
    - fields:
      - name: VADFlag
        type: opus_int
      - name: VADFlags[ SILK_MAX_FRAMES_PER_PACKET ]
        type: opus_int
      - name: inbandFECFlag
        type: opus_int
      item_type: struct
      name: silk_TOC_struct
      pos:
        line_end: 47
        line_start: 43
        source_file: /src/opus/silk/API.h
    typedefs: []
    union: []
- function_names:
  - silk_NLSF_residual_dequant
  - silk_NLSF_decode
  source_file: /src/opus/silk/NLSF_decode.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_ana_filt_bank_1
  source_file: /src/opus/silk/ana_filt_bank_1.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_stereo_encode_pred
  - silk_stereo_encode_mid_only
  source_file: /src/opus/silk/stereo_encode_pred.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/silk/control.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: FLAG_DECODE_NORMAL
      pos:
        line_end: 35
        line_start: 34
        source_file: /src/opus/silk/control.h
      type_or_value: '0'
    - item_type: preproc_def
      name: FLAG_PACKET_LOST
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/opus/silk/control.h
      type_or_value: '1'
    - item_type: preproc_def
      name: FLAG_DECODE_LBRR
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/opus/silk/control.h
      type_or_value: '2'
    structs:
    - fields:
      - name: nChannelsAPI
        type: opus_int32
      - name: nChannelsInternal
        type: opus_int32
      - name: API_sampleRate
        type: opus_int32
      - name: maxInternalSampleRate
        type: opus_int32
      - name: minInternalSampleRate
        type: opus_int32
      - name: desiredInternalSampleRate
        type: opus_int32
      - name: payloadSize_ms
        type: opus_int
      - name: bitRate
        type: opus_int32
      - name: packetLossPercentage
        type: opus_int
      - name: complexity
        type: opus_int
      - name: useInBandFEC
        type: opus_int
      - name: useDRED
        type: opus_int
      - name: LBRR_coded
        type: opus_int
      - name: useDTX
        type: opus_int
      - name: useCBR
        type: opus_int
      - name: maxBits
        type: opus_int
      - name: toMono
        type: opus_int
      - name: opusCanSwitch
        type: opus_int
      - name: reducedDependency
        type: opus_int
      - name: internalSampleRate
        type: opus_int32
      - name: allowBandwidthSwitch
        type: opus_int
      - name: inWBmodeWithoutVariableLP
        type: opus_int
      - name: stereoWidth_Q14
        type: opus_int
      - name: switchReady
        type: opus_int
      - name: signalType
        type: opus_int
      - name: offset
        type: opus_int
      item_type: struct
      name: silk_EncControlStruct
      pos:
        line_end: 119
        line_start: 41
        source_file: /src/opus/silk/control.h
    - fields:
      - name: nChannelsAPI
        type: opus_int32
      - name: nChannelsInternal
        type: opus_int32
      - name: API_sampleRate
        type: opus_int32
      - name: internalSampleRate
        type: opus_int32
      - name: payloadSize_ms
        type: opus_int
      - name: prevPitchLag
        type: opus_int
      - name: enable_deep_plc
        type: opus_int
      item_type: struct
      name: silk_DecControlStruct
      pos:
        line_end: 161
        line_start: 124
        source_file: /src/opus/silk/control.h
    typedefs: []
    union: []
- function_names:
  - silk_decode_indices
  source_file: /src/opus/silk/decode_indices.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - combine_pulses
  - encode_split
  - decode_split
  - silk_shell_encoder
  - silk_shell_decoder
  source_file: /src/opus/silk/shell_coder.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_enc_map
  - silk_dec_map
  - silk_encode_signs
  - silk_decode_signs
  source_file: /src/opus/silk/code_signs.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/silk/errors.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: SILK_NO_ERROR
      pos:
        line_end: 35
        line_start: 34
        source_file: /src/opus/silk/errors.h
      type_or_value: '0'
    - item_type: preproc_def
      name: SILK_ENC_INPUT_INVALID_NO_OF_SAMPLES
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/opus/silk/errors.h
      type_or_value: '-101'
    - item_type: preproc_def
      name: SILK_ENC_FS_NOT_SUPPORTED
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/opus/silk/errors.h
      type_or_value: '-102'
    - item_type: preproc_def
      name: SILK_ENC_PACKET_SIZE_NOT_SUPPORTED
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/opus/silk/errors.h
      type_or_value: '-103'
    - item_type: preproc_def
      name: SILK_ENC_PAYLOAD_BUF_TOO_SHORT
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/opus/silk/errors.h
      type_or_value: '-104'
    - item_type: preproc_def
      name: SILK_ENC_INVALID_LOSS_RATE
      pos:
        line_end: 54
        line_start: 53
        source_file: /src/opus/silk/errors.h
      type_or_value: '-105'
    - item_type: preproc_def
      name: SILK_ENC_INVALID_COMPLEXITY_SETTING
      pos:
        line_end: 57
        line_start: 56
        source_file: /src/opus/silk/errors.h
      type_or_value: '-106'
    - item_type: preproc_def
      name: SILK_ENC_INVALID_INBAND_FEC_SETTING
      pos:
        line_end: 60
        line_start: 59
        source_file: /src/opus/silk/errors.h
      type_or_value: '-107'
    - item_type: preproc_def
      name: SILK_ENC_INVALID_DTX_SETTING
      pos:
        line_end: 63
        line_start: 62
        source_file: /src/opus/silk/errors.h
      type_or_value: '-108'
    - item_type: preproc_def
      name: SILK_ENC_INVALID_CBR_SETTING
      pos:
        line_end: 66
        line_start: 65
        source_file: /src/opus/silk/errors.h
      type_or_value: '-109'
    - item_type: preproc_def
      name: SILK_ENC_INTERNAL_ERROR
      pos:
        line_end: 69
        line_start: 68
        source_file: /src/opus/silk/errors.h
      type_or_value: '-110'
    - item_type: preproc_def
      name: SILK_ENC_INVALID_NUMBER_OF_CHANNELS_ERROR
      pos:
        line_end: 72
        line_start: 71
        source_file: /src/opus/silk/errors.h
      type_or_value: '-111'
    - item_type: preproc_def
      name: SILK_DEC_INVALID_SAMPLING_FREQUENCY
      pos:
        line_end: 79
        line_start: 78
        source_file: /src/opus/silk/errors.h
      type_or_value: '-200'
    - item_type: preproc_def
      name: SILK_DEC_PAYLOAD_TOO_LARGE
      pos:
        line_end: 82
        line_start: 81
        source_file: /src/opus/silk/errors.h
      type_or_value: '-201'
    - item_type: preproc_def
      name: SILK_DEC_PAYLOAD_ERROR
      pos:
        line_end: 85
        line_start: 84
        source_file: /src/opus/silk/errors.h
      type_or_value: '-202'
    - item_type: preproc_def
      name: SILK_DEC_INVALID_FRAME_SIZE
      pos:
        line_end: 88
        line_start: 87
        source_file: /src/opus/silk/errors.h
      type_or_value: '-203'
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_gains_quant
  - silk_gains_dequant
  - silk_gains_ID
  source_file: /src/opus/silk/gain_quant.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: OFFSET
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/opus/silk/gain_quant.c
      type_or_value: ( ( MIN_QGAIN_DB * 128 ) / 6 + 16 * 128 )
    - item_type: preproc_def
      name: SCALE_Q16
      pos:
        line_end: 35
        line_start: 34
        source_file: /src/opus/silk/gain_quant.c
      type_or_value: ( ( 65536 * ( N_LEVELS_QGAIN - 1 ) ) / ( ( ( MAX_QGAIN_DB - MIN_QGAIN_DB
        ) * 128 ) / 6 ) )
    - item_type: preproc_def
      name: INV_SCALE_Q16
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/opus/silk/gain_quant.c
      type_or_value: ( ( 65536 * ( ( ( MAX_QGAIN_DB - MIN_QGAIN_DB ) * 128 ) / 6 )
        ) / ( N_LEVELS_QGAIN - 1 ) )
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_decode_core
  source_file: /src/opus/silk/decode_core.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_NLSF_stabilize
  source_file: /src/opus/silk/NLSF_stabilize.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAX_LOOPS
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/opus/silk/NLSF_stabilize.c
      type_or_value: '20'
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_NSQ_c
  - silk_noise_shape_quantizer
  - silk_nsq_scale_states
  source_file: /src/opus/silk/NSQ.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_NLSF_encode
  source_file: /src/opus/silk/NLSF_encode.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_resampler_down2_3
  source_file: /src/opus/silk/resampler_down2_3.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: ORDER_FIR
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/opus/silk/resampler_down2_3.c
      type_or_value: '4'
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_control_encoder
  - silk_setup_resamplers
  - silk_setup_fs
  - silk_setup_complexity
  - silk_setup_LBRR
  source_file: /src/opus/silk/control_codec.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: silk_encoder_state_Fxx
      pos:
        line_end: 33
        line_start: 32
        source_file: /src/opus/silk/control_codec.c
      type_or_value: silk_encoder_state_FIX
    - item_type: preproc_def
      name: silk_encoder_state_Fxx
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/opus/silk/control_codec.c
      type_or_value: silk_encoder_state_FLP
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_stereo_quant_pred
  source_file: /src/opus/silk/stereo_quant_pred.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_init_encoder
  source_file: /src/opus/silk/init_encoder.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_resampler_private_IIR_FIR_INTERPOL
  - silk_resampler_private_IIR_FIR
  source_file: /src/opus/silk/resampler_private_IIR_FIR.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/silk/structs.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: SILK_DECODER_STATE_RESET_START
      pos:
        line_end: 293
        line_start: 292
        source_file: /src/opus/silk/structs.h
      type_or_value: prev_gain_Q16
    structs:
    - fields:
      - name: xq[           2 * MAX_FRAME_LENGTH ]
        type: opus_int16
      - name: sLTP_shp_Q14[ 2 * MAX_FRAME_LENGTH ]
        type: opus_int32
      - name: sLPC_Q14[ MAX_SUB_FRAME_LENGTH + NSQ_LPC_BUF_LENGTH ]
        type: opus_int32
      - name: sAR2_Q14[ MAX_SHAPE_LPC_ORDER ]
        type: opus_int32
      - name: sLF_AR_shp_Q14
        type: opus_int32
      - name: sDiff_shp_Q14
        type: opus_int32
      - name: lagPrev
        type: opus_int
      - name: sLTP_buf_idx
        type: opus_int
      - name: sLTP_shp_buf_idx
        type: opus_int
      - name: rand_seed
        type: opus_int32
      - name: prev_gain_Q16
        type: opus_int32
      - name: rewhite_flag
        type: opus_int
      item_type: struct
      name: silk_nsq_state
      pos:
        line_end: 68
        line_start: 55
        source_file: /src/opus/silk/structs.h
    - fields:
      - name: AnaState[ 2 ]
        type: opus_int32
      - name: AnaState1[ 2 ]
        type: opus_int32
      - name: AnaState2[ 2 ]
        type: opus_int32
      - name: XnrgSubfr[ VAD_N_BANDS ]
        type: opus_int32
      - name: NrgRatioSmth_Q8[ VAD_N_BANDS ]
        type: opus_int32
      - name: HPstate
        type: opus_int16
      - name: NL[ VAD_N_BANDS ]
        type: opus_int32
      - name: inv_NL[ VAD_N_BANDS ]
        type: opus_int32
      - name: NoiseLevelBias[ VAD_N_BANDS ]
        type: opus_int32
      - name: counter
        type: opus_int32
      item_type: struct
      name: silk_VAD_state
      pos:
        line_end: 84
        line_start: 73
        source_file: /src/opus/silk/structs.h
    - fields:
      - name: In_LP_State[ 2 ]
        type: opus_int32
      - name: transition_frame_no
        type: opus_int32
      - name: mode
        type: opus_int
      - name: saved_fs_kHz
        type: opus_int32
      item_type: struct
      name: silk_LP_state
      pos:
        line_end: 92
        line_start: 87
        source_file: /src/opus/silk/structs.h
    - fields:
      - name: nVectors
        type: opus_int16
      - name: order
        type: opus_int16
      - name: quantStepSize_Q16
        type: opus_int16
      - name: invQuantStepSize_Q6
        type: opus_int16
      - name: '*CB1_NLSF_Q8'
        type: opus_uint8
      - name: '*CB1_Wght_Q9'
        type: opus_int16
      - name: '*CB1_iCDF'
        type: opus_uint8
      - name: '*pred_Q8'
        type: opus_uint8
      - name: '*ec_sel'
        type: opus_uint8
      - name: '*ec_iCDF'
        type: opus_uint8
      - name: '*ec_Rates_Q5'
        type: opus_uint8
      - name: '*deltaMin_Q15'
        type: opus_int16
      item_type: struct
      name: silk_NLSF_CB_struct
      pos:
        line_end: 108
        line_start: 95
        source_file: /src/opus/silk/structs.h
    - fields:
      - name: pred_prev_Q13[ 2 ]
        type: opus_int16
      - name: sMid[ 2 ]
        type: opus_int16
      - name: sSide[ 2 ]
        type: opus_int16
      - name: mid_side_amp_Q0[ 4 ]
        type: opus_int32
      - name: smth_width_Q14
        type: opus_int16
      - name: width_prev_Q14
        type: opus_int16
      - name: silent_side_len
        type: opus_int16
      - name: predIx[ MAX_FRAMES_PER_PACKET ][ 2 ][ 3 ]
        type: opus_int8
      - name: mid_only_flags[ MAX_FRAMES_PER_PACKET ]
        type: opus_int8
      item_type: struct
      name: stereo_enc_state
      pos:
        line_end: 120
        line_start: 110
        source_file: /src/opus/silk/structs.h
    - fields:
      - name: pred_prev_Q13[ 2 ]
        type: opus_int16
      - name: sMid[ 2 ]
        type: opus_int16
      - name: sSide[ 2 ]
        type: opus_int16
      item_type: struct
      name: stereo_dec_state
      pos:
        line_end: 126
        line_start: 122
        source_file: /src/opus/silk/structs.h
    - fields:
      - name: GainsIndices[ MAX_NB_SUBFR ]
        type: opus_int8
      - name: LTPIndex[ MAX_NB_SUBFR ]
        type: opus_int8
      - name: NLSFIndices[ MAX_LPC_ORDER + 1 ]
        type: opus_int8
      - name: lagIndex
        type: opus_int16
      - name: contourIndex
        type: opus_int8
      - name: signalType
        type: opus_int8
      - name: quantOffsetType
        type: opus_int8
      - name: NLSFInterpCoef_Q2
        type: opus_int8
      - name: PERIndex
        type: opus_int8
      - name: LTP_scaleIndex
        type: opus_int8
      - name: Seed
        type: opus_int8
      item_type: struct
      name: SideInfoIndices
      pos:
        line_end: 140
        line_start: 128
        source_file: /src/opus/silk/structs.h
    - fields:
      - name: In_HP_State[ 2 ]
        type: opus_int32
      - name: variable_HP_smth1_Q15
        type: opus_int32
      - name: variable_HP_smth2_Q15
        type: opus_int32
      - name: sLP
        type: silk_LP_state
      - name: sVAD
        type: silk_VAD_state
      - name: sNSQ
        type: silk_nsq_state
      - name: prev_NLSFq_Q15[ MAX_LPC_ORDER ]
        type: opus_int16
      - name: speech_activity_Q8
        type: opus_int
      - name: allow_bandwidth_switch
        type: opus_int
      - name: LBRRprevLastGainIndex
        type: opus_int8
      - name: prevSignalType
        type: opus_int8
      - name: prevLag
        type: opus_int
      - name: pitch_LPC_win_length
        type: opus_int
      - name: max_pitch_lag
        type: opus_int
      - name: API_fs_Hz
        type: opus_int32
      - name: prev_API_fs_Hz
        type: opus_int32
      - name: maxInternal_fs_Hz
        type: opus_int
      - name: minInternal_fs_Hz
        type: opus_int
      - name: desiredInternal_fs_Hz
        type: opus_int
      - name: fs_kHz
        type: opus_int
      - name: nb_subfr
        type: opus_int
      - name: frame_length
        type: opus_int
      - name: subfr_length
        type: opus_int
      - name: ltp_mem_length
        type: opus_int
      - name: la_pitch
        type: opus_int
      - name: la_shape
        type: opus_int
      - name: shapeWinLength
        type: opus_int
      - name: TargetRate_bps
        type: opus_int32
      - name: PacketSize_ms
        type: opus_int
      - name: PacketLoss_perc
        type: opus_int
      - name: frameCounter
        type: opus_int32
      - name: Complexity
        type: opus_int
      - name: nStatesDelayedDecision
        type: opus_int
      - name: useInterpolatedNLSFs
        type: opus_int
      - name: shapingLPCOrder
        type: opus_int
      - name: predictLPCOrder
        type: opus_int
      - name: pitchEstimationComplexity
        type: opus_int
      - name: pitchEstimationLPCOrder
        type: opus_int
      - name: pitchEstimationThreshold_Q16
        type: opus_int32
      - name: sum_log_gain_Q7
        type: opus_int32
      - name: NLSF_MSVQ_Survivors
        type: opus_int
      - name: first_frame_after_reset
        type: opus_int
      - name: controlled_since_last_payload
        type: opus_int
      - name: warping_Q16
        type: opus_int
      - name: useCBR
        type: opus_int
      - name: prefillFlag
        type: opus_int
      - name: '*pitch_lag_low_bits_iCDF'
        type: opus_uint8
      - name: '*pitch_contour_iCDF'
        type: opus_uint8
      - name: '*psNLSF_CB'
        type: silk_NLSF_CB_struct
      - name: input_quality_bands_Q15[ VAD_N_BANDS ]
        type: opus_int
      - name: input_tilt_Q15
        type: opus_int
      - name: SNR_dB_Q7
        type: opus_int
      - name: VAD_flags[ MAX_FRAMES_PER_PACKET ]
        type: opus_int8
      - name: LBRR_flag
        type: opus_int8
      - name: LBRR_flags[ MAX_FRAMES_PER_PACKET ]
        type: opus_int
      - name: indices
        type: SideInfoIndices
      - name: pulses[ MAX_FRAME_LENGTH ]
        type: opus_int8
      - name: arch
        type: int
      - name: inputBuf[ MAX_FRAME_LENGTH + 2 ]
        type: opus_int16
      - name: inputBufIx
        type: opus_int
      - name: nFramesPerPacket
        type: opus_int
      - name: nFramesEncoded
        type: opus_int
      - name: nChannelsAPI
        type: opus_int
      - name: nChannelsInternal
        type: opus_int
      - name: channelNb
        type: opus_int
      - name: frames_since_onset
        type: opus_int
      - name: ec_prevSignalType
        type: opus_int
      - name: ec_prevLagIndex
        type: opus_int16
      - name: resampler_state
        type: silk_resampler_state_struct
      - name: useDTX
        type: opus_int
      - name: inDTX
        type: opus_int
      - name: noSpeechCounter
        type: opus_int
      - name: useInBandFEC
        type: opus_int
      - name: LBRR_enabled
        type: opus_int
      - name: LBRR_GainIncreases
        type: opus_int
      - name: indices_LBRR[ MAX_FRAMES_PER_PACKET ]
        type: SideInfoIndices
      - name: pulses_LBRR[ MAX_FRAMES_PER_PACKET ][ MAX_FRAME_LENGTH ]
        type: opus_int8
      item_type: struct
      name: silk_encoder_state
      pos:
        line_end: 238
        line_start: 145
        source_file: /src/opus/silk/structs.h
    - fields:
      - name: features
        type: OSCEFeatureState
      - name: state
        type: OSCEState
      - name: method
        type: int
      item_type: struct
      name: silk_OSCE_struct
      pos:
        line_end: 246
        line_start: 242
        source_file: /src/opus/silk/structs.h
    - fields:
      - name: features
        type: OSCEBWEFeatureState
      - name: state
        type: OSCEBWEState
      item_type: struct
      name: silk_OSCE_BWE_struct
      pos:
        line_end: 251
        line_start: 248
        source_file: /src/opus/silk/structs.h
    - fields:
      - name: pitchL_Q8
        type: opus_int32
      - name: LTPCoef_Q14[ LTP_ORDER ]
        type: opus_int16
      - name: prevLPC_Q12[ MAX_LPC_ORDER ]
        type: opus_int16
      - name: last_frame_lost
        type: opus_int
      - name: rand_seed
        type: opus_int32
      - name: randScale_Q14
        type: opus_int16
      - name: conc_energy
        type: opus_int32
      - name: conc_energy_shift
        type: opus_int
      - name: prevLTP_scale_Q14
        type: opus_int16
      - name: prevGain_Q16[ 2 ]
        type: opus_int32
      - name: fs_kHz
        type: opus_int
      - name: nb_subfr
        type: opus_int
      - name: subfr_length
        type: opus_int
      - name: enable_deep_plc
        type: opus_int
      item_type: struct
      name: silk_PLC_struct
      pos:
        line_end: 270
        line_start: 255
        source_file: /src/opus/silk/structs.h
    - fields:
      - name: CNG_exc_buf_Q14[ MAX_FRAME_LENGTH ]
        type: opus_int32
      - name: CNG_smth_NLSF_Q15[ MAX_LPC_ORDER ]
        type: opus_int16
      - name: CNG_synth_state[ MAX_LPC_ORDER ]
        type: opus_int32
      - name: CNG_smth_Gain_Q16
        type: opus_int32
      - name: rand_seed
        type: opus_int32
      - name: fs_kHz
        type: opus_int
      item_type: struct
      name: silk_CNG_struct
      pos:
        line_end: 280
        line_start: 273
        source_file: /src/opus/silk/structs.h
    - fields:
      - name: prev_gain_Q16
        type: opus_int32
      - name: exc_Q14[ MAX_FRAME_LENGTH ]
        type: opus_int32
      - name: sLPC_Q14_buf[ MAX_LPC_ORDER ]
        type: opus_int32
      - name: outBuf[ MAX_FRAME_LENGTH + 2 * MAX_SUB_FRAME_LENGTH ]
        type: opus_int16
      - name: lagPrev
        type: opus_int
      - name: LastGainIndex
        type: opus_int8
      - name: fs_kHz
        type: opus_int
      - name: fs_API_hz
        type: opus_int32
      - name: nb_subfr
        type: opus_int
      - name: frame_length
        type: opus_int
      - name: subfr_length
        type: opus_int
      - name: ltp_mem_length
        type: opus_int
      - name: LPC_order
        type: opus_int
      - name: prevNLSF_Q15[ MAX_LPC_ORDER ]
        type: opus_int16
      - name: first_frame_after_reset
        type: opus_int
      - name: '*pitch_lag_low_bits_iCDF'
        type: opus_uint8
      - name: '*pitch_contour_iCDF'
        type: opus_uint8
      - name: nFramesDecoded
        type: opus_int
      - name: nFramesPerPacket
        type: opus_int
      - name: ec_prevSignalType
        type: opus_int
      - name: ec_prevLagIndex
        type: opus_int16
      - name: VAD_flags[ MAX_FRAMES_PER_PACKET ]
        type: opus_int
      - name: LBRR_flag
        type: opus_int
      - name: LBRR_flags[ MAX_FRAMES_PER_PACKET ]
        type: opus_int
      - name: resampler_state
        type: silk_resampler_state_struct
      - name: '*psNLSF_CB'
        type: silk_NLSF_CB_struct
      - name: indices
        type: SideInfoIndices
      - name: sCNG
        type: silk_CNG_struct
      - name: lossCnt
        type: opus_int
      - name: prevSignalType
        type: opus_int
      - name: arch
        type: int
      - name: sPLC
        type: silk_PLC_struct
      item_type: struct
      name: silk_decoder_state
      pos:
        line_end: 340
        line_start: 285
        source_file: /src/opus/silk/structs.h
    - fields:
      - name: pitchL[ MAX_NB_SUBFR ]
        type: opus_int
      - name: Gains_Q16[ MAX_NB_SUBFR ]
        type: opus_int32
      - name: PredCoef_Q12[ 2 ][ MAX_LPC_ORDER ]
        type: silk_DWORD_ALIGN
      - name: LTPCoef_Q14[ LTP_ORDER * MAX_NB_SUBFR ]
        type: opus_int16
      - name: LTP_scale_Q14
        type: opus_int
      item_type: struct
      name: silk_decoder_control
      pos:
        line_end: 353
        line_start: 345
        source_file: /src/opus/silk/structs.h
    typedefs: []
    union: []
- function_names:
  - silk_stereo_LR_to_MS
  source_file: /src/opus/silk/stereo_LR_to_MS.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_NLSF_unpack
  source_file: /src/opus/silk/NLSF_unpack.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_reset_decoder
  - silk_init_decoder
  source_file: /src/opus/silk/init_decoder.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/silk/resampler_private.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: RESAMPLER_MAX_BATCH_SIZE_MS
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/opus/silk/resampler_private.h
      type_or_value: '10'
    - item_type: preproc_def
      name: RESAMPLER_MAX_FS_KHZ
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/opus/silk/resampler_private.h
      type_or_value: '48'
    - item_type: preproc_def
      name: RESAMPLER_MAX_BATCH_SIZE_IN
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/opus/silk/resampler_private.h
      type_or_value: ( RESAMPLER_MAX_BATCH_SIZE_MS * RESAMPLER_MAX_FS_KHZ )
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/silk/tables_pitch_lag.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_biquad_alt_stride2
  - silk_LPC_inverse_pred_gain
  - silk_ROR32
  - silk_memcpy
  - silk_memset
  - silk_memmove
  - silk_MUL
  - silk_MUL_uint
  - silk_MLA
  - silk_MLA_uint
  - silk_SMULTT
  - silk_SMLATT
  - silk_SMLALBB
  - silk_SMULL
  - silk_ADD32_ovflw
  - silk_SUB32_ovflw
  - silk_MLA_ovflw
  - silk_SMLABB_ovflw
  - silk_DIV32_16
  - silk_DIV32
  - silk_ADD16
  - silk_ADD32
  - silk_ADD64
  - silk_SUB16
  - silk_SUB32
  - silk_SUB64
  - silk_SAT8
  - silk_SAT16
  - silk_SAT32
  - silk_CHECK_FIT8
  - silk_CHECK_FIT16
  - silk_CHECK_FIT32
  - silk_ADD_SAT16
  - silk_ADD_SAT64
  - silk_SUB_SAT16
  - silk_SUB_SAT64
  - silk_POS_SAT32
  - silk_ADD_POS_SAT8
  - silk_ADD_POS_SAT16
  - silk_ADD_POS_SAT32
  - silk_LSHIFT8
  - silk_LSHIFT16
  - silk_LSHIFT32
  - silk_LSHIFT64
  - silk_LSHIFT
  - silk_RSHIFT8
  - silk_RSHIFT16
  - silk_RSHIFT32
  - silk_RSHIFT64
  - silk_RSHIFT
  - silk_LSHIFT_SAT32
  - silk_LSHIFT_ovflw
  - silk_LSHIFT_uint
  - silk_RSHIFT_uint
  - silk_ADD_LSHIFT
  - silk_ADD_LSHIFT32
  - silk_ADD_LSHIFT_uint
  - silk_ADD_RSHIFT
  - silk_ADD_RSHIFT32
  - silk_ADD_RSHIFT_uint
  - silk_SUB_LSHIFT32
  - silk_SUB_RSHIFT32
  - silk_RSHIFT_ROUND
  - silk_RSHIFT_ROUND64
  - silk_NSHIFT_MUL_32_32
  - silk_NSHIFT_MUL_16_16
  - silk_min
  - silk_max
  - SILK_FIX_CONST
  - silk_min_int
  - silk_min_16
  - silk_min_32
  - silk_min_64
  - silk_max_int
  - silk_max_16
  - silk_max_32
  - silk_max_64
  - silk_LIMIT
  - silk_abs
  - silk_abs_int
  - silk_abs_int32
  - silk_abs_int64
  - silk_sign
  - silk_RAND
  - silk_SMMUL
  - silk_burg_modified
  - silk_inner_prod16
  source_file: /src/opus/silk/SigProc_FIX.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: SILK_MAX_ORDER_LPC
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/opus/silk/SigProc_FIX.h
      type_or_value: '24            '
    - item_type: preproc_def
      name: silk_DWORD_ALIGN
      pos:
        line_end: 410
        line_start: 409
        source_file: /src/opus/silk/SigProc_FIX.h
      type_or_value: __attribute__((aligned(4)))
    - item_type: preproc_def
      name: silk_LIMIT_int
      pos:
        line_end: 580
        line_start: 579
        source_file: /src/opus/silk/SigProc_FIX.h
      type_or_value: silk_LIMIT
    - item_type: preproc_def
      name: silk_LIMIT_16
      pos:
        line_end: 581
        line_start: 580
        source_file: /src/opus/silk/SigProc_FIX.h
      type_or_value: silk_LIMIT
    - item_type: preproc_def
      name: silk_LIMIT_32
      pos:
        line_end: 582
        line_start: 581
        source_file: /src/opus/silk/SigProc_FIX.h
      type_or_value: silk_LIMIT
    - item_type: preproc_def
      name: RAND_MULTIPLIER
      pos:
        line_end: 595
        line_start: 594
        source_file: /src/opus/silk/SigProc_FIX.h
      type_or_value: '196314165'
    - item_type: preproc_def
      name: RAND_INCREMENT
      pos:
        line_end: 596
        line_start: 595
        source_file: /src/opus/silk/SigProc_FIX.h
      type_or_value: '907633515'
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_decoder_set_fs
  source_file: /src/opus/silk/decoder_set_fs.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/silk/table_LSF_cos.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/silk/tables_other.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_LPC_fit
  source_file: /src/opus/silk/LPC_fit.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_bwexpander
  source_file: /src/opus/silk/bwexpander.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_LoadOSCEModels
  - silk_Get_Decoder_Size
  - silk_ResetDecoder
  - silk_InitDecoder
  - silk_Decode
  - silk_get_TOC
  source_file: /src/opus/silk/dec_API.c
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: channel_state[ DECODER_NUM_CHANNELS ]
        type: silk_decoder_state
      - name: sStereo
        type: stereo_dec_state
      - name: nChannelsAPI
        type: opus_int
      - name: nChannelsInternal
        type: opus_int
      - name: prev_decode_only_middle
        type: opus_int
      item_type: struct
      name: silk_decoder
      pos:
        line_end: 55
        line_start: 46
        source_file: /src/opus/silk/dec_API.c
    typedefs: []
    union: []
- function_names:
  - silk_inner_prod_aligned_scale
  source_file: /src/opus/silk/inner_prod_aligned.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_biquad_alt_stride1
  - silk_biquad_alt_stride2_c
  source_file: /src/opus/silk/biquad_alt.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_LP_interpolate_filter_taps
  - silk_LP_variable_cutoff
  source_file: /src/opus/silk/LP_variable_cutoff.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_NLSF2A_find_poly
  - silk_NLSF2A
  source_file: /src/opus/silk/NLSF2A.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: QA
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/opus/silk/NLSF2A.c
      type_or_value: '16'
    structs: []
    typedefs: []
    union: []
- function_names:
  - check_stability
  - main
  source_file: /src/opus/silk/tests/test_unit_LPC_inv_pred_gain.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_VQ_WMat_EC
  - silk_VQ_WMat_EC
  - silk_NSQ
  - silk_NSQ
  - silk_NSQ_del_dec
  - silk_NSQ_del_dec
  - silk_NSQ_del_dec
  - silk_VAD_GetSA_Q8
  - silk_VAD_GetSA_Q8
  - silk_inner_product_FLP
  - silk_inner_product_FLP
  source_file: /src/opus/silk/x86/main_sse.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_VAD_GetSA_Q8_sse4_1
  source_file: /src/opus/silk/x86/VAD_sse4_1.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_VQ_WMat_EC_sse4_1
  source_file: /src/opus/silk/x86/VQ_WMat_EC_sse4_1.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/silk/x86/x86_silk_map.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_NSQ_del_dec_sse4_1
  - silk_noise_shape_quantizer_del_dec_sse4_1
  - silk_nsq_del_dec_scale_states_sse4_1
  source_file: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: sLPC_Q14[ MAX_SUB_FRAME_LENGTH + NSQ_LPC_BUF_LENGTH ]
        type: opus_int32
      - name: RandState[ DECISION_DELAY ]
        type: opus_int32
      - name: Q_Q10[     DECISION_DELAY ]
        type: opus_int32
      - name: Xq_Q14[    DECISION_DELAY ]
        type: opus_int32
      - name: Pred_Q15[  DECISION_DELAY ]
        type: opus_int32
      - name: Shape_Q14[ DECISION_DELAY ]
        type: opus_int32
      - name: sAR2_Q14[ MAX_SHAPE_LPC_ORDER ]
        type: opus_int32
      - name: LF_AR_Q14
        type: opus_int32
      - name: Diff_Q14
        type: opus_int32
      - name: Seed
        type: opus_int32
      - name: SeedInit
        type: opus_int32
      - name: RD_Q10
        type: opus_int32
      item_type: struct
      name: NSQ_del_dec_struct
      pos:
        line_end: 52
        line_start: 39
        source_file: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c
    - fields:
      - name: Q_Q10
        type: opus_int32
      - name: RD_Q10
        type: opus_int32
      - name: xq_Q14
        type: opus_int32
      - name: LF_AR_Q14
        type: opus_int32
      - name: Diff_Q14
        type: opus_int32
      - name: sLTP_shp_Q14
        type: opus_int32
      - name: LPC_exc_Q14
        type: opus_int32
      item_type: struct
      name: NSQ_sample_struct
      pos:
        line_end: 62
        line_start: 54
        source_file: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c
    typedefs:
    - item_type: typedef
      name: NSQ_sample_pair[ 2 ]
      pos:
        line_end: 64
        line_start: 64
        source_file: /src/opus/silk/x86/NSQ_del_dec_sse4_1.c
      type: NSQ_sample_struct
    union: []
- function_names:
  - silk_NSQ_sse4_1
  - silk_noise_shape_quantizer_10_16_sse4_1
  - silk_nsq_scale_states_sse4_1
  source_file: /src/opus/silk/x86/NSQ_sse4_1.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - verify_assumptions
  - __builtin_sadd_overflow
  - __builtin_ctz
  - silk_cvtepi64_epi32_high
  - silk_sat16
  - silk_sar_round_32
  - silk_sar_round_smulww
  - silk_add_sat32
  - silk_mm_srai_round_epi32
  - silk_mm_add_sat_epi32
  - silk_mm_sub_sat_epi32
  - silk_mm256_sub_sat_epi32
  - silk_mm_limit_epi32
  - silk_mm_sign_epi32
  - silk_mm256_sign_epi32
  - silk_mm_smulww_epi32
  - silk_mm_smulwb_epi32
  - silk_mm256_smulbb_epi32
  - silk_mm256_reverse_epi32
  - silk_mm256_hsum_epi32
  - silk_mm_hmin_epi32
  - silk_mm_hmax_epi32
  - silk_mm_mask_hmin_epi32
  - silk_mm_mask_hmax_epi32
  - silk_mm256_rand_epi32
  - silk_index_of_first_equal_epi32
  - silk_index_to_selector
  - silk_select_winner
  - silk_NSQ_del_dec_avx2
  - silk_noise_shape_quantizer_short_prediction_x4
  - silk_noise_shape_quantizer_del_dec_avx2
  - silk_nsq_del_dec_scale_states_avx2
  - silk_LPC_analysis_filter_avx2
  source_file: /src/opus/silk/x86/NSQ_del_dec_avx2.c
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: RandState
        type: __m128i
      - name: Q_Q10
        type: __m128i
      - name: Xq_Q14
        type: __m128i
      - name: Pred_Q15
        type: __m128i
      - name: Shape_Q14
        type: __m128i
      item_type: struct
      name: NSQ_del_dec_sample_struct
      pos:
        line_end: 287
        line_start: 280
        source_file: /src/opus/silk/x86/NSQ_del_dec_avx2.c
    - fields:
      - name: sLPC_Q14[MAX_SUB_FRAME_LENGTH + NSQ_LPC_BUF_LENGTH]
        type: __m128i
      - name: LF_AR_Q14
        type: __m128i
      - name: Seed
        type: __m128i
      - name: SeedInit
        type: __m128i
      - name: RD_Q10
        type: __m128i
      - name: Diff_Q14
        type: __m128i
      - name: sAR2_Q14[MAX_SHAPE_LPC_ORDER]
        type: __m128i
      - name: Samples[DECISION_DELAY]
        type: NSQ_del_dec_sample_struct
      item_type: struct
      name: NSQ_del_dec_struct
      pos:
        line_end: 299
        line_start: 289
        source_file: /src/opus/silk/x86/NSQ_del_dec_avx2.c
    typedefs: []
    union: []
- function_names:
  - silk_burg_modified
  - silk_burg_modified
  - silk_inner_prod16
  - silk_inner_prod16
  source_file: /src/opus/silk/x86/SigProc_FIX_sse.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_k2a
  source_file: /src/opus/silk/fixed/k2a_FIX.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_find_pitch_lags_FIX
  source_file: /src/opus/silk/fixed/find_pitch_lags_FIX.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_schur
  source_file: /src/opus/silk/fixed/schur_FIX.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_regularize_correlations_FIX
  source_file: /src/opus/silk/fixed/regularize_correlations_FIX.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_warped_autocorrelation_FIX_c
  source_file: /src/opus/silk/fixed/warped_autocorrelation_FIX.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_apply_sine_window
  source_file: /src/opus/silk/fixed/apply_sine_window_FIX.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_pitch_analysis_core
  - silk_P_Ana_calc_corr_st3
  - silk_P_Ana_calc_energy_st3
  source_file: /src/opus/silk/fixed/pitch_analysis_core_FIX.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: SCRATCH_SIZE
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/opus/silk/fixed/pitch_analysis_core_FIX.c
      type_or_value: '22'
    - item_type: preproc_def
      name: SF_LENGTH_4KHZ
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/opus/silk/fixed/pitch_analysis_core_FIX.c
      type_or_value: ( PE_SUBFR_LENGTH_MS * 4 )
    - item_type: preproc_def
      name: SF_LENGTH_8KHZ
      pos:
        line_end: 43
        line_start: 42
        source_file: /src/opus/silk/fixed/pitch_analysis_core_FIX.c
      type_or_value: ( PE_SUBFR_LENGTH_MS * 8 )
    - item_type: preproc_def
      name: MIN_LAG_4KHZ
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/opus/silk/fixed/pitch_analysis_core_FIX.c
      type_or_value: ( PE_MIN_LAG_MS * 4 )
    - item_type: preproc_def
      name: MIN_LAG_8KHZ
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/opus/silk/fixed/pitch_analysis_core_FIX.c
      type_or_value: ( PE_MIN_LAG_MS * 8 )
    - item_type: preproc_def
      name: MAX_LAG_4KHZ
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/opus/silk/fixed/pitch_analysis_core_FIX.c
      type_or_value: ( PE_MAX_LAG_MS * 4 )
    - item_type: preproc_def
      name: MAX_LAG_8KHZ
      pos:
        line_end: 47
        line_start: 46
        source_file: /src/opus/silk/fixed/pitch_analysis_core_FIX.c
      type_or_value: ( PE_MAX_LAG_MS * 8 - 1 )
    - item_type: preproc_def
      name: CSTRIDE_4KHZ
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/opus/silk/fixed/pitch_analysis_core_FIX.c
      type_or_value: ( MAX_LAG_4KHZ + 1 - MIN_LAG_4KHZ )
    - item_type: preproc_def
      name: CSTRIDE_8KHZ
      pos:
        line_end: 49
        line_start: 48
        source_file: /src/opus/silk/fixed/pitch_analysis_core_FIX.c
      type_or_value: ( MAX_LAG_8KHZ + 3 - ( MIN_LAG_8KHZ - 2 ) )
    - item_type: preproc_def
      name: D_COMP_MIN
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/opus/silk/fixed/pitch_analysis_core_FIX.c
      type_or_value: ( MIN_LAG_8KHZ - 3 )
    - item_type: preproc_def
      name: D_COMP_MAX
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/opus/silk/fixed/pitch_analysis_core_FIX.c
      type_or_value: ( MAX_LAG_8KHZ + 4 )
    - item_type: preproc_def
      name: D_COMP_STRIDE
      pos:
        line_end: 52
        line_start: 51
        source_file: /src/opus/silk/fixed/pitch_analysis_core_FIX.c
      type_or_value: ( D_COMP_MAX - D_COMP_MIN )
    structs: []
    typedefs:
    - item_type: typedef
      name: silk_pe_stage3_vals[ PE_NB_STAGE3_LAGS ]
      pos:
        line_end: 53
        line_start: 53
        source_file: /src/opus/silk/fixed/pitch_analysis_core_FIX.c
      type: opus_int32
    union: []
- function_names:
  - silk_k2a_Q16
  source_file: /src/opus/silk/fixed/k2a_Q16_FIX.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_corrVector_FIX
  - silk_corrMatrix_FIX
  source_file: /src/opus/silk/fixed/corrMatrix_FIX.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_process_gains_FIX
  source_file: /src/opus/silk/fixed/process_gains_FIX.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_burg_modified_c
  source_file: /src/opus/silk/fixed/burg_modified_FIX.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAX_FRAME_SIZE
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/opus/silk/fixed/burg_modified_FIX.c
      type_or_value: '384             '
    - item_type: preproc_def
      name: QA
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/opus/silk/fixed/burg_modified_FIX.c
      type_or_value: '25'
    - item_type: preproc_def
      name: N_BITS_HEAD_ROOM
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/opus/silk/fixed/burg_modified_FIX.c
      type_or_value: '3'
    - item_type: preproc_def
      name: MIN_RSHIFTS
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/opus/silk/fixed/burg_modified_FIX.c
      type_or_value: '-16'
    - item_type: preproc_def
      name: MAX_RSHIFTS
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/opus/silk/fixed/burg_modified_FIX.c
      type_or_value: (32 - QA)
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_encode_do_VAD_FIX
  - silk_encode_frame_FIX
  - silk_LBRR_encode_FIX
  source_file: /src/opus/silk/fixed/encode_frame_FIX.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_warped_autocorrelation_FIX
  source_file: /src/opus/silk/fixed/main_FIX.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: silk_encoder_state_Fxx
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/opus/silk/fixed/main_FIX.h
      type_or_value: silk_encoder_state_FIX
    - item_type: preproc_def
      name: silk_encode_do_VAD_Fxx
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/opus/silk/fixed/main_FIX.h
      type_or_value: silk_encode_do_VAD_FIX
    - item_type: preproc_def
      name: silk_encode_frame_Fxx
      pos:
        line_end: 47
        line_start: 46
        source_file: /src/opus/silk/fixed/main_FIX.h
      type_or_value: silk_encode_frame_FIX
    - item_type: preproc_def
      name: QC
      pos:
        line_end: 49
        line_start: 48
        source_file: /src/opus/silk/fixed/main_FIX.h
      type_or_value: '10'
    - item_type: preproc_def
      name: QS
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/opus/silk/fixed/main_FIX.h
      type_or_value: '13'
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_residual_energy_FIX
  source_file: /src/opus/silk/fixed/residual_energy_FIX.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_autocorr
  source_file: /src/opus/silk/fixed/autocorr_FIX.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_schur64
  source_file: /src/opus/silk/fixed/schur64_FIX.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_residual_energy16_covar_FIX
  source_file: /src/opus/silk/fixed/residual_energy16_FIX.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_LTP_scale_ctrl_FIX
  source_file: /src/opus/silk/fixed/LTP_scale_ctrl_FIX.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/silk/fixed/structs_FIX.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: LastGainIndex
        type: opus_int8
      - name: HarmBoost_smth_Q16
        type: opus_int32
      - name: HarmShapeGain_smth_Q16
        type: opus_int32
      - name: Tilt_smth_Q16
        type: opus_int32
      item_type: struct
      name: silk_shape_state_FIX
      pos:
        line_end: 43
        line_start: 38
        source_file: /src/opus/silk/fixed/structs_FIX.h
    - fields:
      - name: sCmn
        type: silk_encoder_state
      - name: sShape
        type: silk_shape_state_FIX
      - name: opus_int16 x_buf[ 2 * MAX_FRAME_LENGTH + LA_SHAPE_MAX ]
        type: silk_DWORD_ALIGN
      - name: LTPCorr_Q15
        type: opus_int
      - name: resNrgSmth
        type: opus_int32
      item_type: struct
      name: silk_encoder_state_FIX
      pos:
        line_end: 56
        line_start: 48
        source_file: /src/opus/silk/fixed/structs_FIX.h
    - fields:
      - name: Gains_Q16[ MAX_NB_SUBFR ]
        type: opus_int32
      - name: PredCoef_Q12[ 2 ][ MAX_LPC_ORDER ]
        type: silk_DWORD_ALIGN
      - name: LTPCoef_Q14[ LTP_ORDER * MAX_NB_SUBFR ]
        type: opus_int16
      - name: LTP_scale_Q14
        type: opus_int
      - name: pitchL[ MAX_NB_SUBFR ]
        type: opus_int
      - name: opus_int16 AR_Q13[ MAX_NB_SUBFR * MAX_SHAPE_LPC_ORDER ]
        type: silk_DWORD_ALIGN
      - name: LF_shp_Q14[        MAX_NB_SUBFR ]
        type: opus_int32
      - name: Tilt_Q14[          MAX_NB_SUBFR ]
        type: opus_int
      - name: HarmShapeGain_Q14[ MAX_NB_SUBFR ]
        type: opus_int
      - name: Lambda_Q10
        type: opus_int
      - name: input_quality_Q14
        type: opus_int
      - name: coding_quality_Q14
        type: opus_int
      - name: predGain_Q16
        type: opus_int32
      - name: LTPredCodGain_Q7
        type: opus_int
      - name: ResNrg[ MAX_NB_SUBFR ]
        type: opus_int32
      - name: ResNrgQ[ MAX_NB_SUBFR ]
        type: opus_int
      - name: GainsUnq_Q16[ MAX_NB_SUBFR ]
        type: opus_int32
      - name: lastGainIndexPrev
        type: opus_int8
      item_type: struct
      name: silk_encoder_control_FIX
      pos:
        line_end: 88
        line_start: 61
        source_file: /src/opus/silk/fixed/structs_FIX.h
    - fields:
      - name: sStereo
        type: stereo_enc_state
      - name: nBitsUsedLBRR
        type: opus_int32
      - name: nBitsExceeded
        type: opus_int32
      - name: nChannelsAPI
        type: opus_int
      - name: nChannelsInternal
        type: opus_int
      - name: nPrevChannelsInternal
        type: opus_int
      - name: timeSinceSwitchAllowed_ms
        type: opus_int
      - name: allowBandwidthSwitch
        type: opus_int
      - name: prev_decode_only_middle
        type: opus_int
      - name: state_Fxx[ ENCODER_NUM_CHANNELS ]
        type: silk_encoder_state_FIX
      item_type: struct
      name: silk_encoder
      pos:
        line_end: 105
        line_start: 93
        source_file: /src/opus/silk/fixed/structs_FIX.h
    typedefs: []
    union: []
- function_names:
  - silk_find_pred_coefs_FIX
  source_file: /src/opus/silk/fixed/find_pred_coefs_FIX.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_find_LTP_FIX
  source_file: /src/opus/silk/fixed/find_LTP_FIX.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_LTP_analysis_filter_FIX
  source_file: /src/opus/silk/fixed/LTP_analysis_filter_FIX.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - warped_gain
  - limit_warped_coefs
  - silk_noise_shape_analysis_FIX
  source_file: /src/opus/silk/fixed/noise_shape_analysis_FIX.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_find_LPC_FIX
  source_file: /src/opus/silk/fixed/find_LPC_FIX.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_scale_copy_vector16
  - silk_scale_vector32_Q26_lshift_18
  - silk_inner_prod_aligned
  - silk_inner_prod16_c
  source_file: /src/opus/silk/fixed/vector_ops_FIX.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_burg_modified_sse4_1
  source_file: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAX_FRAME_SIZE
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c
      type_or_value: '384             '
    - item_type: preproc_def
      name: QA
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c
      type_or_value: '25'
    - item_type: preproc_def
      name: N_BITS_HEAD_ROOM
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c
      type_or_value: '3'
    - item_type: preproc_def
      name: MIN_RSHIFTS
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c
      type_or_value: '-16'
    - item_type: preproc_def
      name: MAX_RSHIFTS
      pos:
        line_end: 47
        line_start: 46
        source_file: /src/opus/silk/fixed/x86/burg_modified_FIX_sse4_1.c
      type_or_value: (32 - QA)
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_inner_prod16_sse4_1
  source_file: /src/opus/silk/fixed/x86/vector_ops_FIX_sse4_1.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - MIPS_MADD
  - MIPS_SHILO
  - silk_warped_autocorrelation_FIX_c
  source_file: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MIPS_MADD
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h
      type_or_value: __builtin_mips_madd
    - item_type: preproc_def
      name: MIPS_SHILO
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h
      type_or_value: __builtin_mips_shilo
    - item_type: preproc_def
      name: QC
      pos:
        line_end: 62
        line_start: 61
        source_file: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h
      type_or_value: '10'
    - item_type: preproc_def
      name: QS
      pos:
        line_end: 65
        line_start: 64
        source_file: /src/opus/silk/fixed/mips/warped_autocorrelation_FIX_mipsr1.h
      type_or_value: '14'
    structs: []
    typedefs: []
    union: []
- function_names:
  - calc_corr
  - calc_state
  - silk_warped_autocorrelation_FIX_neon
  source_file: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_neon_intr.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_warped_autocorrelation_FIX
  - silk_warped_autocorrelation_FIX
  - silk_warped_autocorrelation_FIX
  source_file: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_arm.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: OVERRIDE_silk_warped_autocorrelation_FIX
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_arm.h
      type_or_value: (1)
    - item_type: preproc_def
      name: OVERRIDE_silk_warped_autocorrelation_FIX
      pos:
        line_end: 56
        line_start: 55
        source_file: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_arm.h
      type_or_value: (1)
    - item_type: preproc_def
      name: OVERRIDE_silk_warped_autocorrelation_FIX
      pos:
        line_end: 60
        line_start: 59
        source_file: /src/opus/silk/fixed/arm/warped_autocorrelation_FIX_arm.h
      type_or_value: (1)
    structs: []
    typedefs: []
    union: []
- function_names:
  - MIPS_MULT
  - MIPS_MADD
  - MIPS_EXTR_R
  - silk_noise_shape_quantizer_short_prediction_mips
  - silk_noise_shape_quantizer_short_prediction
  - silk_NSQ_noise_shape_feedback_loop_mips
  - silk_NSQ_noise_shape_feedback_loop
  source_file: /src/opus/silk/mips/NSQ_mips.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MIPS_MULT
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/opus/silk/mips/NSQ_mips.h
      type_or_value: __builtin_mips_mult
    - item_type: preproc_def
      name: MIPS_MADD
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/opus/silk/mips/NSQ_mips.h
      type_or_value: __builtin_mips_madd
    - item_type: preproc_def
      name: MIPS_EXTR_R
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/opus/silk/mips/NSQ_mips.h
      type_or_value: __builtin_mips_extr_r_w
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_SAT16
  - silk_LSHIFT_SAT32
  - silk_RSHIFT_ROUND
  source_file: /src/opus/silk/mips/sigproc_fix_mipsr1.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_SMULWB
  - silk_SMLAWB
  - silk_SMULWW
  - silk_SMLAWW
  - silk_SMULWB
  - silk_SMLAWB
  - mips_clz
  - silk_CLZ16
  - silk_CLZ32
  source_file: /src/opus/silk/mips/macros_mipsr1.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/silk/float/structs_FLP.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: LastGainIndex
        type: opus_int8
      - name: HarmShapeGain_smth
        type: silk_float
      - name: Tilt_smth
        type: silk_float
      item_type: struct
      name: silk_shape_state_FLP
      pos:
        line_end: 42
        line_start: 38
        source_file: /src/opus/silk/float/structs_FLP.h
    - fields:
      - name: sCmn
        type: silk_encoder_state
      - name: sShape
        type: silk_shape_state_FLP
      - name: x_buf[ 2 * MAX_FRAME_LENGTH + LA_SHAPE_MAX ]
        type: silk_float
      - name: LTPCorr
        type: silk_float
      item_type: struct
      name: silk_encoder_state_FLP
      pos:
        line_end: 54
        line_start: 47
        source_file: /src/opus/silk/float/structs_FLP.h
    - fields:
      - name: Gains[ MAX_NB_SUBFR ]
        type: silk_float
      - name: PredCoef[ 2 ][ MAX_LPC_ORDER ]
        type: silk_float
      - name: LTPCoef[LTP_ORDER * MAX_NB_SUBFR]
        type: silk_float
      - name: LTP_scale
        type: silk_float
      - name: pitchL[ MAX_NB_SUBFR ]
        type: opus_int
      - name: AR[ MAX_NB_SUBFR * MAX_SHAPE_LPC_ORDER ]
        type: silk_float
      - name: LF_MA_shp[     MAX_NB_SUBFR ]
        type: silk_float
      - name: LF_AR_shp[     MAX_NB_SUBFR ]
        type: silk_float
      - name: Tilt[          MAX_NB_SUBFR ]
        type: silk_float
      - name: HarmShapeGain[ MAX_NB_SUBFR ]
        type: silk_float
      - name: Lambda
        type: silk_float
      - name: input_quality
        type: silk_float
      - name: coding_quality
        type: silk_float
      - name: predGain
        type: silk_float
      - name: LTPredCodGain
        type: silk_float
      - name: ResNrg[ MAX_NB_SUBFR ]
        type: silk_float
      - name: GainsUnq_Q16[ MAX_NB_SUBFR ]
        type: opus_int32
      - name: lastGainIndexPrev
        type: opus_int8
      item_type: struct
      name: silk_encoder_control_FLP
      pos:
        line_end: 85
        line_start: 59
        source_file: /src/opus/silk/float/structs_FLP.h
    - fields:
      - name: sStereo
        type: stereo_enc_state
      - name: nBitsUsedLBRR
        type: opus_int32
      - name: nBitsExceeded
        type: opus_int32
      - name: nChannelsAPI
        type: opus_int
      - name: nChannelsInternal
        type: opus_int
      - name: nPrevChannelsInternal
        type: opus_int
      - name: timeSinceSwitchAllowed_ms
        type: opus_int
      - name: allowBandwidthSwitch
        type: opus_int
      - name: prev_decode_only_middle
        type: opus_int
      - name: state_Fxx[ ENCODER_NUM_CHANNELS ]
        type: silk_encoder_state_FLP
      item_type: struct
      name: silk_encoder
      pos:
        line_end: 102
        line_start: 90
        source_file: /src/opus/silk/float/structs_FLP.h
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/silk/float/main_FLP.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: silk_encoder_state_Fxx
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/opus/silk/float/main_FLP.h
      type_or_value: silk_encoder_state_FLP
    - item_type: preproc_def
      name: silk_encode_do_VAD_Fxx
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/opus/silk/float/main_FLP.h
      type_or_value: silk_encode_do_VAD_FLP
    - item_type: preproc_def
      name: silk_encode_frame_Fxx
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/opus/silk/float/main_FLP.h
      type_or_value: silk_encode_frame_FLP
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_scale_vector_FLP
  source_file: /src/opus/silk/float/scale_vector_FLP.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_corrVector_FLP
  - silk_corrMatrix_FLP
  source_file: /src/opus/silk/float/corrMatrix_FLP.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_LPC_inverse_pred_gain_FLP
  source_file: /src/opus/silk/float/LPC_inv_pred_gain_FLP.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_find_pred_coefs_FLP
  source_file: /src/opus/silk/float/find_pred_coefs_FLP.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_pitch_analysis_core_FLP
  - silk_P_Ana_calc_corr_st3
  - silk_P_Ana_calc_energy_st3
  source_file: /src/opus/silk/float/pitch_analysis_core_FLP.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: SCRATCH_SIZE
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/opus/silk/float/pitch_analysis_core_FLP.c
      type_or_value: '22'
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_LTP_scale_ctrl_FLP
  source_file: /src/opus/silk/float/LTP_scale_ctrl_FLP.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_process_gains_FLP
  source_file: /src/opus/silk/float/process_gains_FLP.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_warped_autocorrelation_FLP
  source_file: /src/opus/silk/float/warped_autocorrelation_FLP.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_bwexpander_FLP
  source_file: /src/opus/silk/float/bwexpander_FLP.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_burg_modified_FLP
  source_file: /src/opus/silk/float/burg_modified_FLP.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAX_FRAME_SIZE
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/opus/silk/float/burg_modified_FLP.c
      type_or_value: '384 '
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_inner_product_FLP_c
  source_file: /src/opus/silk/float/inner_product_FLP.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_residual_energy_covar_FLP
  - silk_residual_energy_FLP
  source_file: /src/opus/silk/float/residual_energy_FLP.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAX_ITERATIONS_RESIDUAL_NRG
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/opus/silk/float/residual_energy_FLP.c
      type_or_value: '10'
    - item_type: preproc_def
      name: REGULARIZATION_FACTOR
      pos:
        line_end: 35
        line_start: 34
        source_file: /src/opus/silk/float/residual_energy_FLP.c
      type_or_value: 1e-8f
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_LPC_analysis_filter16_FLP
  - silk_LPC_analysis_filter12_FLP
  - silk_LPC_analysis_filter10_FLP
  - silk_LPC_analysis_filter8_FLP
  - silk_LPC_analysis_filter6_FLP
  - silk_LPC_analysis_filter_FLP
  source_file: /src/opus/silk/float/LPC_analysis_filter_FLP.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_autocorrelation_FLP
  source_file: /src/opus/silk/float/autocorrelation_FLP.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_find_LPC_FLP
  source_file: /src/opus/silk/float/find_LPC_FLP.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - warped_gain
  - warped_true2monic_coefs
  - limit_coefs
  - silk_noise_shape_analysis_FLP
  source_file: /src/opus/silk/float/noise_shape_analysis_FLP.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_energy_FLP
  source_file: /src/opus/silk/float/energy_FLP.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_encode_do_VAD_FLP
  - silk_encode_frame_FLP
  - silk_LBRR_encode_FLP
  source_file: /src/opus/silk/float/encode_frame_FLP.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_A2NLSF_FLP
  - silk_NLSF2A_FLP
  - silk_process_NLSFs_FLP
  - silk_NSQ_wrapper_FLP
  - silk_quant_LTP_gains_FLP
  source_file: /src/opus/silk/float/wrappers_FLP.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_schur_FLP
  source_file: /src/opus/silk/float/schur_FLP.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_apply_sine_window_FLP
  source_file: /src/opus/silk/float/apply_sine_window_FLP.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_inner_product_FLP
  - silk_min_float
  - silk_max_float
  - silk_abs_float
  - silk_sigmoid
  - silk_float2int
  - silk_float2short_array
  - silk_short2float_array
  - silk_log2
  source_file: /src/opus/silk/float/SigProc_FLP.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: PI
      pos:
        line_end: 147
        line_start: 146
        source_file: /src/opus/silk/float/SigProc_FLP.h
      type_or_value: (3.1415926536f)
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_find_LTP_FLP
  source_file: /src/opus/silk/float/find_LTP_FLP.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_find_pitch_lags_FLP
  source_file: /src/opus/silk/float/find_pitch_lags_FLP.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_scale_copy_vector_FLP
  source_file: /src/opus/silk/float/scale_copy_vector_FLP.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_insertion_sort_decreasing_FLP
  source_file: /src/opus/silk/float/sort_FLP.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_LTP_analysis_filter_FLP
  source_file: /src/opus/silk/float/LTP_analysis_filter_FLP.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_k2a_FLP
  source_file: /src/opus/silk/float/k2a_FLP.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_regularize_correlations_FLP
  source_file: /src/opus/silk/float/regularize_correlations_FLP.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_inner_product_FLP_avx2
  source_file: /src/opus/silk/float/x86/inner_product_FLP_avx2.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - SAFE_SHL
  - silk_SMULWB_lx7
  - silk_SMULWB
  - silk_SMLAWB
  - silk_SMULWT_lx7
  - silk_SMLAWT
  - silk_CLZ32_lx7
  - silk_CLZ32
  source_file: /src/opus/silk/xtensa/macros_lx7.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_SAT16_lx7
  - silk_SAT16
  source_file: /src/opus/silk/xtensa/SigProc_FIX_lx7.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_NSQ_del_dec
  - silk_NSQ_del_dec
  - silk_NSQ_del_dec
  source_file: /src/opus/silk/arm/NSQ_del_dec_arm.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: OVERRIDE_silk_NSQ_del_dec
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/opus/silk/arm/NSQ_del_dec_arm.h
      type_or_value: (1)
    - item_type: preproc_def
      name: OVERRIDE_silk_NSQ_del_dec
      pos:
        line_end: 77
        line_start: 76
        source_file: /src/opus/silk/arm/NSQ_del_dec_arm.h
      type_or_value: (1)
    - item_type: preproc_def
      name: OVERRIDE_silk_NSQ_del_dec
      pos:
        line_end: 87
        line_start: 86
        source_file: /src/opus/silk/arm/NSQ_del_dec_arm.h
      type_or_value: (1)
    structs: []
    typedefs: []
    union: []
- function_names:
  - SAFE_SHL
  - silk_SMULWB_armv4
  - silk_SMULWB
  - silk_SMLAWB
  - silk_SMULWT_armv4
  - silk_SMULWT
  - silk_SMLAWT
  - silk_SMULWW_armv4
  - silk_SMULWW
  - silk_SMLAWW_armv4
  - silk_SMLAWW
  source_file: /src/opus/silk/arm/macros_armv4.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_noise_shape_quantizer_short_prediction_neon
  - silk_NSQ_noise_shape_feedback_loop_neon
  source_file: /src/opus/silk/arm/NSQ_neon.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_MLA_armv4
  - silk_MLA
  source_file: /src/opus/silk/arm/SigProc_FIX_armv4.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_LPC_inverse_pred_gain
  - silk_LPC_inverse_pred_gain
  - silk_LPC_inverse_pred_gain
  source_file: /src/opus/silk/arm/LPC_inv_pred_gain_arm.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: OVERRIDE_silk_LPC_inverse_pred_gain
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/opus/silk/arm/LPC_inv_pred_gain_arm.h
      type_or_value: (1)
    - item_type: preproc_def
      name: OVERRIDE_silk_LPC_inverse_pred_gain
      pos:
        line_end: 49
        line_start: 48
        source_file: /src/opus/silk/arm/LPC_inv_pred_gain_arm.h
      type_or_value: (1)
    - item_type: preproc_def
      name: OVERRIDE_silk_LPC_inverse_pred_gain
      pos:
        line_end: 52
        line_start: 51
        source_file: /src/opus/silk/arm/LPC_inv_pred_gain_arm.h
      type_or_value: (1)
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/silk/arm/arm_silk_map.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_ADD_SAT32
  - silk_SUB_SAT32
  source_file: /src/opus/silk/arm/macros_arm64.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - SAFE_SHL
  - silk_SMULWB_armv5e
  - silk_SMULWB
  - silk_SMLAWB_armv5e
  - silk_SMLAWB
  - silk_SMULWT_armv5e
  - silk_SMULWT
  - silk_SMLAWT_armv5e
  - silk_SMLAWT
  - silk_SMULBB_armv5e
  - silk_SMULBB
  - silk_SMLABB_armv5e
  - silk_SMLABB
  - silk_SMULBT_armv5e
  - silk_SMULBT
  - silk_SMLABT_armv5e
  - silk_SMLABT
  - silk_ADD_SAT32_armv5e
  - silk_ADD_SAT32
  - silk_SUB_SAT32_armv5e
  - silk_SUB_SAT32
  - silk_CLZ16_armv5
  - silk_CLZ16
  - silk_CLZ32_armv5
  - silk_CLZ32
  source_file: /src/opus/silk/arm/macros_armv5e.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_biquad_alt_stride2_kernel
  - silk_biquad_alt_stride2_neon
  source_file: /src/opus/silk/arm/biquad_alt_neon_intr.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_short_prediction_create_arch_coef_neon
  - silk_short_prediction_create_arch_coef
  - silk_short_prediction_create_arch_coef
  - silk_noise_shape_quantizer_short_prediction
  - silk_NSQ_noise_shape_feedback_loop
  - silk_noise_shape_quantizer_short_prediction
  - silk_NSQ_noise_shape_feedback_loop
  source_file: /src/opus/silk/arm/NSQ_neon.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - MUL32_FRAC_Q
  - LPC_inverse_pred_gain_QA_neon
  - silk_LPC_inverse_pred_gain_neon
  source_file: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: QA
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c
      type_or_value: '24'
    - item_type: preproc_def
      name: A_LIMIT
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/opus/silk/arm/LPC_inv_pred_gain_neon_intr.c
      type_or_value: SILK_FIX_CONST( 0.99975, QA )
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_biquad_alt_stride2
  - silk_biquad_alt_stride2
  - silk_biquad_alt_stride2
  source_file: /src/opus/silk/arm/biquad_alt_arm.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: OVERRIDE_silk_biquad_alt_stride2
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/opus/silk/arm/biquad_alt_arm.h
      type_or_value: (1)
    - item_type: preproc_def
      name: OVERRIDE_silk_biquad_alt_stride2
      pos:
        line_end: 60
        line_start: 59
        source_file: /src/opus/silk/arm/biquad_alt_arm.h
      type_or_value: (1)
    - item_type: preproc_def
      name: OVERRIDE_silk_biquad_alt_stride2
      pos:
        line_end: 63
        line_start: 62
        source_file: /src/opus/silk/arm/biquad_alt_arm.h
      type_or_value: (1)
    structs: []
    typedefs: []
    union: []
- function_names:
  - copy_winner_state_kernel
  - copy_winner_state
  - silk_NSQ_del_dec_neon
  - silk_short_prediction_create_arch_coef_neon_local
  - silk_SMLAWB_lane0_neon
  - silk_SMLAWB_lane1_neon
  - silk_noise_shape_quantizer_short_prediction_neon_local
  - silk_noise_shape_quantizer_del_dec_neon
  - silk_SMULWB_8_neon
  - silk_SMULWW_small_b_4_neon
  - silk_SMULWW_small_b_8_neon
  - silk_SMULWW_4_neon
  - silk_SMULWW_8_neon
  - silk_SMULWW_loop_neon
  - silk_nsq_del_dec_scale_states_neon
  source_file: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: NEON_MAX_DEL_DEC_STATES
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c
      type_or_value: '4'
    structs:
    - fields:
      - name: sLPC_Q14[ MAX_SUB_FRAME_LENGTH + NSQ_LPC_BUF_LENGTH ][ NEON_MAX_DEL_DEC_STATES
          ]
        type: opus_int32
      - name: RandState[ DECISION_DELAY ][     NEON_MAX_DEL_DEC_STATES ]
        type: opus_int32
      - name: Q_Q10[     DECISION_DELAY ][     NEON_MAX_DEL_DEC_STATES ]
        type: opus_int32
      - name: Xq_Q14[    DECISION_DELAY ][     NEON_MAX_DEL_DEC_STATES ]
        type: opus_int32
      - name: Pred_Q15[  DECISION_DELAY ][     NEON_MAX_DEL_DEC_STATES ]
        type: opus_int32
      - name: Shape_Q14[ DECISION_DELAY ][     NEON_MAX_DEL_DEC_STATES ]
        type: opus_int32
      - name: sAR2_Q14[ MAX_SHAPE_LPC_ORDER ][ NEON_MAX_DEL_DEC_STATES ]
        type: opus_int32
      - name: LF_AR_Q14[ NEON_MAX_DEL_DEC_STATES ]
        type: opus_int32
      - name: Diff_Q14[  NEON_MAX_DEL_DEC_STATES ]
        type: opus_int32
      - name: Seed[      NEON_MAX_DEL_DEC_STATES ]
        type: opus_int32
      - name: SeedInit[  NEON_MAX_DEL_DEC_STATES ]
        type: opus_int32
      - name: RD_Q10[    NEON_MAX_DEL_DEC_STATES ]
        type: opus_int32
      item_type: struct
      name: NSQ_del_decs_struct
      pos:
        line_end: 56
        line_start: 43
        source_file: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c
    - fields:
      - name: Q_Q10[        NEON_MAX_DEL_DEC_STATES ]
        type: opus_int32
      - name: RD_Q10[       NEON_MAX_DEL_DEC_STATES ]
        type: opus_int32
      - name: xq_Q14[       NEON_MAX_DEL_DEC_STATES ]
        type: opus_int32
      - name: LF_AR_Q14[    NEON_MAX_DEL_DEC_STATES ]
        type: opus_int32
      - name: Diff_Q14[     NEON_MAX_DEL_DEC_STATES ]
        type: opus_int32
      - name: sLTP_shp_Q14[ NEON_MAX_DEL_DEC_STATES ]
        type: opus_int32
      - name: LPC_exc_Q14[  NEON_MAX_DEL_DEC_STATES ]
        type: opus_int32
      item_type: struct
      name: NSQ_samples_struct
      pos:
        line_end: 66
        line_start: 58
        source_file: /src/opus/silk/arm/NSQ_del_dec_neon_intr.c
    typedefs: []
    union: []
- function_names:
  - silk_SMULTT_armv5e
  - silk_SMULTT
  - silk_SMLATT_armv5e
  - silk_SMLATT
  source_file: /src/opus/silk/arm/SigProc_FIX_armv5e.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/dnn/dred_decoder.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: fec_features[2*DRED_NUM_REDUNDANCY_FRAMES*DRED_NUM_FEATURES]
        type: float
      - name: state[DRED_STATE_DIM]
        type: float
      - name: latents[(DRED_NUM_REDUNDANCY_FRAMES/2)*(DRED_LATENT_DIM+1)]
        type: float
      - name: nb_latents
        type: int
      - name: process_stage
        type: int
      - name: dred_offset
        type: int
      item_type: struct
      name: OpusDRED
      pos:
        line_end: 43
        line_start: 36
        source_file: /src/opus/dnn/dred_decoder.h
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/dnn/osce.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: OSCE_MODE_SILK_ONLY
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/opus/dnn/osce.h
      type_or_value: '1000'
    - item_type: preproc_def
      name: OSCE_MODE_HYBRID
      pos:
        line_end: 47
        line_start: 46
        source_file: /src/opus/dnn/osce.h
      type_or_value: '1001'
    - item_type: preproc_def
      name: OSCE_MODE_CELT_ONLY
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/opus/dnn/osce.h
      type_or_value: '1002'
    - item_type: preproc_def
      name: OSCE_MODE_SILK_BBWE
      pos:
        line_end: 49
        line_start: 48
        source_file: /src/opus/dnn/osce.h
      type_or_value: '1003'
    - item_type: preproc_def
      name: OSCE_METHOD_NONE
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/opus/dnn/osce.h
      type_or_value: '0'
    - item_type: preproc_def
      name: OSCE_METHOD_LACE
      pos:
        line_end: 53
        line_start: 52
        source_file: /src/opus/dnn/osce.h
      type_or_value: '1'
    - item_type: preproc_def
      name: OSCE_METHOD_NOLACE
      pos:
        line_end: 56
        line_start: 55
        source_file: /src/opus/dnn/osce.h
      type_or_value: '2'
    - item_type: preproc_def
      name: OSCE_DEFAULT_METHOD
      pos:
        line_end: 60
        line_start: 59
        source_file: /src/opus/dnn/osce.h
      type_or_value: OSCE_METHOD_NOLACE
    - item_type: preproc_def
      name: OSCE_MAX_RNN_NEURONS
      pos:
        line_end: 61
        line_start: 60
        source_file: /src/opus/dnn/osce.h
      type_or_value: NOLACE_FNET_GRU_STATE_SIZE
    - item_type: preproc_def
      name: OSCE_DEFAULT_METHOD
      pos:
        line_end: 63
        line_start: 62
        source_file: /src/opus/dnn/osce.h
      type_or_value: OSCE_METHOD_LACE
    - item_type: preproc_def
      name: OSCE_MAX_RNN_NEURONS
      pos:
        line_end: 64
        line_start: 63
        source_file: /src/opus/dnn/osce.h
      type_or_value: LACE_FNET_GRU_STATE_SIZE
    - item_type: preproc_def
      name: OSCE_DEFAULT_METHOD
      pos:
        line_end: 66
        line_start: 65
        source_file: /src/opus/dnn/osce.h
      type_or_value: OSCE_METHOD_NONE
    - item_type: preproc_def
      name: OSCE_MAX_RNN_NEURONS
      pos:
        line_end: 67
        line_start: 66
        source_file: /src/opus/dnn/osce.h
      type_or_value: '0'
    - item_type: preproc_def
      name: OSCE_BWE_MAX_RNN_NEURONS
      pos:
        line_end: 71
        line_start: 70
        source_file: /src/opus/dnn/osce.h
      type_or_value: BBWENET_FNET_GRU_STATE_SIZE
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/dnn/kiss99.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: _kiss99_H
      pos:
        line_end: 27
        line_start: 26
        source_file: /src/opus/dnn/kiss99.h
      type_or_value: (1)
    structs:
    - fields:
      - name: z
        type: uint32_t
      - name: w
        type: uint32_t
      - name: jsr
        type: uint32_t
      - name: jcong
        type: uint32_t
      item_type: struct
      name: kiss99_ctx
      pos:
        line_end: 40
        line_start: 35
        source_file: /src/opus/dnn/kiss99.h
    typedefs:
    - item_type: typedef
      name: kiss99_ctx
      pos:
        line_end: 33
        line_start: 33
        source_file: /src/opus/dnn/kiss99.h
      type: kiss99_ctx
    union: []
- function_names:
  - compute_linear
  - compute_activation
  - compute_generic_gru_lossgen
  - compute_generic_dense_lossgen
  - sample_loss_impl
  - sample_loss
  - lossgen_init
  - lossgen_load_model
  - main
  source_file: /src/opus/dnn/lossgen.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: RTCD_ARCH
      pos:
        line_end: 63
        line_start: 62
        source_file: /src/opus/dnn/lossgen.c
      type_or_value: c
    - item_type: preproc_def
      name: celt_assert
      pos:
        line_end: 67
        line_start: 66
        source_file: /src/opus/dnn/lossgen.c
      type_or_value: assert
    - item_type: preproc_def
      name: MAX_RNN_NEURONS_ALL
      pos:
        line_end: 80
        line_start: 79
        source_file: /src/opus/dnn/lossgen.c
      type_or_value: IMAX(LOSSGEN_GRU1_STATE_SIZE, LOSSGEN_GRU2_STATE_SIZE)
    structs: []
    typedefs: []
    union: []
- function_names:
  - dred_decode_latents
  - dred_ec_decode
  source_file: /src/opus/dnn/dred_decoder.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - FINIT
  - print_float_array
  - print_int_array
  - print_int8_array
  - print_linear_layer
  - CLIP
  - compute_lace_numbits_embedding
  - init_lace
  - reset_lace_state
  - lace_feature_net
  - lace_process_20ms_frame
  - compute_nolace_numbits_embedding
  - init_nolace
  - reset_nolace_state
  - nolace_feature_net
  - nolace_process_20ms_frame
  - bbwe_feature_net
  - apply_valin_activation
  - interpol_3_2
  - upsamp_2x
  - bbwenet_process_frames
  - reset_bbwenet_state
  - init_bbwenet
  - osce_reset
  - osce_bwe_reset
  - osce_load_models
  - osce_bwe
  - osce_enhance_frame
  - lace_feature_net_compare
  - lace_demo
  - nolace_demo
  - main
  source_file: /src/opus/dnn/osce.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: DELAY_SAMPLES
      pos:
        line_end: 994
        line_start: 993
        source_file: /src/opus/dnn/osce.c
      type_or_value: '8 '
    structs: []
    typedefs: []
    union: []
- function_names:
  - vcvtnq_s32_f32
  - vpaddq_s16
  - vmull_high_s8
  - vmlaq_f32
  - exp4_approx
  - tanh4_approx
  - sigmoid4_approx
  - lpcnet_exp
  - tanh_approx
  - sigmoid_approx
  - softmax
  - vec_tanh
  - vec_sigmoid
  - sgemv16x1
  - sgemv8x1
  - sgemv
  - sparse_sgemv8x4
  - vdotprod
  - vdotprod
  - cgemv8x4
  - sparse_cgemv8x4
  source_file: /src/opus/dnn/vec_neon.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: SCALE
      pos:
        line_end: 362
        line_start: 361
        source_file: /src/opus/dnn/vec_neon.h
      type_or_value: (128.f*127.f)
    - item_type: preproc_def
      name: SCALE_1
      pos:
        line_end: 363
        line_start: 362
        source_file: /src/opus/dnn/vec_neon.h
      type_or_value: (1.f/128.f/127.f)
    - item_type: preproc_def
      name: MAX_INPUTS
      pos:
        line_end: 365
        line_start: 364
        source_file: /src/opus/dnn/vec_neon.h
      type_or_value: '2048'
    - item_type: preproc_def
      name: MAX_OUTPUTS
      pos:
        line_end: 366
        line_start: 365
        source_file: /src/opus/dnn/vec_neon.h
      type_or_value: '8192'
    structs: []
    typedefs: []
    union: []
- function_names:
  - KERNEL_INDEX
  - init_adaconv_state
  - init_adacomb_state
  - init_adashape_state
  - compute_overlap_window
  - print_float_vector
  - scale_kernel
  - transform_gains
  - adaconv_process_frame
  - adacomb_process_frame
  - adashape_process_frame
  source_file: /src/opus/dnn/nndsp.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: M_PI
      pos:
        line_end: 43
        line_start: 42
        source_file: /src/opus/dnn/nndsp.c
      type_or_value: 3.141592653589793f
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/dnn/dred_config.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: DRED_EXTENSION_ID
      pos:
        line_end: 32
        line_start: 31
        source_file: /src/opus/dnn/dred_config.h
      type_or_value: '126'
    - item_type: preproc_def
      name: DRED_EXPERIMENTAL_VERSION
      pos:
        line_end: 35
        line_start: 34
        source_file: /src/opus/dnn/dred_config.h
      type_or_value: '12'
    - item_type: preproc_def
      name: DRED_EXPERIMENTAL_BYTES
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/opus/dnn/dred_config.h
      type_or_value: '2'
    - item_type: preproc_def
      name: DRED_MIN_BYTES
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/opus/dnn/dred_config.h
      type_or_value: '8'
    - item_type: preproc_def
      name: DRED_SILK_ENCODER_DELAY
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/opus/dnn/dred_config.h
      type_or_value: (79+12-80)
    - item_type: preproc_def
      name: DRED_FRAME_SIZE
      pos:
        line_end: 43
        line_start: 42
        source_file: /src/opus/dnn/dred_config.h
      type_or_value: '160'
    - item_type: preproc_def
      name: DRED_DFRAME_SIZE
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/opus/dnn/dred_config.h
      type_or_value: (2 * (DRED_FRAME_SIZE))
    - item_type: preproc_def
      name: DRED_MAX_DATA_SIZE
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/opus/dnn/dred_config.h
      type_or_value: '1000'
    - item_type: preproc_def
      name: DRED_ENC_Q0
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/opus/dnn/dred_config.h
      type_or_value: '6'
    - item_type: preproc_def
      name: DRED_ENC_Q1
      pos:
        line_end: 47
        line_start: 46
        source_file: /src/opus/dnn/dred_config.h
      type_or_value: '15'
    - item_type: preproc_def
      name: DRED_MAX_LATENTS
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/opus/dnn/dred_config.h
      type_or_value: '26'
    - item_type: preproc_def
      name: DRED_NUM_REDUNDANCY_FRAMES
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/opus/dnn/dred_config.h
      type_or_value: (2*DRED_MAX_LATENTS)
    - item_type: preproc_def
      name: DRED_MAX_FRAMES
      pos:
        line_end: 52
        line_start: 51
        source_file: /src/opus/dnn/dred_config.h
      type_or_value: (4*DRED_MAX_LATENTS)
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/dnn/dred_encoder.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: RESAMPLING_ORDER
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/opus/dnn/dred_encoder.h
      type_or_value: '8'
    - item_type: preproc_def
      name: DREDENC_RESET_START
      pos:
        line_end: 49
        line_start: 48
        source_file: /src/opus/dnn/dred_encoder.h
      type_or_value: input_buffer
    structs:
    - fields:
      - name: model
        type: RDOVAEEnc
      - name: lpcnet_enc_state
        type: LPCNetEncState
      - name: rdovae_enc
        type: RDOVAEEncState
      - name: loaded
        type: int
      - name: Fs
        type: opus_int32
      - name: channels
        type: int
      - name: input_buffer[2*DRED_DFRAME_SIZE]
        type: float
      - name: input_buffer_fill
        type: int
      - name: dred_offset
        type: int
      - name: latent_offset
        type: int
      - name: last_extra_dred_offset
        type: int
      - name: latents_buffer[DRED_MAX_FRAMES * DRED_LATENT_DIM]
        type: float
      - name: latents_buffer_fill
        type: int
      - name: state_buffer[DRED_MAX_FRAMES * DRED_STATE_DIM]
        type: float
      - name: resample_mem[RESAMPLING_ORDER + 1]
        type: float
      item_type: struct
      name: DREDEnc
      pos:
        line_end: 58
        line_start: 40
        source_file: /src/opus/dnn/dred_encoder.h
    typedefs: []
    union: []
- function_names:
  - sgemv16x1
  - sgemv8x1
  - sgemv
  - sparse_sgemv8x4
  - sparse_cgemv8x4
  - cgemv8x4
  - sparse_cgemv8x4
  - cgemv8x4
  - lpcnet_exp2
  - lpcnet_exp
  - fmadd
  - tanh_approx
  - sigmoid_approx
  - softmax
  - vec_tanh
  - vec_sigmoid
  source_file: /src/opus/dnn/vec.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAX_INPUTS
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/opus/dnn/vec.h
      type_or_value: (2048)
    - item_type: preproc_def
      name: SCALE
      pos:
        line_end: 385
        line_start: 384
        source_file: /src/opus/dnn/vec.h
      type_or_value: (128.f*127.f)
    - item_type: preproc_def
      name: SCALE_1
      pos:
        line_end: 386
        line_start: 385
        source_file: /src/opus/dnn/vec.h
      type_or_value: (1.f/128.f/127.f)
    structs: []
    typedefs: []
    union:
    - fields:
      - name: f
        type: float
      - name: i
        type: opus_uint32
      item_type: union
      name: res
      pos:
        line_end: 323
        line_start: 320
        source_file: /src/opus/dnn/vec.h
- function_names:
  - apply_filterbank
  - mag_spec_320_onesided
  - calculate_log_spectrum_from_lpc
  - calculate_cepstrum
  - calculate_acorr
  - pitch_postprocessing
  - osce_calculate_features
  - osce_bwe_calculate_features
  - osce_cross_fade_10ms
  - osce_bwe_cross_fade_10ms
  source_file: /src/opus/dnn/osce_features.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: OSCE_SPEC_WINDOW_SIZE
      pos:
        line_end: 32
        line_start: 31
        source_file: /src/opus/dnn/osce_features.c
      type_or_value: '320'
    - item_type: preproc_def
      name: OSCE_SPEC_NUM_FREQS
      pos:
        line_end: 33
        line_start: 32
        source_file: /src/opus/dnn/osce_features.c
      type_or_value: '161'
    - item_type: preproc_def
      name: TESTBIT
      pos:
        line_end: 320
        line_start: 319
        source_file: /src/opus/dnn/osce_features.c
      type_or_value: '1'
    - item_type: preproc_def
      name: TESTBIT
      pos:
        line_end: 322
        line_start: 321
        source_file: /src/opus/dnn/osce_features.c
      type_or_value: '0'
    structs: []
    typedefs: []
    union: []
- function_names:
  - mm_floor_ps
  - _mm_floor_ps
  - mm256_loadu_ps
  - _mm256_loadu_ps
  - mm256_storeu_ps
  - _mm256_storeu_ps
  - mm256_setzero_ps
  - mm256_broadcast_ss
  - _mm256_broadcast_ss
  - mm256_set1_ps
  - _mm256_set1_ps
  - mm256_mul_ps
  - _mm256_mul_ps
  - mm256_add_ps
  - _mm256_add_ps
  - mm256_max_ps
  - _mm256_max_ps
  - mm256_min_ps
  - _mm256_min_ps
  - mm256_rcp_ps
  - _mm256_rcp_ps
  - mm256_extractf128_ps
  - _mm256_extractf128_ps
  - mm256_insertf128_ps
  - _mm256_insertf128_ps
  - mm256_setzero_si256
  - mm256_loadu_si256
  - _mm256_loadu_si256
  - mm256_storeu_si256
  - _mm256_storeu_si256
  - mm256_broadcastd_epi32
  - _mm256_broadcastd_epi32
  - mm256_set1_epi32
  - _mm256_set1_epi32
  - mm256_set1_epi16
  - _mm256_set1_epi16
  - mm256_add_epi32
  - _mm256_add_epi32
  - mm256_madd_epi16
  - _mm256_madd_epi16
  - mm256_maddubs_epi16
  - _mm256_maddubs_epi16
  - mm256_cvtepi32_ps
  - _mm256_cvtepi32_ps
  - mm256_cvtps_epi32
  - _mm256_cvtps_epi32
  - mm256_cvtepi32_ps
  - _mm256_cvtepi32_ps
  - mm256_cvtps_epi32
  - _mm256_cvtps_epi32
  - _mm256_fmadd_ps
  - _mm_fmadd_ps
  - exp8_approx
  - vector_ps_to_epi8
  - exp4_approx
  - exp8_approx
  - vector_ps_to_epi8
  - tanh8_approx
  - sigmoid8_approx
  - tanh_approx
  - sigmoid_approx
  - tanh4_approx
  - sigmoid4_approx
  - tanh_approx
  - sigmoid_approx
  - lpcnet_exp
  - softmax
  - vec_tanh
  - vec_sigmoid
  - vec_tanh
  - vec_sigmoid
  - opus_mm256_dpbusds_epi32
  - opus_mm256_dpbusds_epi32
  - opus_mm256_dpbusds_epi32
  - mm_dpbusds_epi32
  - opus_mm256_dpbusds_epi32
  - sgemv
  - sparse_sgemv8x4
  - sparse_cgemv8x4
  - cgemv8x4
  source_file: /src/opus/dnn/vec_avx.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAX_INPUTS
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/opus/dnn/vec_avx.h
      type_or_value: (2048)
    - item_type: preproc_def
      name: __m256
      pos:
        line_end: 60
        line_start: 59
        source_file: /src/opus/dnn/vec_avx.h
      type_or_value: mm256_emu
    - item_type: preproc_def
      name: _mm256_setzero_ps
      pos:
        line_end: 84
        line_start: 83
        source_file: /src/opus/dnn/vec_avx.h
      type_or_value: mm256_setzero_ps
    - item_type: preproc_def
      name: __m256i
      pos:
        line_end: 174
        line_start: 173
        source_file: /src/opus/dnn/vec_avx.h
      type_or_value: mm256i_emu
    - item_type: preproc_def
      name: _mm256_setzero_si256
      pos:
        line_end: 182
        line_start: 181
        source_file: /src/opus/dnn/vec_avx.h
      type_or_value: mm256_setzero_si256
    - item_type: preproc_def
      name: SCALE
      pos:
        line_end: 881
        line_start: 880
        source_file: /src/opus/dnn/vec_avx.h
      type_or_value: (128.f*127.f)
    - item_type: preproc_def
      name: SCALE_1
      pos:
        line_end: 882
        line_start: 881
        source_file: /src/opus/dnn/vec_avx.h
      type_or_value: (1.f/128.f/127.f)
    structs:
    - fields:
      - name: lo
        type: __m128
      - name: hi
        type: __m128
      item_type: struct
      name: mm256_emu
      pos:
        line_end: 58
        line_start: 55
        source_file: /src/opus/dnn/vec_avx.h
    - fields:
      - name: lo
        type: __m128i
      - name: hi
        type: __m128i
      item_type: struct
      name: mm256i_emu
      pos:
        line_end: 169
        line_start: 166
        source_file: /src/opus/dnn/vec_avx.h
    typedefs:
    - item_type: typedef
      name: real_m256i
      pos:
        line_end: 171
        line_start: 171
        source_file: /src/opus/dnn/vec_avx.h
      type: __m256i
    union:
    - fields:
      - name: fake
        type: mm256i_emu
      - name: real
        type: real_m256i
      item_type: union
      name: mm256_union
      pos:
        line_end: 258
        line_start: 255
        source_file: /src/opus/dnn/vec_avx.h
- function_names: []
  source_file: /src/opus/dnn/osce_config.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: OSCE_FEATURES_MAX_HISTORY
      pos:
        line_end: 31
        line_start: 30
        source_file: /src/opus/dnn/osce_config.h
      type_or_value: '350'
    - item_type: preproc_def
      name: OSCE_FEATURE_DIM
      pos:
        line_end: 32
        line_start: 31
        source_file: /src/opus/dnn/osce_config.h
      type_or_value: '93'
    - item_type: preproc_def
      name: OSCE_MAX_FEATURE_FRAMES
      pos:
        line_end: 33
        line_start: 32
        source_file: /src/opus/dnn/osce_config.h
      type_or_value: '4'
    - item_type: preproc_def
      name: OSCE_CLEAN_SPEC_NUM_BANDS
      pos:
        line_end: 35
        line_start: 34
        source_file: /src/opus/dnn/osce_config.h
      type_or_value: '64'
    - item_type: preproc_def
      name: OSCE_NOISY_SPEC_NUM_BANDS
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/opus/dnn/osce_config.h
      type_or_value: '18'
    - item_type: preproc_def
      name: OSCE_NO_PITCH_VALUE
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/opus/dnn/osce_config.h
      type_or_value: '7'
    - item_type: preproc_def
      name: OSCE_PREEMPH
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/opus/dnn/osce_config.h
      type_or_value: 0.85f
    - item_type: preproc_def
      name: OSCE_PITCH_HANGOVER
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/opus/dnn/osce_config.h
      type_or_value: '0'
    - item_type: preproc_def
      name: OSCE_CLEAN_SPEC_START
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/opus/dnn/osce_config.h
      type_or_value: '0'
    - item_type: preproc_def
      name: OSCE_CLEAN_SPEC_LENGTH
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/opus/dnn/osce_config.h
      type_or_value: '64'
    - item_type: preproc_def
      name: OSCE_NOISY_CEPSTRUM_START
      pos:
        line_end: 47
        line_start: 46
        source_file: /src/opus/dnn/osce_config.h
      type_or_value: '64'
    - item_type: preproc_def
      name: OSCE_NOISY_CEPSTRUM_LENGTH
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/opus/dnn/osce_config.h
      type_or_value: '18'
    - item_type: preproc_def
      name: OSCE_ACORR_START
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/opus/dnn/osce_config.h
      type_or_value: '82'
    - item_type: preproc_def
      name: OSCE_ACORR_LENGTH
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/opus/dnn/osce_config.h
      type_or_value: '5'
    - item_type: preproc_def
      name: OSCE_LTP_START
      pos:
        line_end: 53
        line_start: 52
        source_file: /src/opus/dnn/osce_config.h
      type_or_value: '87'
    - item_type: preproc_def
      name: OSCE_LTP_LENGTH
      pos:
        line_end: 54
        line_start: 53
        source_file: /src/opus/dnn/osce_config.h
      type_or_value: '5'
    - item_type: preproc_def
      name: OSCE_LOG_GAIN_START
      pos:
        line_end: 56
        line_start: 55
        source_file: /src/opus/dnn/osce_config.h
      type_or_value: '92'
    - item_type: preproc_def
      name: OSCE_LOG_GAIN_LENGTH
      pos:
        line_end: 57
        line_start: 56
        source_file: /src/opus/dnn/osce_config.h
      type_or_value: '1'
    - item_type: preproc_def
      name: OSCE_BWE_MAX_INSTAFREQ_BIN
      pos:
        line_end: 59
        line_start: 58
        source_file: /src/opus/dnn/osce_config.h
      type_or_value: '40'
    - item_type: preproc_def
      name: OSCE_BWE_HALF_WINDOW_SIZE
      pos:
        line_end: 60
        line_start: 59
        source_file: /src/opus/dnn/osce_config.h
      type_or_value: '160'
    - item_type: preproc_def
      name: OSCE_BWE_WINDOW_SIZE
      pos:
        line_end: 61
        line_start: 60
        source_file: /src/opus/dnn/osce_config.h
      type_or_value: (2 * (OSCE_BWE_HALF_WINDOW_SIZE))
    - item_type: preproc_def
      name: OSCE_BWE_NUM_BANDS
      pos:
        line_end: 62
        line_start: 61
        source_file: /src/opus/dnn/osce_config.h
      type_or_value: '32'
    - item_type: preproc_def
      name: OSCE_BWE_FEATURE_DIM
      pos:
        line_end: 63
        line_start: 62
        source_file: /src/opus/dnn/osce_config.h
      type_or_value: '114'
    - item_type: preproc_def
      name: OSCE_BWE_OUTPUT_DELAY
      pos:
        line_end: 64
        line_start: 63
        source_file: /src/opus/dnn/osce_config.h
      type_or_value: '21'
    structs: []
    typedefs: []
    union: []
- function_names:
  - DRED_rdovae_init_encoder
  - dred_encoder_load_model
  - dred_encoder_reset
  - dred_encoder_init
  - dred_process_frame
  - filter_df2t
  - dred_convert_to_16k
  - dred_compute_latents
  - dred_encode_latents
  - dred_voice_active
  - dred_encode_silk_frame
  source_file: /src/opus/dnn/dred_encoder.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAX_DOWNMIX_BUFFER
      pos:
        line_end: 132
        line_start: 131
        source_file: /src/opus/dnn/dred_encoder.c
      type_or_value: (1920*2)
    - item_type: preproc_def
      name: MAX_DOWNMIX_BUFFER
      pos:
        line_end: 134
        line_start: 133
        source_file: /src/opus/dnn/dred_encoder.c
      type_or_value: (960*2)
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/dnn/pitchdnn.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: PITCH_MIN_PERIOD
      pos:
        line_end: 9
        line_start: 8
        source_file: /src/opus/dnn/pitchdnn.h
      type_or_value: '32'
    - item_type: preproc_def
      name: PITCH_MAX_PERIOD
      pos:
        line_end: 10
        line_start: 9
        source_file: /src/opus/dnn/pitchdnn.h
      type_or_value: '256'
    - item_type: preproc_def
      name: NB_XCORR_FEATURES
      pos:
        line_end: 12
        line_start: 11
        source_file: /src/opus/dnn/pitchdnn.h
      type_or_value: (PITCH_MAX_PERIOD-PITCH_MIN_PERIOD)
    structs:
    - fields:
      - name: model
        type: PitchDNN
      - name: gru_state[GRU_1_STATE_SIZE]
        type: float
      - name: xcorr_mem1[(NB_XCORR_FEATURES + 2)*2]
        type: float
      - name: xcorr_mem2[(NB_XCORR_FEATURES + 2)*2*8]
        type: float
      - name: xcorr_mem3[(NB_XCORR_FEATURES + 2)*2*8]
        type: float
      item_type: struct
      name: PitchDNNState
      pos:
        line_end: 20
        line_start: 14
        source_file: /src/opus/dnn/pitchdnn.h
    typedefs:
    - item_type: typedef
      name: PitchDNN
      pos:
        line_end: 4
        line_start: 4
        source_file: /src/opus/dnn/pitchdnn.h
      type: PitchDNN
    union: []
- function_names:
  - test_sgemv_accum16
  - test_sparse_sgemv_accum16
  - main
  source_file: /src/opus/dnn/test_vec.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: lpcnet_exp2
      pos:
        line_end: 13
        line_start: 12
        source_file: /src/opus/dnn/test_vec.c
      type_or_value: lpcnet_exp2_fast
    - item_type: preproc_def
      name: tansig_approx
      pos:
        line_end: 14
        line_start: 13
        source_file: /src/opus/dnn/test_vec.c
      type_or_value: tansig_approx_fast
    - item_type: preproc_def
      name: sigmoid_approx
      pos:
        line_end: 15
        line_start: 14
        source_file: /src/opus/dnn/test_vec.c
      type_or_value: sigmoid_approx_fast
    - item_type: preproc_def
      name: softmax
      pos:
        line_end: 16
        line_start: 15
        source_file: /src/opus/dnn/test_vec.c
      type_or_value: softmax_fast
    - item_type: preproc_def
      name: vec_tanh
      pos:
        line_end: 17
        line_start: 16
        source_file: /src/opus/dnn/test_vec.c
      type_or_value: vec_tanh_fast
    - item_type: preproc_def
      name: vec_sigmoid
      pos:
        line_end: 18
        line_start: 17
        source_file: /src/opus/dnn/test_vec.c
      type_or_value: vec_sigmoid_fast
    - item_type: preproc_def
      name: sgemv_accum16
      pos:
        line_end: 19
        line_start: 18
        source_file: /src/opus/dnn/test_vec.c
      type_or_value: sgemv_accum16_fast
    - item_type: preproc_def
      name: sparse_sgemv_accum16
      pos:
        line_end: 20
        line_start: 19
        source_file: /src/opus/dnn/test_vec.c
      type_or_value: sparse_sgemv_accum16_fast
    - item_type: preproc_def
      name: ROW_STEP
      pos:
        line_end: 47
        line_start: 46
        source_file: /src/opus/dnn/test_vec.c
      type_or_value: '16'
    - item_type: preproc_def
      name: ROWS
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/opus/dnn/test_vec.c
      type_or_value: ROW_STEP*10
    - item_type: preproc_def
      name: COLS
      pos:
        line_end: 49
        line_start: 48
        source_file: /src/opus/dnn/test_vec.c
      type_or_value: '2'
    - item_type: preproc_def
      name: ENTRIES
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/opus/dnn/test_vec.c
      type_or_value: '2'
    structs: []
    typedefs: []
    union: []
- function_names:
  - silk_energy_FLP
  - silk_inner_product_FLP
  - silk_burg_analysis
  source_file: /src/opus/dnn/burg.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAX_FRAME_SIZE
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/opus/dnn/burg.c
      type_or_value: '384 '
    - item_type: preproc_def
      name: SILK_MAX_ORDER_LPC
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/opus/dnn/burg.c
      type_or_value: '16'
    - item_type: preproc_def
      name: FIND_LPC_COND_FAC
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/opus/dnn/burg.c
      type_or_value: 1e-5f
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/dnn/fwgan.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: FWGAN_CONT_SAMPLES
      pos:
        line_end: 33
        line_start: 32
        source_file: /src/opus/dnn/fwgan.h
      type_or_value: '320'
    - item_type: preproc_def
      name: NB_SUBFRAMES
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/opus/dnn/fwgan.h
      type_or_value: '4'
    - item_type: preproc_def
      name: SUBFRAME_SIZE
      pos:
        line_end: 35
        line_start: 34
        source_file: /src/opus/dnn/fwgan.h
      type_or_value: '40'
    - item_type: preproc_def
      name: FWGAN_FRAME_SIZE
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/opus/dnn/fwgan.h
      type_or_value: (NB_SUBFRAMES*SUBFRAME_SIZE)
    - item_type: preproc_def
      name: CONT_PCM_INPUTS
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/opus/dnn/fwgan.h
      type_or_value: '320'
    - item_type: preproc_def
      name: MAX_CONT_SIZE
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/opus/dnn/fwgan.h
      type_or_value: CONT_NET_0_OUT_SIZE
    - item_type: preproc_def
      name: FWGAN_GAMMA
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/opus/dnn/fwgan.h
      type_or_value: 0.92f
    - item_type: preproc_def
      name: FWGAN_DEEMPHASIS
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/opus/dnn/fwgan.h
      type_or_value: 0.85f
    - item_type: preproc_def
      name: FWC1_STATE_SIZE
      pos:
        line_end: 43
        line_start: 42
        source_file: /src/opus/dnn/fwgan.h
      type_or_value: '512'
    - item_type: preproc_def
      name: FWC2_STATE_SIZE
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/opus/dnn/fwgan.h
      type_or_value: '512'
    - item_type: preproc_def
      name: FWC3_STATE_SIZE
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/opus/dnn/fwgan.h
      type_or_value: '256'
    - item_type: preproc_def
      name: FWC4_STATE_SIZE
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/opus/dnn/fwgan.h
      type_or_value: '256'
    - item_type: preproc_def
      name: FWC5_STATE_SIZE
      pos:
        line_end: 47
        line_start: 46
        source_file: /src/opus/dnn/fwgan.h
      type_or_value: '128'
    - item_type: preproc_def
      name: FWC6_STATE_SIZE
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/opus/dnn/fwgan.h
      type_or_value: '128'
    - item_type: preproc_def
      name: FWC7_STATE_SIZE
      pos:
        line_end: 49
        line_start: 48
        source_file: /src/opus/dnn/fwgan.h
      type_or_value: '80'
    structs:
    - fields:
      - name: model
        type: FWGAN
      - name: arch
        type: int
      - name: cont_initialized
        type: int
      - name: embed_phase[2]
        type: float
      - name: last_gain
        type: float
      - name: last_lpc[LPC_ORDER]
        type: float
      - name: syn_mem[LPC_ORDER]
        type: float
      - name: preemph_mem
        type: float
      - name: deemph_mem
        type: float
      - name: pcm_buf[FWGAN_FRAME_SIZE]
        type: float
      - name: cont[CONT_NET_10_OUT_SIZE]
        type: float
      - name: cont_conv1_mem[FEAT_IN_CONV1_CONV_STATE_SIZE]
        type: float
      - name: rnn_state[RNN_GRU_STATE_SIZE]
        type: float
      - name: fwc1_state[FWC1_STATE_SIZE]
        type: float
      - name: fwc2_state[FWC2_STATE_SIZE]
        type: float
      - name: fwc3_state[FWC3_STATE_SIZE]
        type: float
      - name: fwc4_state[FWC4_STATE_SIZE]
        type: float
      - name: fwc5_state[FWC5_STATE_SIZE]
        type: float
      - name: fwc6_state[FWC6_STATE_SIZE]
        type: float
      - name: fwc7_state[FWC7_STATE_SIZE]
        type: float
      item_type: struct
      name: FWGANState
      pos:
        line_end: 71
        line_start: 50
        source_file: /src/opus/dnn/fwgan.h
    typedefs: []
    union: []
- function_names:
  - compute_pitchdnn
  - pitchdnn_init
  - pitchdnn_load_model
  source_file: /src/opus/dnn/pitchdnn.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - compute_fargan_cond
  - fargan_deemphasis
  - run_fargan_subframe
  - fargan_cont
  - fargan_init
  - fargan_load_model
  - fargan_synthesize_impl
  - fargan_synthesize
  - fargan_synthesize_int
  source_file: /src/opus/dnn/fargan.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: FARGAN_FEATURES
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/opus/dnn/fargan.c
      type_or_value: (NB_FEATURES)
    structs: []
    typedefs: []
    union: []
- function_names:
  - parse_record
  - parse_weights
  - find_array_entry
  - find_array_check
  - opt_array_check
  - find_idx_check
  - linear_init
  - conv2d_init
  - main
  source_file: /src/opus/dnn/parse_lpcnet_weights.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: SPARSE_BLOCK_SIZE
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/opus/dnn/parse_lpcnet_weights.c
      type_or_value: '32'
    structs: []
    typedefs: []
    union: []
- function_names:
  - MAX
  - OPUS_COSF
  - OPUS_SINF
  - check_alloc
  - opus_malloc
  - opus_realloc
  - biquad
  - buf_to_float
  - read_pcm
  - spectrum
  - usage
  - psydecay_init
  - inner_prod
  - compute_xcorr
  - compare_audio
  - compare_features
  - main
  source_file: /src/opus/dnn/dred_compare.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: OPUS_PI
      pos:
        line_end: 35
        line_start: 34
        source_file: /src/opus/dnn/dred_compare.c
      type_or_value: (3.14159265F)
    - item_type: preproc_def
      name: FORMAT_S16_LE
      pos:
        line_end: 56
        line_start: 55
        source_file: /src/opus/dnn/dred_compare.c
      type_or_value: '0'
    - item_type: preproc_def
      name: FORMAT_S24_LE
      pos:
        line_end: 57
        line_start: 56
        source_file: /src/opus/dnn/dred_compare.c
      type_or_value: '1'
    - item_type: preproc_def
      name: FORMAT_F32_LE
      pos:
        line_end: 58
        line_start: 57
        source_file: /src/opus/dnn/dred_compare.c
      type_or_value: '2'
    - item_type: preproc_def
      name: NBANDS
      pos:
        line_end: 60
        line_start: 59
        source_file: /src/opus/dnn/dred_compare.c
      type_or_value: (17)
    - item_type: preproc_def
      name: NFREQS
      pos:
        line_end: 61
        line_start: 60
        source_file: /src/opus/dnn/dred_compare.c
      type_or_value: (320)
    - item_type: preproc_def
      name: TEST_WIN_SIZE
      pos:
        line_end: 62
        line_start: 61
        source_file: /src/opus/dnn/dred_compare.c
      type_or_value: (640)
    - item_type: preproc_def
      name: TEST_WIN_STEP
      pos:
        line_end: 63
        line_start: 62
        source_file: /src/opus/dnn/dred_compare.c
      type_or_value: (160)
    - item_type: preproc_def
      name: PITCH_MIN
      pos:
        line_end: 251
        line_start: 250
        source_file: /src/opus/dnn/dred_compare.c
      type_or_value: '32'
    - item_type: preproc_def
      name: PITCH_MAX
      pos:
        line_end: 252
        line_start: 251
        source_file: /src/opus/dnn/dred_compare.c
      type_or_value: '256'
    - item_type: preproc_def
      name: PITCH_FRAME
      pos:
        line_end: 253
        line_start: 252
        source_file: /src/opus/dnn/dred_compare.c
      type_or_value: '320'
    - item_type: preproc_def
      name: LOUDNESS
      pos:
        line_end: 281
        line_start: 280
        source_file: /src/opus/dnn/dred_compare.c
      type_or_value: 0.2f
    - item_type: preproc_def
      name: NB_FEATURES
      pos:
        line_end: 554
        line_start: 553
        source_file: /src/opus/dnn/dred_compare.c
      type_or_value: '20'
    structs: []
    typedefs: []
    union:
    - fields:
      - name: i
        type: int
      - name: f
        type: float
      item_type: union
      name: float_bits
      pos:
        line_end: 68
        line_start: 65
        source_file: /src/opus/dnn/dred_compare.c
- function_names:
  - conv1_cond_init
  - DRED_rdovae_decode_all
  - dred_rdovae_dec_init_states
  - dred_rdovae_decode_qframe
  source_file: /src/opus/dnn/dred_rdovae_dec.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - write_weights
  - main
  source_file: /src/opus/dnn/write_lpcnet_weights.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/dnn/burg.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  source_file: /src/opus/dnn/dump_lpcnet_tables.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/dnn/nndsp.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: ADACONV_MAX_KERNEL_SIZE
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/opus/dnn/nndsp.h
      type_or_value: '32'
    - item_type: preproc_def
      name: ADACONV_MAX_INPUT_CHANNELS
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/opus/dnn/nndsp.h
      type_or_value: '3'
    - item_type: preproc_def
      name: ADACONV_MAX_OUTPUT_CHANNELS
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/opus/dnn/nndsp.h
      type_or_value: '3'
    - item_type: preproc_def
      name: ADACONV_MAX_FRAME_SIZE
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/opus/dnn/nndsp.h
      type_or_value: '240'
    - item_type: preproc_def
      name: ADACONV_MAX_OVERLAP_SIZE
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/opus/dnn/nndsp.h
      type_or_value: '120'
    - item_type: preproc_def
      name: ADACOMB_MAX_LAG
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/opus/dnn/nndsp.h
      type_or_value: '300'
    - item_type: preproc_def
      name: ADACOMB_MAX_KERNEL_SIZE
      pos:
        line_end: 43
        line_start: 42
        source_file: /src/opus/dnn/nndsp.h
      type_or_value: '16'
    - item_type: preproc_def
      name: ADACOMB_MAX_FRAME_SIZE
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/opus/dnn/nndsp.h
      type_or_value: '80'
    - item_type: preproc_def
      name: ADACOMB_MAX_OVERLAP_SIZE
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/opus/dnn/nndsp.h
      type_or_value: '40'
    - item_type: preproc_def
      name: ADASHAPE_MAX_INPUT_DIM
      pos:
        line_end: 47
        line_start: 46
        source_file: /src/opus/dnn/nndsp.h
      type_or_value: '512'
    - item_type: preproc_def
      name: ADASHAPE_MAX_FRAME_SIZE
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/opus/dnn/nndsp.h
      type_or_value: '240'
    structs:
    - fields:
      - name: history[ADACONV_MAX_KERNEL_SIZE * ADACONV_MAX_INPUT_CHANNELS]
        type: float
      - name: last_kernel[ADACONV_MAX_KERNEL_SIZE * ADACONV_MAX_INPUT_CHANNELS * ADACONV_MAX_OUTPUT_CHANNELS]
        type: float
      - name: last_gain
        type: float
      item_type: struct
      name: AdaConvState
      pos:
        line_end: 61
        line_start: 57
        source_file: /src/opus/dnn/nndsp.h
    - fields:
      - name: history[ADACOMB_MAX_KERNEL_SIZE + ADACOMB_MAX_LAG]
        type: float
      - name: last_kernel[ADACOMB_MAX_KERNEL_SIZE]
        type: float
      - name: last_global_gain
        type: float
      - name: last_pitch_lag
        type: int
      item_type: struct
      name: AdaCombState
      pos:
        line_end: 69
        line_start: 64
        source_file: /src/opus/dnn/nndsp.h
    - fields:
      - name: conv_alpha1f_state[ADASHAPE_MAX_INPUT_DIM]
        type: float
      - name: conv_alpha1t_state[ADASHAPE_MAX_INPUT_DIM]
        type: float
      - name: conv_alpha2_state[ADASHAPE_MAX_FRAME_SIZE]
        type: float
      - name: interpolate_state[1]
        type: float
      item_type: struct
      name: AdaShapeState
      pos:
        line_end: 77
        line_start: 72
        source_file: /src/opus/dnn/nndsp.h
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/dnn/dred_rdovae.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs:
    - item_type: typedef
      name: RDOVAEDec
      pos:
        line_end: 34
        line_start: 34
        source_file: /src/opus/dnn/dred_rdovae.h
      type: RDOVAEDec
    - item_type: typedef
      name: RDOVAEEnc
      pos:
        line_end: 35
        line_start: 35
        source_file: /src/opus/dnn/dred_rdovae.h
      type: RDOVAEEnc
    - item_type: typedef
      name: RDOVAEDecState
      pos:
        line_end: 36
        line_start: 36
        source_file: /src/opus/dnn/dred_rdovae.h
      type: RDOVAEDecStruct
    - item_type: typedef
      name: RDOVAEEncState
      pos:
        line_end: 37
        line_start: 37
        source_file: /src/opus/dnn/dred_rdovae.h
      type: RDOVAEEncStruct
    union: []
- function_names: []
  source_file: /src/opus/dnn/fargan.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: FARGAN_CONT_SAMPLES
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/opus/dnn/fargan.h
      type_or_value: '320'
    - item_type: preproc_def
      name: FARGAN_NB_SUBFRAMES
      pos:
        line_end: 35
        line_start: 34
        source_file: /src/opus/dnn/fargan.h
      type_or_value: '4'
    - item_type: preproc_def
      name: FARGAN_SUBFRAME_SIZE
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/opus/dnn/fargan.h
      type_or_value: '40'
    - item_type: preproc_def
      name: FARGAN_FRAME_SIZE
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/opus/dnn/fargan.h
      type_or_value: (FARGAN_NB_SUBFRAMES*FARGAN_SUBFRAME_SIZE)
    - item_type: preproc_def
      name: FARGAN_COND_SIZE
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/opus/dnn/fargan.h
      type_or_value: (COND_NET_FDENSE2_OUT_SIZE/FARGAN_NB_SUBFRAMES)
    - item_type: preproc_def
      name: FARGAN_DEEMPHASIS
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/opus/dnn/fargan.h
      type_or_value: 0.85f
    - item_type: preproc_def
      name: SIG_NET_INPUT_SIZE
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/opus/dnn/fargan.h
      type_or_value: (FARGAN_COND_SIZE+2*FARGAN_SUBFRAME_SIZE+4)
    - item_type: preproc_def
      name: SIG_NET_FWC0_STATE_SIZE
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/opus/dnn/fargan.h
      type_or_value: (2*SIG_NET_INPUT_SIZE)
    - item_type: preproc_def
      name: FARGAN_MAX_RNN_NEURONS
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/opus/dnn/fargan.h
      type_or_value: SIG_NET_GRU1_OUT_SIZE
    structs:
    - fields:
      - name: model
        type: FARGAN
      - name: arch
        type: int
      - name: cont_initialized
        type: int
      - name: deemph_mem
        type: float
      - name: pitch_buf[PITCH_MAX_PERIOD]
        type: float
      - name: cond_conv1_state[COND_NET_FCONV1_STATE_SIZE]
        type: float
      - name: fwc0_mem[SIG_NET_FWC0_STATE_SIZE]
        type: float
      - name: gru1_state[SIG_NET_GRU1_STATE_SIZE]
        type: float
      - name: gru2_state[SIG_NET_GRU2_STATE_SIZE]
        type: float
      - name: gru3_state[SIG_NET_GRU3_STATE_SIZE]
        type: float
      - name: last_period
        type: int
      item_type: struct
      name: FARGANState
      pos:
        line_end: 56
        line_start: 44
        source_file: /src/opus/dnn/fargan.h
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/dnn/osce_features.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/dnn/lpcnet_tables.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - log2_approx
  - log_approx
  - ulaw2lin
  - lin2ulaw
  source_file: /src/opus/dnn/common.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: LOG256
      pos:
        line_end: 11
        line_start: 10
        source_file: /src/opus/dnn/common.h
      type_or_value: 5.5451774445f
    structs: []
    typedefs: []
    union:
    - fields:
      - name: f
        type: float
      - name: i
        type: int
      item_type: union
      name: in
      pos:
        line_end: 18
        line_start: 15
        source_file: /src/opus/dnn/common.h
- function_names:
  - compute_quantizer
  source_file: /src/opus/dnn/dred_coding.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - usage
  - main
  source_file: /src/opus/dnn/bwe_demo.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: BWE_FRAME_SIZE
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/opus/dnn/bwe_demo.c
      type_or_value: '320'
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/dnn/nnet_default.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: RTCD_ARCH
      pos:
        line_end: 33
        line_start: 32
        source_file: /src/opus/dnn/nnet_default.c
      type_or_value: c
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/dnn/lpcnet_private.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: PITCH_FRAME_SIZE
      pos:
        line_end: 12
        line_start: 11
        source_file: /src/opus/dnn/lpcnet_private.h
      type_or_value: '320'
    - item_type: preproc_def
      name: PITCH_BUF_SIZE
      pos:
        line_end: 13
        line_start: 12
        source_file: /src/opus/dnn/lpcnet_private.h
      type_or_value: (PITCH_MAX_PERIOD+PITCH_FRAME_SIZE)
    - item_type: preproc_def
      name: PLC_MAX_FEC
      pos:
        line_end: 15
        line_start: 14
        source_file: /src/opus/dnn/lpcnet_private.h
      type_or_value: '104'
    - item_type: preproc_def
      name: MAX_FEATURE_BUFFER_SIZE
      pos:
        line_end: 16
        line_start: 15
        source_file: /src/opus/dnn/lpcnet_private.h
      type_or_value: '4'
    - item_type: preproc_def
      name: PITCH_IF_MAX_FREQ
      pos:
        line_end: 18
        line_start: 17
        source_file: /src/opus/dnn/lpcnet_private.h
      type_or_value: '30'
    - item_type: preproc_def
      name: PITCH_IF_FEATURES
      pos:
        line_end: 19
        line_start: 18
        source_file: /src/opus/dnn/lpcnet_private.h
      type_or_value: (3*PITCH_IF_MAX_FREQ - 2)
    - item_type: preproc_def
      name: CONT_VECTORS
      pos:
        line_end: 21
        line_start: 20
        source_file: /src/opus/dnn/lpcnet_private.h
      type_or_value: '5'
    - item_type: preproc_def
      name: FEATURES_DELAY
      pos:
        line_end: 23
        line_start: 22
        source_file: /src/opus/dnn/lpcnet_private.h
      type_or_value: '1'
    - item_type: preproc_def
      name: PLC_BUF_SIZE
      pos:
        line_end: 49
        line_start: 48
        source_file: /src/opus/dnn/lpcnet_private.h
      type_or_value: ((CONT_VECTORS+10)*FRAME_SIZE)
    - item_type: preproc_def
      name: LPCNET_PLC_RESET_START
      pos:
        line_end: 57
        line_start: 56
        source_file: /src/opus/dnn/lpcnet_private.h
      type_or_value: fec
    structs:
    - fields:
      - name: pitchdnn
        type: PitchDNNState
      - name: analysis_mem[OVERLAP_SIZE]
        type: float
      - name: mem_preemph
        type: float
      - name: prev_if[PITCH_IF_MAX_FREQ]
        type: kiss_fft_cpx
      - name: if_features[PITCH_IF_FEATURES]
        type: float
      - name: xcorr_features[PITCH_MAX_PERIOD - PITCH_MIN_PERIOD]
        type: float
      - name: dnn_pitch
        type: float
      - name: pitch_mem[LPC_ORDER]
        type: float
      - name: pitch_filt
        type: float
      - name: exc_buf[PITCH_BUF_SIZE]
        type: float
      - name: lp_buf[PITCH_BUF_SIZE]
        type: float
      - name: lp_mem[4]
        type: float
      - name: lpc[LPC_ORDER]
        type: float
      - name: features[NB_TOTAL_FEATURES]
        type: float
      - name: sig_mem[LPC_ORDER]
        type: float
      - name: burg_cepstrum[2*NB_BANDS]
        type: float
      item_type: struct
      name: LPCNetEncState
      pos:
        line_end: 41
        line_start: 24
        source_file: /src/opus/dnn/lpcnet_private.h
    - fields:
      - name: gru1_state[PLC_GRU1_STATE_SIZE]
        type: float
      - name: gru2_state[PLC_GRU2_STATE_SIZE]
        type: float
      item_type: struct
      name: PLCNetState
      pos:
        line_end: 46
        line_start: 43
        source_file: /src/opus/dnn/lpcnet_private.h
    - fields:
      - name: model
        type: PLCModel
      - name: fargan
        type: FARGANState
      - name: enc
        type: LPCNetEncState
      - name: loaded
        type: int
      - name: arch
        type: int
      - name: fec[PLC_MAX_FEC][NB_FEATURES]
        type: float
      - name: analysis_gap
        type: int
      - name: fec_read_pos
        type: int
      - name: fec_fill_pos
        type: int
      - name: fec_skip
        type: int
      - name: analysis_pos
        type: int
      - name: predict_pos
        type: int
      - name: pcm[PLC_BUF_SIZE]
        type: float
      - name: blend
        type: int
      - name: features[NB_TOTAL_FEATURES]
        type: float
      - name: cont_features[CONT_VECTORS*NB_FEATURES]
        type: float
      - name: loss_count
        type: int
      - name: plc_net
        type: PLCNetState
      - name: plc_bak[2]
        type: PLCNetState
      item_type: struct
      name: LPCNetPLCState
      pos:
        line_end: 71
        line_start: 49
        source_file: /src/opus/dnn/lpcnet_private.h
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/dnn/lossgen.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: PITCH_MIN_PERIOD
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/opus/dnn/lossgen.h
      type_or_value: '32'
    - item_type: preproc_def
      name: PITCH_MAX_PERIOD
      pos:
        line_end: 35
        line_start: 34
        source_file: /src/opus/dnn/lossgen.h
      type_or_value: '256'
    - item_type: preproc_def
      name: NB_XCORR_FEATURES
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/opus/dnn/lossgen.h
      type_or_value: (PITCH_MAX_PERIOD-PITCH_MIN_PERIOD)
    structs:
    - fields:
      - name: model
        type: LossGen
      - name: gru1_state[LOSSGEN_GRU1_STATE_SIZE]
        type: float
      - name: gru2_state[LOSSGEN_GRU2_STATE_SIZE]
        type: float
      - name: last_loss
        type: int
      - name: used
        type: int
      item_type: struct
      name: LossGenState
      pos:
        line_end: 45
        line_start: 39
        source_file: /src/opus/dnn/lossgen.h
    typedefs: []
    union: []
- function_names:
  - kiss99_srand
  - kiss99_rand
  source_file: /src/opus/dnn/kiss99.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - compute_linear
  - compute_activation
  - compute_conv2d
  source_file: /src/opus/dnn/nnet.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: ACTIVATION_LINEAR
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/opus/dnn/nnet.h
      type_or_value: '0'
    - item_type: preproc_def
      name: ACTIVATION_SIGMOID
      pos:
        line_end: 35
        line_start: 34
        source_file: /src/opus/dnn/nnet.h
      type_or_value: '1'
    - item_type: preproc_def
      name: ACTIVATION_TANH
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/opus/dnn/nnet.h
      type_or_value: '2'
    - item_type: preproc_def
      name: ACTIVATION_RELU
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/opus/dnn/nnet.h
      type_or_value: '3'
    - item_type: preproc_def
      name: ACTIVATION_SOFTMAX
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/opus/dnn/nnet.h
      type_or_value: '4'
    - item_type: preproc_def
      name: ACTIVATION_SWISH
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/opus/dnn/nnet.h
      type_or_value: '5'
    - item_type: preproc_def
      name: ACTIVATION_EXP
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/opus/dnn/nnet.h
      type_or_value: '6'
    - item_type: preproc_def
      name: WEIGHT_BLOB_VERSION
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/opus/dnn/nnet.h
      type_or_value: '0'
    - item_type: preproc_def
      name: WEIGHT_BLOCK_SIZE
      pos:
        line_end: 43
        line_start: 42
        source_file: /src/opus/dnn/nnet.h
      type_or_value: '64'
    - item_type: preproc_def
      name: WEIGHT_TYPE_float
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/opus/dnn/nnet.h
      type_or_value: '0'
    - item_type: preproc_def
      name: WEIGHT_TYPE_int
      pos:
        line_end: 52
        line_start: 51
        source_file: /src/opus/dnn/nnet.h
      type_or_value: '1'
    - item_type: preproc_def
      name: WEIGHT_TYPE_qweight
      pos:
        line_end: 53
        line_start: 52
        source_file: /src/opus/dnn/nnet.h
      type_or_value: '2'
    - item_type: preproc_def
      name: WEIGHT_TYPE_int8
      pos:
        line_end: 54
        line_start: 53
        source_file: /src/opus/dnn/nnet.h
      type_or_value: '3'
    structs:
    - fields:
      - name: '*name'
        type: char
      - name: type
        type: int
      - name: size
        type: int
      - name: '*data'
        type: void
      item_type: struct
      name: WeightArray
      pos:
        line_end: 48
        line_start: 43
        source_file: /src/opus/dnn/nnet.h
    - fields:
      - name: head[4]
        type: char
      - name: version
        type: int
      - name: type
        type: int
      - name: size
        type: int
      - name: block_size
        type: int
      - name: name[44]
        type: char
      item_type: struct
      name: WeightHead
      pos:
        line_end: 62
        line_start: 55
        source_file: /src/opus/dnn/nnet.h
    - fields:
      - name: '*bias'
        type: float
      - name: '*subias'
        type: float
      - name: '*weights'
        type: opus_int8
      - name: '*float_weights'
        type: float
      - name: '*weights_idx'
        type: int
      - name: '*diag'
        type: float
      - name: '*scale'
        type: float
      - name: nb_inputs
        type: int
      - name: nb_outputs
        type: int
      item_type: struct
      name: LinearLayer
      pos:
        line_end: 75
        line_start: 65
        source_file: /src/opus/dnn/nnet.h
    - fields:
      - name: '*bias'
        type: float
      - name: '*float_weights'
        type: float
      - name: in_channels
        type: int
      - name: out_channels
        type: int
      - name: ktime
        type: int
      - name: kheight
        type: int
      item_type: struct
      name: Conv2dLayer
      pos:
        line_end: 85
        line_start: 78
        source_file: /src/opus/dnn/nnet.h
    typedefs: []
    union: []
- function_names:
  - adaconv_compare
  - adacomb_compare
  - adashape_compare
  - main
  source_file: /src/opus/dnn/adaconvtest.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/dnn/lpcnet.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: NB_FEATURES
      pos:
        line_end: 32
        line_start: 31
        source_file: /src/opus/dnn/lpcnet.h
      type_or_value: '20'
    - item_type: preproc_def
      name: NB_TOTAL_FEATURES
      pos:
        line_end: 33
        line_start: 32
        source_file: /src/opus/dnn/lpcnet.h
      type_or_value: '36'
    - item_type: preproc_def
      name: LPCNET_FRAME_SIZE
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/opus/dnn/lpcnet.h
      type_or_value: (160)
    structs: []
    typedefs:
    - item_type: typedef
      name: LPCNetState
      pos:
        line_end: 37
        line_start: 37
        source_file: /src/opus/dnn/lpcnet.h
      type: LPCNetState
    - item_type: typedef
      name: LPCNetDecState
      pos:
        line_end: 39
        line_start: 39
        source_file: /src/opus/dnn/lpcnet.h
      type: LPCNetDecState
    - item_type: typedef
      name: LPCNetEncState
      pos:
        line_end: 41
        line_start: 41
        source_file: /src/opus/dnn/lpcnet.h
      type: LPCNetEncState
    - item_type: typedef
      name: LPCNetPLCState
      pos:
        line_end: 43
        line_start: 43
        source_file: /src/opus/dnn/lpcnet.h
      type: LPCNetPLCState
    union: []
- function_names: []
  source_file: /src/opus/dnn/dred_coding.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - pitch_embeddings
  - compute_wlpc
  - run_fwgan_upsampler
  - fwgan_cont
  - apply_gain
  - fwgan_lpc_syn
  - fwgan_preemphasis
  - fwgan_deemphasis
  - run_fwgan_subframe
  - fwgan_init
  - fwgan_load_model
  - fwgan_synthesize_impl
  - fwgan_synthesize
  - fwgan_synthesize_int
  source_file: /src/opus/dnn/fwgan.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: FEAT_IN_SIZE
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/opus/dnn/fwgan.c
      type_or_value: (BFCC_WITH_CORR_UPSAMPLER_FC_OUT_SIZE/4 + FWGAN_FRAME_SIZE/2)
    - item_type: preproc_def
      name: FWGAN_FEATURES
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/opus/dnn/fwgan.c
      type_or_value: (NB_FEATURES-1)
    structs: []
    typedefs: []
    union: []
- function_names:
  - load_blob
  - free_blob
  - load_blob
  - free_blob
  - usage
  - char_to_int
  - main
  source_file: /src/opus/dnn/fargan_demo.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MODE_FEATURES
      pos:
        line_end: 113
        line_start: 112
        source_file: /src/opus/dnn/fargan_demo.c
      type_or_value: '2'
    - item_type: preproc_def
      name: MODE_FARGAN_SYNTHESIS
      pos:
        line_end: 117
        line_start: 116
        source_file: /src/opus/dnn/fargan_demo.c
      type_or_value: '7'
    - item_type: preproc_def
      name: MODE_DRED_DECODING
      pos:
        line_end: 118
        line_start: 117
        source_file: /src/opus/dnn/fargan_demo.c
      type_or_value: '8'
    - item_type: preproc_def
      name: DRED_CHUNKS
      pos:
        line_end: 120
        line_start: 119
        source_file: /src/opus/dnn/fargan_demo.c
      type_or_value: '50'
    - item_type: preproc_def
      name: MAX_DRED_PACKET
      pos:
        line_end: 121
        line_start: 120
        source_file: /src/opus/dnn/fargan_demo.c
      type_or_value: '100000'
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/dnn/tansig_table.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - SQUARE
  - compute_band_energy_inverse
  - lpcn_lpc
  - lpcn_compute_band_energy
  - compute_burg_cepstrum
  - burg_cepstral_analysis
  - interp_band_gain
  - dct
  - idct
  - forward_transform
  - inverse_transform
  - lpc_from_bands
  - lpc_weighting
  - lpc_from_cepstrum
  - apply_window
  source_file: /src/opus/dnn/freq.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - lpcnet_plc_reset
  - lpcnet_plc_init
  - lpcnet_plc_load_model
  - lpcnet_plc_fec_add
  - lpcnet_plc_fec_clear
  - compute_plc_pred
  - get_fec_or_pred
  - queue_features
  - lpcnet_plc_update
  - lpcnet_plc_conceal
  source_file: /src/opus/dnn/lpcnet_plc.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: M_PI
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/opus/dnn/lpcnet_plc.c
      type_or_value: '3.141592653'
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/dnn/osce_structs.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: numbits_smooth
        type: float
      - name: pitch_hangover_count
        type: int
      - name: last_lag
        type: int
      - name: last_type
        type: int
      - name: signal_history[OSCE_FEATURES_MAX_HISTORY]
        type: float
      - name: reset
        type: int
      item_type: struct
      name: OSCEFeatureState
      pos:
        line_end: 54
        line_start: 47
        source_file: /src/opus/dnn/osce_structs.h
    - fields:
      - name: signal_history[OSCE_BWE_HALF_WINDOW_SIZE]
        type: float
      - name: last_spec[2 * OSCE_BWE_MAX_INSTAFREQ_BIN + 2]
        type: float
      item_type: struct
      name: OSCEBWEFeatureState
      pos:
        line_end: 59
        line_start: 56
        source_file: /src/opus/dnn/osce_structs.h
    - fields:
      - name: upsamp_buffer[2][3]
        type: float
      - name: interpol_buffer[8]
        type: float
      item_type: struct
      name: resamp_state
      pos:
        line_end: 66
        line_start: 63
        source_file: /src/opus/dnn/osce_structs.h
    - fields:
      - name: feature_net_conv1_state[BBWENET_FNET_CONV1_STATE_SIZE]
        type: float
      - name: feature_net_conv2_state[BBWENET_FNET_CONV2_STATE_SIZE]
        type: float
      - name: feature_net_gru_state[BBWENET_FNET_GRU_STATE_SIZE]
        type: float
      - name: outbut_buffer[OSCE_BWE_OUTPUT_DELAY]
        type: opus_int16
      - name: af1_state
        type: AdaConvState
      - name: af2_state
        type: AdaConvState
      - name: af3_state
        type: AdaConvState
      - name: tdshape1_state
        type: AdaShapeState
      - name: tdshape2_state
        type: AdaShapeState
      - name: resampler_state[3]
        type: resamp_state
      item_type: struct
      name: BBWENetState
      pos:
        line_end: 79
        line_start: 68
        source_file: /src/opus/dnn/osce_structs.h
    - fields:
      - name: layers
        type: BBWENETLayers
      - name: window16[BBWENET_AF1_OVERLAP_SIZE]
        type: float
      - name: window32[BBWENET_AF2_OVERLAP_SIZE]
        type: float
      - name: window48[BBWENET_AF3_OVERLAP_SIZE]
        type: float
      item_type: struct
      name: BBWENet
      pos:
        line_end: 86
        line_start: 81
        source_file: /src/opus/dnn/osce_structs.h
    - fields:
      - name: feature_net_conv2_state[LACE_FNET_CONV2_STATE_SIZE]
        type: float
      - name: feature_net_gru_state[LACE_COND_DIM]
        type: float
      - name: cf1_state
        type: AdaCombState
      - name: cf2_state
        type: AdaCombState
      - name: af1_state
        type: AdaConvState
      - name: preemph_mem
        type: float
      - name: deemph_mem
        type: float
      item_type: struct
      name: LACEState
      pos:
        line_end: 100
        line_start: 92
        source_file: /src/opus/dnn/osce_structs.h
    - fields:
      - name: layers
        type: LACELayers
      - name: window[LACE_OVERLAP_SIZE]
        type: float
      item_type: struct
      name: LACE
      pos:
        line_end: 106
        line_start: 102
        source_file: /src/opus/dnn/osce_structs.h
    - fields:
      - name: feature_net_conv2_state[NOLACE_FNET_CONV2_STATE_SIZE]
        type: float
      - name: feature_net_gru_state[NOLACE_COND_DIM]
        type: float
      - name: post_cf1_state[NOLACE_COND_DIM]
        type: float
      - name: post_cf2_state[NOLACE_COND_DIM]
        type: float
      - name: post_af1_state[NOLACE_COND_DIM]
        type: float
      - name: post_af2_state[NOLACE_COND_DIM]
        type: float
      - name: post_af3_state[NOLACE_COND_DIM]
        type: float
      - name: cf1_state
        type: AdaCombState
      - name: cf2_state
        type: AdaCombState
      - name: af1_state
        type: AdaConvState
      - name: af2_state
        type: AdaConvState
      - name: af3_state
        type: AdaConvState
      - name: af4_state
        type: AdaConvState
      - name: tdshape1_state
        type: AdaShapeState
      - name: tdshape2_state
        type: AdaShapeState
      - name: tdshape3_state
        type: AdaShapeState
      - name: preemph_mem
        type: float
      - name: deemph_mem
        type: float
      item_type: struct
      name: NoLACEState
      pos:
        line_end: 132
        line_start: 113
        source_file: /src/opus/dnn/osce_structs.h
    - fields:
      - name: layers
        type: NOLACELayers
      - name: window[LACE_OVERLAP_SIZE]
        type: float
      item_type: struct
      name: NoLACE
      pos:
        line_end: 137
        line_start: 134
        source_file: /src/opus/dnn/osce_structs.h
    - fields:
      - name: loaded
        type: int
      item_type: struct
      name: OSCEModel
      pos:
        line_end: 153
        line_start: 142
        source_file: /src/opus/dnn/osce_structs.h
    - fields: []
      item_type: struct
      name: OSCEBWEState
      pos:
        line_end: 168
        line_start: 164
        source_file: /src/opus/dnn/osce_structs.h
    typedefs: []
    union:
    - fields: []
      item_type: union
      name: OSCEState
      pos:
        line_end: 162
        line_start: 155
        source_file: /src/opus/dnn/osce_structs.h
- function_names:
  - CAT_SUFFIX2
  - CAT_SUFFIX
  - RTCD_SUF
  - vec_swish
  - relu
  - RTCD_SUF
  - RTCD_SUF
  - conv2d_float
  - conv2d_3x3_float
  - RTCD_SUF
  source_file: /src/opus/dnn/nnet_arch.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAX_ACTIVATIONS
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/opus/dnn/nnet_arch.h
      type_or_value: (4096)
    - item_type: preproc_def
      name: MAX_CONV2D_INPUTS
      pos:
        line_end: 215
        line_start: 214
        source_file: /src/opus/dnn/nnet_arch.h
      type_or_value: '8192'
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/dnn/dred_rdovae_dec.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: initialized
        type: int
      - name: gru1_state[DEC_GRU1_STATE_SIZE]
        type: float
      - name: gru2_state[DEC_GRU2_STATE_SIZE]
        type: float
      - name: gru3_state[DEC_GRU3_STATE_SIZE]
        type: float
      - name: gru4_state[DEC_GRU4_STATE_SIZE]
        type: float
      - name: gru5_state[DEC_GRU5_STATE_SIZE]
        type: float
      - name: conv1_state[DEC_CONV1_STATE_SIZE]
        type: float
      - name: conv2_state[DEC_CONV2_STATE_SIZE]
        type: float
      - name: conv3_state[DEC_CONV3_STATE_SIZE]
        type: float
      - name: conv4_state[DEC_CONV4_STATE_SIZE]
        type: float
      - name: conv5_state[DEC_CONV5_STATE_SIZE]
        type: float
      item_type: struct
      name: RDOVAEDecStruct
      pos:
        line_end: 46
        line_start: 34
        source_file: /src/opus/dnn/dred_rdovae_dec.h
    typedefs: []
    union: []
- function_names:
  - print_vector
  - rc2lpc
  - run_frame_network
  - run_frame_network_deferred
  - run_frame_network_flush
  - run_sample_network
  - lpcnet_get_size
  - lpcnet_reset
  - lpcnet_init
  - lpcnet_load_model
  - lpcnet_create
  - lpcnet_destroy
  - lpcnet_reset_signal
  - lpcnet_synthesize_tail_impl
  - lpcnet_synthesize_impl
  - lpcnet_synthesize
  source_file: /src/opus/dnn/lpcnet.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: PREEMPH
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/opus/dnn/lpcnet.c
      type_or_value: 0.85f
    - item_type: preproc_def
      name: PDF_FLOOR
      pos:
        line_end: 43
        line_start: 42
        source_file: /src/opus/dnn/lpcnet.c
      type_or_value: '0.002'
    - item_type: preproc_def
      name: FRAME_INPUT_SIZE
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/opus/dnn/lpcnet.c
      type_or_value: (NB_FEATURES + EMBED_PITCH_OUT_SIZE)
    structs: []
    typedefs: []
    union: []
- function_names:
  - lpcnet_encoder_get_size
  - lpcnet_encoder_init
  - lpcnet_encoder_load_model
  - lpcnet_encoder_create
  - lpcnet_encoder_destroy
  - frame_analysis
  - biquad
  - celt_log10
  - compute_frame_features
  - preemphasis
  - lpcnet_compute_single_frame_features_impl
  - lpcnet_compute_single_frame_features
  - lpcnet_compute_single_frame_features_float
  source_file: /src/opus/dnn/lpcnet_enc.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - conv1_cond_init
  - dred_rdovae_encode_dframe
  source_file: /src/opus/dnn/dred_rdovae_enc.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - compute_generic_dense
  - compute_generic_gru
  - compute_glu
  - compute_generic_conv1d
  - compute_generic_conv1d_dilation
  source_file: /src/opus/dnn/nnet.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAX_RNN_NEURONS_ALL
      pos:
        line_end: 68
        line_start: 67
        source_file: /src/opus/dnn/nnet.c
      type_or_value: IMAX(IMAX(IMAX(IMAX(FARGAN_MAX_RNN_NEURONS, PLC_MAX_RNN_UNITS),
        DRED_MAX_RNN_NEURONS), OSCE_MAX_RNN_NEURONS), OSCE_BWE_MAX_RNN_NEURONS)
    - item_type: preproc_def
      name: MAX_RNN_NEURONS_ALL
      pos:
        line_end: 70
        line_start: 69
        source_file: /src/opus/dnn/nnet.c
      type_or_value: IMAX(IMAX(IMAX(FARGAN_MAX_RNN_NEURONS, PLC_MAX_RNN_UNITS), DRED_MAX_RNN_NEURONS),
        OSCE_MAX_RNN_NEURONS)
    - item_type: preproc_def
      name: MAX_RNN_NEURONS_ALL
      pos:
        line_end: 73
        line_start: 72
        source_file: /src/opus/dnn/nnet.c
      type_or_value: IMAX(IMAX(FARGAN_MAX_RNN_NEURONS, PLC_MAX_RNN_UNITS), DRED_MAX_RNN_NEURONS)
    - item_type: preproc_def
      name: MAX_CONV_INPUTS_ALL
      pos:
        line_end: 122
        line_start: 121
        source_file: /src/opus/dnn/nnet.c
      type_or_value: IMAX(DRED_MAX_CONV_INPUTS, 1024)
    structs: []
    typedefs: []
    union: []
- function_names:
  - load_rir
  - load_rir_list
  - rir_filter_sequence
  - rand_lcg
  - randf
  - biquad
  - uni_rand
  - rand_filt
  - rand_resp
  - float2short
  - weighted_rms
  - main
  source_file: /src/opus/dnn/dump_data.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: M_PI
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/opus/dnn/dump_data.c
      type_or_value: 3.141592653589793f
    - item_type: preproc_def
      name: SEQUENCE_LENGTH
      pos:
        line_end: 53
        line_start: 52
        source_file: /src/opus/dnn/dump_data.c
      type_or_value: '2000'
    - item_type: preproc_def
      name: SEQUENCE_SAMPLES
      pos:
        line_end: 54
        line_start: 53
        source_file: /src/opus/dnn/dump_data.c
      type_or_value: (SEQUENCE_LENGTH*FRAME_SIZE)
    - item_type: preproc_def
      name: RIR_FFT_SIZE
      pos:
        line_end: 60
        line_start: 59
        source_file: /src/opus/dnn/dump_data.c
      type_or_value: '32000'
    - item_type: preproc_def
      name: RIR_MAX_DURATION
      pos:
        line_end: 61
        line_start: 60
        source_file: /src/opus/dnn/dump_data.c
      type_or_value: (RIR_FFT_SIZE/2)
    - item_type: preproc_def
      name: FILENAME_MAX_SIZE
      pos:
        line_end: 62
        line_start: 61
        source_file: /src/opus/dnn/dump_data.c
      type_or_value: '1000'
    structs:
    - fields:
      - name: nb_rirs
        type: int
      - name: block_size
        type: int
      - name: '*fft'
        type: mini_kiss_fft_state
      - name: '*ifft'
        type: mini_kiss_fft_state
      - name: '**rir'
        type: mini_kiss_fft_cpx
      - name: '**early'
        type: mini_kiss_fft_cpx
      item_type: struct
      name: rir_list
      pos:
        line_end: 70
        line_start: 63
        source_file: /src/opus/dnn/dump_data.c
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/dnn/freq.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: LPC_ORDER
      pos:
        line_end: 32
        line_start: 31
        source_file: /src/opus/dnn/freq.h
      type_or_value: '16'
    - item_type: preproc_def
      name: PREEMPHASIS
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/opus/dnn/freq.h
      type_or_value: (0.85f)
    - item_type: preproc_def
      name: FRAME_SIZE_5MS
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/opus/dnn/freq.h
      type_or_value: (2)
    - item_type: preproc_def
      name: OVERLAP_SIZE_5MS
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/opus/dnn/freq.h
      type_or_value: (2)
    - item_type: preproc_def
      name: TRAINING_OFFSET_5MS
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/opus/dnn/freq.h
      type_or_value: (1)
    - item_type: preproc_def
      name: WINDOW_SIZE_5MS
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/opus/dnn/freq.h
      type_or_value: (FRAME_SIZE_5MS + OVERLAP_SIZE_5MS)
    - item_type: preproc_def
      name: FRAME_SIZE
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/opus/dnn/freq.h
      type_or_value: (80*FRAME_SIZE_5MS)
    - item_type: preproc_def
      name: OVERLAP_SIZE
      pos:
        line_end: 43
        line_start: 42
        source_file: /src/opus/dnn/freq.h
      type_or_value: (80*OVERLAP_SIZE_5MS)
    - item_type: preproc_def
      name: TRAINING_OFFSET
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/opus/dnn/freq.h
      type_or_value: (80*TRAINING_OFFSET_5MS)
    - item_type: preproc_def
      name: WINDOW_SIZE
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/opus/dnn/freq.h
      type_or_value: (FRAME_SIZE + OVERLAP_SIZE)
    - item_type: preproc_def
      name: FREQ_SIZE
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/opus/dnn/freq.h
      type_or_value: (WINDOW_SIZE/2 + 1)
    - item_type: preproc_def
      name: NB_BANDS
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/opus/dnn/freq.h
      type_or_value: '18'
    - item_type: preproc_def
      name: NB_BANDS_1
      pos:
        line_end: 49
        line_start: 48
        source_file: /src/opus/dnn/freq.h
      type_or_value: (NB_BANDS - 1)
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/dnn/dred_rdovae_enc.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: initialized
        type: int
      - name: gru1_state[ENC_GRU1_STATE_SIZE]
        type: float
      - name: gru2_state[ENC_GRU2_STATE_SIZE]
        type: float
      - name: gru3_state[ENC_GRU3_STATE_SIZE]
        type: float
      - name: gru4_state[ENC_GRU4_STATE_SIZE]
        type: float
      - name: gru5_state[ENC_GRU5_STATE_SIZE]
        type: float
      - name: conv1_state[ENC_CONV1_STATE_SIZE]
        type: float
      - name: conv2_state[2*ENC_CONV2_STATE_SIZE]
        type: float
      - name: conv3_state[2*ENC_CONV3_STATE_SIZE]
        type: float
      - name: conv4_state[2*ENC_CONV4_STATE_SIZE]
        type: float
      - name: conv5_state[2*ENC_CONV5_STATE_SIZE]
        type: float
      item_type: struct
      name: RDOVAEEncStruct
      pos:
        line_end: 46
        line_start: 34
        source_file: /src/opus/dnn/dred_rdovae_enc.h
    typedefs: []
    union: []
- function_names:
  - main
  source_file: /src/opus/dnn/lossgen_demo.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/dnn/training_tf2/fec_packets.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - get_fec_frame
  - get_fec_rate
  - main
  source_file: /src/opus/dnn/training_tf2/fec_packets.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - compute_linear
  - compute_activation
  - compute_conv2d
  - compute_linear
  - compute_activation
  - compute_conv2d
  - compute_linear
  - compute_activation
  - compute_conv2d
  - compute_linear
  - compute_activation
  - compute_conv2d
  source_file: /src/opus/dnn/x86/dnn_x86.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/dnn/x86/nnet_sse2.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: RTCD_ARCH
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/opus/dnn/x86/nnet_sse2.c
      type_or_value: sse2
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/dnn/x86/nnet_avx2.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: RTCD_ARCH
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/opus/dnn/x86/nnet_avx2.c
      type_or_value: avx2
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/dnn/x86/x86_dnn_map.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/dnn/x86/nnet_sse4_1.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: RTCD_ARCH
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/opus/dnn/x86/nnet_sse4_1.c
      type_or_value: sse4_1
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/dnn/torch/rdovae/packets/fec_packets.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - get_fec_frame
  - get_fec_rate
  - main
  source_file: /src/opus/dnn/torch/rdovae/packets/fec_packets.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - compute_linear
  - compute_linear
  - compute_linear
  - compute_activation
  - compute_conv2d
  - compute_activation
  - compute_conv2d
  source_file: /src/opus/dnn/arm/dnn_arm.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/dnn/arm/nnet_neon.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: RTCD_ARCH
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/opus/dnn/arm/nnet_neon.c
      type_or_value: neon
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/dnn/arm/arm_dnn_map.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/dnn/arm/nnet_dotprod.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: RTCD_ARCH
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/opus/dnn/arm/nnet_dotprod.c
      type_or_value: dotprod
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/celt/static_modes_fixed.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: OVERRIDE_FFT
      pos:
        line_end: 8
        line_start: 7
        source_file: /src/opus/celt/static_modes_fixed.h
      type_or_value: '1'
    - item_type: preproc_def
      name: TOTAL_MODES
      pos:
        line_end: 4436
        line_start: 4435
        source_file: /src/opus/celt/static_modes_fixed.h
      type_or_value: '2'
    - item_type: preproc_def
      name: TOTAL_MODES
      pos:
        line_end: 4442
        line_start: 4441
        source_file: /src/opus/celt/static_modes_fixed.h
      type_or_value: '1'
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/celt/laplace.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/celt/cwrs.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - FRAC_MUL16
  - fast_atan2f
  - celt_maxabs16
  - celt_maxabs_res
  - celt_maxabs32
  - celt_maxabs32
  - celt_atan_norm
  - celt_atan2p_norm
  - celt_cos_norm2
  - celt_sqrt
  - celt_sqrt32
  - celt_rsqrt
  - celt_rsqrt_norm
  - celt_rsqrt_norm32
  - celt_cos_norm
  - celt_rcp
  - celt_div
  - frac_div32
  - frac_div32_q29
  - celt_log2
  - celt_exp2
  - celt_log2
  - celt_exp2
  - celt_sin
  - celt_log
  - celt_exp
  - celt_ilog2
  - celt_zlog2
  - celt_log2
  - celt_exp2_frac
  - celt_exp2
  - celt_log2_db
  - celt_exp2_db_frac
  - celt_exp2_db
  - celt_log2_db
  - celt_exp2_db_frac
  - celt_exp2_db
  - celt_div
  - celt_atan_norm
  - celt_atan2p_norm
  - celt_atan01
  - celt_atan2p
  - celt_float2int16
  - opus_limit2_checkwithin1
  source_file: /src/opus/celt/mathops.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: PI
      pos:
        line_end: 47
        line_start: 46
        source_file: /src/opus/celt/mathops.h
      type_or_value: '3.1415926535897931'
    - item_type: preproc_def
      name: cA
      pos:
        line_end: 56
        line_start: 55
        source_file: /src/opus/celt/mathops.h
      type_or_value: 0.43157974f
    - item_type: preproc_def
      name: cB
      pos:
        line_end: 57
        line_start: 56
        source_file: /src/opus/celt/mathops.h
      type_or_value: 0.67848403f
    - item_type: preproc_def
      name: cC
      pos:
        line_end: 58
        line_start: 57
        source_file: /src/opus/celt/mathops.h
      type_or_value: 0.08595542f
    - item_type: preproc_def
      name: cE
      pos:
        line_end: 59
        line_start: 58
        source_file: /src/opus/celt/mathops.h
      type_or_value: ((float)PI/2)
    - item_type: preproc_def
      name: celt_maxabs_res
      pos:
        line_end: 116
        line_start: 115
        source_file: /src/opus/celt/mathops.h
      type_or_value: celt_maxabs16
    - item_type: preproc_def
      name: ATAN2_2_OVER_PI
      pos:
        line_end: 144
        line_start: 143
        source_file: /src/opus/celt/mathops.h
      type_or_value: 0.636619772367581f
    - item_type: preproc_def
      name: ATAN2_COEFF_A03
      pos:
        line_end: 151
        line_start: 150
        source_file: /src/opus/celt/mathops.h
      type_or_value: -3.3331659436225891113281250000e-01f
    - item_type: preproc_def
      name: ATAN2_COEFF_A05
      pos:
        line_end: 152
        line_start: 151
        source_file: /src/opus/celt/mathops.h
      type_or_value: 1.99627041816711425781250000000e-01f
    - item_type: preproc_def
      name: ATAN2_COEFF_A07
      pos:
        line_end: 153
        line_start: 152
        source_file: /src/opus/celt/mathops.h
      type_or_value: -1.3976582884788513183593750000e-01f
    - item_type: preproc_def
      name: ATAN2_COEFF_A09
      pos:
        line_end: 154
        line_start: 153
        source_file: /src/opus/celt/mathops.h
      type_or_value: 9.79423448443412780761718750000e-02f
    - item_type: preproc_def
      name: ATAN2_COEFF_A11
      pos:
        line_end: 155
        line_start: 154
        source_file: /src/opus/celt/mathops.h
      type_or_value: -5.7773590087890625000000000000e-02f
    - item_type: preproc_def
      name: ATAN2_COEFF_A13
      pos:
        line_end: 156
        line_start: 155
        source_file: /src/opus/celt/mathops.h
      type_or_value: 2.30401363223791122436523437500e-02f
    - item_type: preproc_def
      name: ATAN2_COEFF_A15
      pos:
        line_end: 157
        line_start: 156
        source_file: /src/opus/celt/mathops.h
      type_or_value: -4.3554059229791164398193359375e-03f
    - item_type: preproc_def
      name: COS_COEFF_A0
      pos:
        line_end: 210
        line_start: 209
        source_file: /src/opus/celt/mathops.h
      type_or_value: 9.999999403953552246093750000000e-01f
    - item_type: preproc_def
      name: COS_COEFF_A2
      pos:
        line_end: 211
        line_start: 210
        source_file: /src/opus/celt/mathops.h
      type_or_value: -1.233698248863220214843750000000000f
    - item_type: preproc_def
      name: COS_COEFF_A4
      pos:
        line_end: 212
        line_start: 211
        source_file: /src/opus/celt/mathops.h
      type_or_value: 2.536507546901702880859375000000e-01f
    - item_type: preproc_def
      name: COS_COEFF_A6
      pos:
        line_end: 213
        line_start: 212
        source_file: /src/opus/celt/mathops.h
      type_or_value: -2.08106283098459243774414062500e-02f
    - item_type: preproc_def
      name: COS_COEFF_A8
      pos:
        line_end: 214
        line_start: 213
        source_file: /src/opus/celt/mathops.h
      type_or_value: 8.581906440667808055877685546875e-04f
    - item_type: preproc_def
      name: LOG2_COEFF_A0
      pos:
        line_end: 296
        line_start: 295
        source_file: /src/opus/celt/mathops.h
      type_or_value: 8.74628424644470214843750000e-02f
    - item_type: preproc_def
      name: LOG2_COEFF_A1
      pos:
        line_end: 297
        line_start: 296
        source_file: /src/opus/celt/mathops.h
      type_or_value: 1.357829570770263671875000000000f
    - item_type: preproc_def
      name: LOG2_COEFF_A2
      pos:
        line_end: 298
        line_start: 297
        source_file: /src/opus/celt/mathops.h
      type_or_value: -6.3897705078125000000000000e-01f
    - item_type: preproc_def
      name: LOG2_COEFF_A3
      pos:
        line_end: 299
        line_start: 298
        source_file: /src/opus/celt/mathops.h
      type_or_value: 4.01971250772476196289062500e-01f
    - item_type: preproc_def
      name: LOG2_COEFF_A4
      pos:
        line_end: 300
        line_start: 299
        source_file: /src/opus/celt/mathops.h
      type_or_value: -2.8415444493293762207031250e-01f
    - item_type: preproc_def
      name: EXP2_COEFF_A0
      pos:
        line_end: 330
        line_start: 329
        source_file: /src/opus/celt/mathops.h
      type_or_value: 9.999999403953552246093750000000e-01f
    - item_type: preproc_def
      name: EXP2_COEFF_A1
      pos:
        line_end: 331
        line_start: 330
        source_file: /src/opus/celt/mathops.h
      type_or_value: 6.931530833244323730468750000000e-01f
    - item_type: preproc_def
      name: EXP2_COEFF_A2
      pos:
        line_end: 332
        line_start: 331
        source_file: /src/opus/celt/mathops.h
      type_or_value: 2.401536107063293457031250000000e-01f
    - item_type: preproc_def
      name: EXP2_COEFF_A3
      pos:
        line_end: 333
        line_start: 332
        source_file: /src/opus/celt/mathops.h
      type_or_value: 5.582631751894950866699218750000e-02f
    - item_type: preproc_def
      name: EXP2_COEFF_A4
      pos:
        line_end: 334
        line_start: 333
        source_file: /src/opus/celt/mathops.h
      type_or_value: 8.989339694380760192871093750000e-03f
    - item_type: preproc_def
      name: EXP2_COEFF_A5
      pos:
        line_end: 335
        line_start: 334
        source_file: /src/opus/celt/mathops.h
      type_or_value: 1.877576694823801517486572265625e-03f
    - item_type: preproc_def
      name: celt_exp2_db
      pos:
        line_end: 350
        line_start: 349
        source_file: /src/opus/celt/mathops.h
      type_or_value: celt_exp2
    - item_type: preproc_def
      name: celt_log2_db
      pos:
        line_end: 351
        line_start: 350
        source_file: /src/opus/celt/mathops.h
      type_or_value: celt_log2
    - item_type: preproc_def
      name: D0
      pos:
        line_end: 413
        line_start: 412
        source_file: /src/opus/celt/mathops.h
      type_or_value: '16383'
    - item_type: preproc_def
      name: D1
      pos:
        line_end: 414
        line_start: 413
        source_file: /src/opus/celt/mathops.h
      type_or_value: '22804'
    - item_type: preproc_def
      name: D2
      pos:
        line_end: 415
        line_start: 414
        source_file: /src/opus/celt/mathops.h
      type_or_value: '14819'
    - item_type: preproc_def
      name: D3
      pos:
        line_end: 416
        line_start: 415
        source_file: /src/opus/celt/mathops.h
      type_or_value: '10204'
    - item_type: preproc_def
      name: M1
      pos:
        line_end: 606
        line_start: 605
        source_file: /src/opus/celt/mathops.h
      type_or_value: '32767'
    - item_type: preproc_def
      name: M2
      pos:
        line_end: 607
        line_start: 606
        source_file: /src/opus/celt/mathops.h
      type_or_value: '-21'
    - item_type: preproc_def
      name: M3
      pos:
        line_end: 608
        line_start: 607
        source_file: /src/opus/celt/mathops.h
      type_or_value: '-11943'
    - item_type: preproc_def
      name: M4
      pos:
        line_end: 609
        line_start: 608
        source_file: /src/opus/celt/mathops.h
      type_or_value: '4936'
    structs: []
    typedefs: []
    union:
    - fields:
      - name: f
        type: float
      - name: i
        type: opus_uint32
      item_type: union
      name: in
      pos:
        line_end: 278
        line_start: 275
        source_file: /src/opus/celt/mathops.h
    - fields:
      - name: f
        type: float
      - name: i
        type: opus_uint32
      item_type: union
      name: res
      pos:
        line_end: 319
        line_start: 316
        source_file: /src/opus/celt/mathops.h
- function_names:
  - opus_uint32::ec_range_bytes
  - ec_get_buffer
  - ec_get_error
  - ec_tell
  - opus_uint32::celt_udiv
  - celt_sudiv
  source_file: /src/opus/celt/entcode.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: _entcode_H
      pos:
        line_end: 32
        line_start: 31
        source_file: /src/opus/celt/entcode.h
      type_or_value: (1)
    - item_type: preproc_def
      name: EC_WINDOW_SIZE
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/opus/celt/entcode.h
      type_or_value: ((int)sizeof(ec_window)*CHAR_BIT)
    - item_type: preproc_def
      name: EC_UINT_BITS
      pos:
        line_end: 53
        line_start: 52
        source_file: /src/opus/celt/entcode.h
      type_or_value: (8)
    - item_type: preproc_def
      name: BITRES
      pos:
        line_end: 57
        line_start: 56
        source_file: /src/opus/celt/entcode.h
      type_or_value: '3'
    structs:
    - fields:
      - name: '*buf'
        type: unsigned char
      - name: storage
        type: opus_uint32
      - name: end_offs
        type: opus_uint32
      - name: end_window
        type: ec_window
      - name: nend_bits
        type: int
      - name: nbits_total
        type: int
      - name: offs
        type: opus_uint32
      - name: rng
        type: opus_uint32
      - name: val
        type: opus_uint32
      - name: ext
        type: opus_uint32
      - name: rem
        type: int
      - name: error
        type: int
      item_type: struct
      name: ec_ctx
      pos:
        line_end: 90
        line_start: 61
        source_file: /src/opus/celt/entcode.h
    typedefs:
    - item_type: typedef
      name: ec_window
      pos:
        line_end: 44
        line_start: 44
        source_file: /src/opus/celt/entcode.h
      type: opus_uint32
    - item_type: typedef
      name: ec_ctx
      pos:
        line_end: 45
        line_start: 45
        source_file: /src/opus/celt/entcode.h
      type: ec_ctx
    - item_type: typedef
      name: ec_enc
      pos:
        line_end: 46
        line_start: 46
        source_file: /src/opus/celt/entcode.h
      type: ec_ctx
    - item_type: typedef
      name: ec_dec
      pos:
        line_end: 47
        line_start: 47
        source_file: /src/opus/celt/entcode.h
      type: ec_ctx
    union: []
- function_names:
  - validate_celt_decoder
  - celt_decoder_get_size
  - opus_custom_decoder_get_size
  - opus_custom_decoder_create
  - celt_decoder_init
  - opus_custom_decoder_init
  - opus_custom_decoder_destroy
  - deemphasis_stereo_simple
  - deemphasis
  - celt_synthesis
  - tf_decode
  - celt_plc_pitch_search
  - update_plc_state
  - decode_qext_stereo_params
  source_file: /src/opus/celt/celt_decoder.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: PLC_PITCH_LAG_MAX
      pos:
        line_end: 62
        line_start: 61
        source_file: /src/opus/celt/celt_decoder.c
      type_or_value: (720)
    - item_type: preproc_def
      name: PLC_PITCH_LAG_MIN
      pos:
        line_end: 65
        line_start: 64
        source_file: /src/opus/celt/celt_decoder.c
      type_or_value: (100)
    - item_type: preproc_def
      name: FRAME_NONE
      pos:
        line_end: 67
        line_start: 66
        source_file: /src/opus/celt/celt_decoder.c
      type_or_value: '0'
    - item_type: preproc_def
      name: FRAME_NORMAL
      pos:
        line_end: 68
        line_start: 67
        source_file: /src/opus/celt/celt_decoder.c
      type_or_value: '1'
    - item_type: preproc_def
      name: FRAME_PLC_NOISE
      pos:
        line_end: 69
        line_start: 68
        source_file: /src/opus/celt/celt_decoder.c
      type_or_value: '2'
    - item_type: preproc_def
      name: FRAME_PLC_PERIODIC
      pos:
        line_end: 70
        line_start: 69
        source_file: /src/opus/celt/celt_decoder.c
      type_or_value: '3'
    - item_type: preproc_def
      name: FRAME_PLC_NEURAL
      pos:
        line_end: 71
        line_start: 70
        source_file: /src/opus/celt/celt_decoder.c
      type_or_value: '4'
    - item_type: preproc_def
      name: FRAME_DRED
      pos:
        line_end: 72
        line_start: 71
        source_file: /src/opus/celt/celt_decoder.c
      type_or_value: '5'
    - item_type: preproc_def
      name: DECODE_BUFFER_SIZE
      pos:
        line_end: 79
        line_start: 78
        source_file: /src/opus/celt/celt_decoder.c
      type_or_value: DEC_PITCH_BUF_SIZE
    - item_type: preproc_def
      name: PLC_UPDATE_FRAMES
      pos:
        line_end: 81
        line_start: 80
        source_file: /src/opus/celt/celt_decoder.c
      type_or_value: '4'
    - item_type: preproc_def
      name: PLC_UPDATE_SAMPLES
      pos:
        line_end: 82
        line_start: 81
        source_file: /src/opus/celt/celt_decoder.c
      type_or_value: (PLC_UPDATE_FRAMES*FRAME_SIZE)
    - item_type: preproc_def
      name: DECODER_RESET_START
      pos:
        line_end: 104
        line_start: 103
        source_file: /src/opus/celt/celt_decoder.c
      type_or_value: rng
    - item_type: preproc_def
      name: SINC_ORDER
      pos:
        line_end: 625
        line_start: 624
        source_file: /src/opus/celt/celt_decoder.c
      type_or_value: '48'
    - item_type: preproc_def
      name: qext_bytes
      pos:
        line_end: 1166
        line_start: 1165
        source_file: /src/opus/celt/celt_decoder.c
      type_or_value: '0'
    structs:
    - fields:
      - name: '*mode'
        type: OpusCustomMode
      - name: overlap
        type: int
      - name: channels
        type: int
      - name: stream_channels
        type: int
      - name: downsample
        type: int
      - name: start
        type: int
      - name: signalling
        type: int
      - name: disable_inv
        type: int
      - name: complexity
        type: int
      - name: arch
        type: int
      - name: rng
        type: opus_uint32
      - name: error
        type: int
      - name: last_pitch_index
        type: int
      - name: loss_duration
        type: int
      - name: plc_duration
        type: int
      - name: last_frame_type
        type: int
      - name: skip_plc
        type: int
      - name: postfilter_period
        type: int
      - name: postfilter_period_old
        type: int
      - name: postfilter_gain
        type: opus_val16
      - name: postfilter_gain_old
        type: opus_val16
      - name: postfilter_tapset
        type: int
      - name: postfilter_tapset_old
        type: int
      - name: prefilter_and_fold
        type: int
      - name: preemph_memD[2]
        type: celt_sig
      - name: _decode_mem[1]
        type: celt_sig
      item_type: struct
      name: OpusCustomDecoder
      pos:
        line_end: 138
        line_start: 86
        source_file: /src/opus/celt/celt_decoder.c
    typedefs: []
    union: []
- function_names:
  - isqrt32
  - frac_div32_q29
  - frac_div32
  - celt_rsqrt_norm
  - celt_rsqrt_norm32
  - celt_sqrt
  - celt_sqrt32
  - _celt_cos_pi_2
  - celt_cos_norm
  - celt_cos_norm32
  - celt_rcp_norm16
  - celt_rcp_norm32
  - celt_rcp
  - celt_float2int16_c
  - opus_limit2_checkwithin1_c
  source_file: /src/opus/celt/mathops.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: L1
      pos:
        line_end: 179
        line_start: 178
        source_file: /src/opus/celt/mathops.c
      type_or_value: '32767'
    - item_type: preproc_def
      name: L2
      pos:
        line_end: 180
        line_start: 179
        source_file: /src/opus/celt/mathops.c
      type_or_value: '-7651'
    - item_type: preproc_def
      name: L3
      pos:
        line_end: 181
        line_start: 180
        source_file: /src/opus/celt/mathops.c
      type_or_value: '8277'
    - item_type: preproc_def
      name: L4
      pos:
        line_end: 182
        line_start: 181
        source_file: /src/opus/celt/mathops.c
      type_or_value: '-626'
    structs: []
    typedefs: []
    union: []
- function_names:
  - kf_bfly2
  - kf_bfly4
  - kf_bfly3
  - kf_bfly5
  - compute_bitrev_table
  - kf_factor
  - compute_twiddles
  - opus_fft_alloc_arch_c
  - opus_fft_alloc_twiddles
  - opus_fft_alloc
  - opus_fft_free_arch_c
  - opus_fft_free
  - fft_downshift
  - opus_fft_impl
  - opus_fft_c
  - opus_ifft_c
  source_file: /src/opus/celt/kiss_fft.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: M_PI
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/opus/celt/kiss_fft.c
      type_or_value: '3.141592653'
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/celt/static_modes_float.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: OVERRIDE_FFT
      pos:
        line_end: 8
        line_start: 7
        source_file: /src/opus/celt/static_modes_float.h
      type_or_value: '1'
    - item_type: preproc_def
      name: TOTAL_MODES
      pos:
        line_end: 2506
        line_start: 2505
        source_file: /src/opus/celt/static_modes_float.h
      type_or_value: '2'
    - item_type: preproc_def
      name: TOTAL_MODES
      pos:
        line_end: 2512
        line_start: 2511
        source_file: /src/opus/celt/static_modes_float.h
      type_or_value: '1'
    structs: []
    typedefs: []
    union: []
- function_names:
  - ARG_QEXT
  - celt_check_mode_ptr_ptr
  - celt_check_analysis_ptr
  - celt_check_silkinfo_ptr
  - celt_check_glog_ptr
  - CELT_SET_PREDICTION
  - CELT_SET_INPUT_CLIPPING
  - CELT_GET_AND_CLEAR_ERROR
  - CELT_SET_CHANNELS
  - CELT_SET_START_BAND
  - CELT_SET_END_BAND
  - CELT_GET_MODE
  - CELT_SET_SIGNALLING
  - CELT_SET_TONALITY
  - CELT_SET_TONALITY_SLOPE
  - CELT_SET_ANALYSIS
  - OPUS_SET_LFE
  - OPUS_SET_ENERGY_MASK
  - CELT_SET_SILK_INFO
  - bits_to_bitrate
  - bitrate_to_bits
  - toOpus
  - fromOpus
  - VALIDATE_CELT_DECODER
  - QEXT_SCALE
  - QEXT_SCALE2
  - QEXT_SCALE
  - QEXT_SCALE2
  source_file: /src/opus/celt/celt.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: CELTEncoder
      pos:
        line_end: 57
        line_start: 56
        source_file: /src/opus/celt/celt.h
      type_or_value: OpusCustomEncoder
    - item_type: preproc_def
      name: CELTDecoder
      pos:
        line_end: 58
        line_start: 57
        source_file: /src/opus/celt/celt.h
      type_or_value: OpusCustomDecoder
    - item_type: preproc_def
      name: CELTMode
      pos:
        line_end: 59
        line_start: 58
        source_file: /src/opus/celt/celt.h
      type_or_value: OpusCustomMode
    - item_type: preproc_def
      name: QEXT_EXTENSION_ID
      pos:
        line_end: 61
        line_start: 60
        source_file: /src/opus/celt/celt.h
      type_or_value: '124'
    - item_type: preproc_def
      name: LEAK_BANDS
      pos:
        line_end: 63
        line_start: 62
        source_file: /src/opus/celt/celt.h
      type_or_value: '19'
    - item_type: preproc_def
      name: CELT_SET_PREDICTION_REQUEST
      pos:
        line_end: 97
        line_start: 96
        source_file: /src/opus/celt/celt.h
      type_or_value: '10002'
    - item_type: preproc_def
      name: CELT_SET_INPUT_CLIPPING_REQUEST
      pos:
        line_end: 105
        line_start: 104
        source_file: /src/opus/celt/celt.h
      type_or_value: '10004'
    - item_type: preproc_def
      name: CELT_GET_AND_CLEAR_ERROR_REQUEST
      pos:
        line_end: 108
        line_start: 107
        source_file: /src/opus/celt/celt.h
      type_or_value: '10007'
    - item_type: preproc_def
      name: CELT_SET_CHANNELS_REQUEST
      pos:
        line_end: 111
        line_start: 110
        source_file: /src/opus/celt/celt.h
      type_or_value: '10008'
    - item_type: preproc_def
      name: CELT_SET_START_BAND_REQUEST
      pos:
        line_end: 116
        line_start: 115
        source_file: /src/opus/celt/celt.h
      type_or_value: '10010'
    - item_type: preproc_def
      name: CELT_SET_END_BAND_REQUEST
      pos:
        line_end: 119
        line_start: 118
        source_file: /src/opus/celt/celt.h
      type_or_value: '10012'
    - item_type: preproc_def
      name: CELT_GET_MODE_REQUEST
      pos:
        line_end: 122
        line_start: 121
        source_file: /src/opus/celt/celt.h
      type_or_value: '10015'
    - item_type: preproc_def
      name: CELT_SET_SIGNALLING_REQUEST
      pos:
        line_end: 126
        line_start: 125
        source_file: /src/opus/celt/celt.h
      type_or_value: '10016'
    - item_type: preproc_def
      name: CELT_SET_TONALITY_REQUEST
      pos:
        line_end: 129
        line_start: 128
        source_file: /src/opus/celt/celt.h
      type_or_value: '10018'
    - item_type: preproc_def
      name: CELT_SET_TONALITY_SLOPE_REQUEST
      pos:
        line_end: 131
        line_start: 130
        source_file: /src/opus/celt/celt.h
      type_or_value: '10020'
    - item_type: preproc_def
      name: CELT_SET_ANALYSIS_REQUEST
      pos:
        line_end: 134
        line_start: 133
        source_file: /src/opus/celt/celt.h
      type_or_value: '10022'
    - item_type: preproc_def
      name: OPUS_SET_LFE_REQUEST
      pos:
        line_end: 137
        line_start: 136
        source_file: /src/opus/celt/celt.h
      type_or_value: '10024'
    - item_type: preproc_def
      name: OPUS_SET_ENERGY_MASK_REQUEST
      pos:
        line_end: 140
        line_start: 139
        source_file: /src/opus/celt/celt.h
      type_or_value: '10026'
    - item_type: preproc_def
      name: CELT_SET_SILK_INFO_REQUEST
      pos:
        line_end: 143
        line_start: 142
        source_file: /src/opus/celt/celt.h
      type_or_value: '10028'
    - item_type: preproc_def
      name: celt_encoder_ctl
      pos:
        line_end: 184
        line_start: 183
        source_file: /src/opus/celt/celt.h
      type_or_value: opus_custom_encoder_ctl
    - item_type: preproc_def
      name: celt_decoder_ctl
      pos:
        line_end: 185
        line_start: 184
        source_file: /src/opus/celt/celt.h
      type_or_value: opus_custom_decoder_ctl
    - item_type: preproc_def
      name: OPUS_CUSTOM_NOSTATIC
      pos:
        line_end: 191
        line_start: 190
        source_file: /src/opus/celt/celt.h
      type_or_value: static OPUS_INLINE
    - item_type: preproc_def
      name: COMBFILTER_MAXPERIOD
      pos:
        line_end: 236
        line_start: 235
        source_file: /src/opus/celt/celt.h
      type_or_value: '1024'
    - item_type: preproc_def
      name: COMBFILTER_MINPERIOD
      pos:
        line_end: 237
        line_start: 236
        source_file: /src/opus/celt/celt.h
      type_or_value: '15'
    structs:
    - fields:
      - name: valid
        type: int
      - name: tonality
        type: float
      - name: tonality_slope
        type: float
      - name: noisiness
        type: float
      - name: activity
        type: float
      - name: music_prob
        type: float
      - name: music_prob_min
        type: float
      - name: music_prob_max
        type: float
      - name: bandwidth
        type: int
      - name: activity_probability
        type: float
      - name: max_pitch_ratio
        type: float
      - name: leak_boost[LEAK_BANDS]
        type: unsigned char
      item_type: struct
      name: AnalysisInfo
      pos:
        line_end: 78
        line_start: 64
        source_file: /src/opus/celt/celt.h
    - fields:
      - name: signalType
        type: int
      - name: offset
        type: int
      item_type: struct
      name: SILKInfo
      pos:
        line_end: 83
        line_start: 80
        source_file: /src/opus/celt/celt.h
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/celt/mfrngcod.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: _mfrngcode_H
      pos:
        line_end: 29
        line_start: 28
        source_file: /src/opus/celt/mfrngcod.h
      type_or_value: (1)
    - item_type: preproc_def
      name: EC_SYM_BITS
      pos:
        line_end: 35
        line_start: 34
        source_file: /src/opus/celt/mfrngcod.h
      type_or_value: (8)
    - item_type: preproc_def
      name: EC_CODE_BITS
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/opus/celt/mfrngcod.h
      type_or_value: (32)
    - item_type: preproc_def
      name: EC_SYM_MAX
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/opus/celt/mfrngcod.h
      type_or_value: ((1U<<EC_SYM_BITS)-1)
    - item_type: preproc_def
      name: EC_CODE_SHIFT
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/opus/celt/mfrngcod.h
      type_or_value: (EC_CODE_BITS-EC_SYM_BITS-1)
    - item_type: preproc_def
      name: EC_CODE_TOP
      pos:
        line_end: 43
        line_start: 42
        source_file: /src/opus/celt/mfrngcod.h
      type_or_value: (((opus_uint32)1U)<<(EC_CODE_BITS-1))
    - item_type: preproc_def
      name: EC_CODE_BOT
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/opus/celt/mfrngcod.h
      type_or_value: (EC_CODE_TOP>>EC_SYM_BITS)
    - item_type: preproc_def
      name: EC_CODE_EXTRA
      pos:
        line_end: 47
        line_start: 46
        source_file: /src/opus/celt/mfrngcod.h
      type_or_value: ((EC_CODE_BITS-2)%EC_SYM_BITS+1)
    structs: []
    typedefs: []
    union: []
- function_names:
  - get_pulses
  - bits2pulses
  - pulses2bits
  source_file: /src/opus/celt/rate.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAX_PSEUDO
      pos:
        line_end: 32
        line_start: 31
        source_file: /src/opus/celt/rate.h
      type_or_value: '40'
    - item_type: preproc_def
      name: LOG_MAX_PSEUDO
      pos:
        line_end: 33
        line_start: 32
        source_file: /src/opus/celt/rate.h
      type_or_value: '6'
    - item_type: preproc_def
      name: CELT_MAX_PULSES
      pos:
        line_end: 35
        line_start: 34
        source_file: /src/opus/celt/rate.h
      type_or_value: '128'
    - item_type: preproc_def
      name: MAX_FINE_BITS
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/opus/celt/rate.h
      type_or_value: '8'
    - item_type: preproc_def
      name: FINE_OFFSET
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/opus/celt/rate.h
      type_or_value: '21'
    - item_type: preproc_def
      name: QTHETA_OFFSET
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/opus/celt/rate.h
      type_or_value: '4'
    - item_type: preproc_def
      name: QTHETA_OFFSET_TWOPHASE
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/opus/celt/rate.h
      type_or_value: '16'
    structs: []
    typedefs: []
    union: []
- function_names:
  - MULT16_16SU
  - MULT16_32_Q16
  - MULT16_32_Q16
  - MULT16_32_P16
  - MULT16_32_P16
  - MULT16_32_Q15
  - MULT16_32_Q15
  - MULT32_32_Q16
  - MULT32_32_Q16
  - MULT32_32_Q31
  - MULT32_32_Q31
  - MULT32_32_P31
  - MULT32_32_P31_ovflw
  - MULT16_16U
  - MULT32_32_P31
  - MULT32_32_P31_ovflw
  - MULT32_32_Q32
  - MULT32_32_Q32
  - QCONST16
  - QCONST32
  - GCONST2
  - GCONST
  - NEG16
  - NEG32
  - EXTRACT16
  - EXTEND32
  - SHR16
  - SHL16
  - SHR32
  - SHL32
  - PSHR32
  - VSHR32
  - SHR64
  - SHR
  - SHL
  - PSHR
  - SATURATE
  - SATURATE16
  - ROUND16
  - SROUND16
  - HALF16
  - HALF32
  - ADD16
  - SUB16
  - ADD32
  - SUB32
  - ADD32_ovflw
  - SUB32_ovflw
  - NEG32_ovflw
  - SHL32_ovflw
  - PSHR32_ovflw
  - MULT16_16_16
  - MULT32_32_32
  - MULT16_16
  - MAC16_16
  - MAC16_32_Q15
  - MAC16_32_Q16
  - MULT16_16_Q11_32
  - MULT16_16_Q11
  - MULT16_16_Q13
  - MULT16_16_Q14
  - MULT16_16_Q15
  - MULT16_16_P13
  - MULT16_16_P14
  - MULT16_16_P15
  - DIV32_16
  - DIV32
  - SIG2WORD16_generic
  - SIG2WORD16
  source_file: /src/opus/celt/fixed_generic.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/celt/quant_bands.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - norm_scaleup
  - norm_scaledown
  - celt_inner_prod_norm
  - celt_inner_prod_norm_shift
  - exp_rotation1
  - exp_rotation
  - normalise_residual
  - extract_collapse_mask
  - op_pvq_search_c
  - op_pvq_search_N2
  - op_pvq_refine
  - op_pvq_search_extra
  - ec_enc_refine
  - ec_dec_refine
  - alg_quant
  - alg_unquant
  - renormalise_vector
  - stereo_itheta
  - cubic_synthesis
  - cubic_quant
  - cubic_unquant
  source_file: /src/opus/celt/vq.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - loss_distortion
  - quant_coarse_energy_impl
  - quant_coarse_energy
  - quant_fine_energy
  - quant_energy_finalise
  - unquant_coarse_energy
  - unquant_fine_energy
  - unquant_energy_finalise
  - amp2Log2
  source_file: /src/opus/celt/quant_bands.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - hysteresis_decision
  - celt_lcg_rand
  - bitexact_cos
  - bitexact_log2tan
  - compute_band_energies
  - normalise_bands
  - compute_band_energies
  - normalise_bands
  - denormalise_bands
  - anti_collapse
  - compute_channel_weights
  - intensity_stereo
  - spreading_decision
  - deinterleave_hadamard
  - interleave_hadamard
  - haar1
  - compute_qn
  - compute_theta
  - quant_band_n1
  - quant_partition
  - cubic_quant_partition
  - quant_band
  - quant_band_stereo
  - special_hybrid_folding
  - quant_all_bands
  source_file: /src/opus/celt/bands.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MIN_STEREO_ENERGY
      pos:
        line_end: 1381
        line_start: 1380
        source_file: /src/opus/celt/bands.c
      type_or_value: '2'
    - item_type: preproc_def
      name: MIN_STEREO_ENERGY
      pos:
        line_end: 1383
        line_start: 1382
        source_file: /src/opus/celt/bands.c
      type_or_value: 1e-10f
    structs:
    - fields:
      - name: encode
        type: int
      - name: resynth
        type: int
      - name: '*m'
        type: CELTMode
      - name: i
        type: int
      - name: intensity
        type: int
      - name: spread
        type: int
      - name: tf_change
        type: int
      - name: '*ec'
        type: ec_ctx
      - name: remaining_bits
        type: opus_int32
      - name: '*bandE'
        type: celt_ener
      - name: seed
        type: opus_uint32
      - name: arch
        type: int
      - name: theta_round
        type: int
      - name: disable_inv
        type: int
      - name: avoid_split_noise
        type: int
      item_type: struct
      name: band_ctx
      pos:
        line_end: 685
        line_start: 663
        source_file: /src/opus/celt/bands.c
    - fields:
      - name: inv
        type: int
      - name: imid
        type: int
      - name: iside
        type: int
      - name: delta
        type: int
      - name: itheta
        type: int
      - name: qalloc
        type: int
      item_type: struct
      name: split_ctx
      pos:
        line_end: 697
        line_start: 687
        source_file: /src/opus/celt/bands.c
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/celt/entdec.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: _entdec_H
      pos:
        line_end: 29
        line_start: 28
        source_file: /src/opus/celt/entdec.h
      type_or_value: (1)
    structs: []
    typedefs: []
    union: []
- function_names:
  - opus_alloc
  - opus_realloc
  - opus_alloc_scratch
  - opus_free
  - OPUS_COPY
  - OPUS_MOVE
  - OPUS_CLEAR
  source_file: /src/opus/celt/os_support.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/celt/static_modes_float_arm_ne10.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xcorr_kernel_c
  - xcorr_kernel
  - dual_inner_prod_c
  - dual_inner_prod
  - celt_inner_prod_c
  - celt_inner_prod
  - comb_filter_const
  source_file: /src/opus/celt/pitch.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: celt_pitch_xcorr
      pos:
        line_end: 189
        line_start: 188
        source_file: /src/opus/celt/pitch.h
      type_or_value: celt_pitch_xcorr_c
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/celt/entenc.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: _entenc_H
      pos:
        line_end: 29
        line_start: 28
        source_file: /src/opus/celt/entenc.h
      type_or_value: (1)
    structs: []
    typedefs: []
    union: []
- function_names:
  - EC_MINI
  - ec_bsr
  - EC_CLZ
  - EC_CLZ
  - EC_CLZ
  - EC_CLZ
  - EC_ILOG
  - EC_ILOG
  source_file: /src/opus/celt/ecintrin.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: _ecintrin_H
      pos:
        line_end: 34
        line_start: 33
        source_file: /src/opus/celt/ecintrin.h
      type_or_value: (1)
    - item_type: preproc_def
      name: EC_CLZ0
      pos:
        line_end: 65
        line_start: 64
        source_file: /src/opus/celt/ecintrin.h
      type_or_value: (1)
    - item_type: preproc_def
      name: EC_CLZ0
      pos:
        line_end: 69
        line_start: 68
        source_file: /src/opus/celt/ecintrin.h
      type_or_value: (31)
    - item_type: preproc_def
      name: EC_CLZ0
      pos:
        line_end: 73
        line_start: 72
        source_file: /src/opus/celt/ecintrin.h
      type_or_value: ((int)sizeof(unsigned)*CHAR_BIT)
    - item_type: preproc_def
      name: EC_CLZ0
      pos:
        line_end: 76
        line_start: 75
        source_file: /src/opus/celt/ecintrin.h
      type_or_value: ((int)sizeof(unsigned long)*CHAR_BIT)
    structs: []
    typedefs: []
    union: []
- function_names:
  - ec_laplace_get_freq1
  - ec_laplace_encode
  - ec_laplace_decode
  - ec_laplace_encode_p0
  - ec_laplace_decode_p0
  - main
  source_file: /src/opus/celt/laplace.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: LAPLACE_LOG_MINP
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/opus/celt/laplace.c
      type_or_value: (0)
    - item_type: preproc_def
      name: LAPLACE_MINP
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/opus/celt/laplace.c
      type_or_value: (1<<LAPLACE_LOG_MINP)
    - item_type: preproc_def
      name: LAPLACE_NMIN
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/opus/celt/laplace.c
      type_or_value: (16)
    - item_type: preproc_def
      name: NB_VALS
      pos:
        line_end: 197
        line_start: 196
        source_file: /src/opus/celt/laplace.c
      type_or_value: '10'
    - item_type: preproc_def
      name: DATA_SIZE
      pos:
        line_end: 198
        line_start: 197
        source_file: /src/opus/celt/laplace.c
      type_or_value: '10000'
    structs: []
    typedefs: []
    union: []
- function_names:
  - clt_mdct_forward
  - clt_mdct_backward
  - clt_mdct_forward
  - clt_mdct_backward
  source_file: /src/opus/celt/mdct.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: n
        type: int
      - name: maxshift
        type: int
      - name: '*kfft[4]'
        type: kiss_fft_state
      - name: '* OPUS_RESTRICT'
        type: kiss_twiddle_scalar
      item_type: struct
      name: mdct_lookup
      pos:
        line_end: 53
        line_start: 48
        source_file: /src/opus/celt/mdct.h
    typedefs: []
    union: []
- function_names:
  - ec_ilog
  - ec_tell_frac
  - ec_tell_frac
  source_file: /src/opus/celt/entcode.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - fits_in32
  - compute_pulse_cache
  - interp_bits2pulses
  - clt_compute_allocation
  - ec_enc_depth
  - ec_dec_depth
  - MSWAP16
  - median_of_5_val16
  - clt_compute_extra_allocation
  source_file: /src/opus/celt/rate.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: ALLOC_STEPS
      pos:
        line_end: 247
        line_start: 246
        source_file: /src/opus/celt/rate.c
      type_or_value: '6'
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/celt/static_modes_fixed_arm_ne10.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - _opus_ctl_failed
  - opus_ctl_failed
  - print_usage
  - int_to_char
  - char_to_int
  - check_encoder_option
  - check_decoder_option
  - main
  source_file: /src/opus/celt/opus_custom_demo.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAX_PACKET
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/opus/celt/opus_custom_demo.c
      type_or_value: QEXT_PACKET_SIZE_CAP
    - item_type: preproc_def
      name: MAX_PACKET
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/opus/celt/opus_custom_demo.c
      type_or_value: '1275'
    - item_type: preproc_def
      name: FORMAT_S16_LE
      pos:
        line_end: 93
        line_start: 92
        source_file: /src/opus/celt/opus_custom_demo.c
      type_or_value: '0'
    - item_type: preproc_def
      name: FORMAT_S24_LE
      pos:
        line_end: 94
        line_start: 93
        source_file: /src/opus/celt/opus_custom_demo.c
      type_or_value: '1'
    - item_type: preproc_def
      name: FORMAT_F32_LE
      pos:
        line_end: 95
        line_start: 94
        source_file: /src/opus/celt/opus_custom_demo.c
      type_or_value: '2'
    structs: []
    typedefs: []
    union:
    - fields:
      - name: i
        type: opus_int32
      - name: f
        type: float
      item_type: union
      name: float_bits
      pos:
        line_end: 101
        line_start: 98
        source_file: /src/opus/celt/opus_custom_demo.c
- function_names:
  - resampling_factor
  - comb_filter_const_c
  - comb_filter_const_c
  - comb_filter_qext
  - comb_filter
  - init_caps
  - opus_strerror
  - opus_get_version_string
  source_file: /src/opus/celt/celt.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: PACKAGE_VERSION
      pos:
        line_end: 54
        line_start: 53
        source_file: /src/opus/celt/celt.c
      type_or_value: '"unknown"'
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/celt/bands.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: SPREAD_NONE
      pos:
        line_end: 68
        line_start: 67
        source_file: /src/opus/celt/bands.h
      type_or_value: (0)
    - item_type: preproc_def
      name: SPREAD_LIGHT
      pos:
        line_end: 69
        line_start: 68
        source_file: /src/opus/celt/bands.h
      type_or_value: (1)
    - item_type: preproc_def
      name: SPREAD_NORMAL
      pos:
        line_end: 70
        line_start: 69
        source_file: /src/opus/celt/bands.h
      type_or_value: (2)
    - item_type: preproc_def
      name: SPREAD_AGGRESSIVE
      pos:
        line_end: 71
        line_start: 70
        source_file: /src/opus/celt/bands.h
      type_or_value: (3)
    structs: []
    typedefs: []
    union: []
- function_names:
  - op_pvq_search
  source_file: /src/opus/celt/vq.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: celt_inner_prod_norm
      pos:
        line_end: 52
        line_start: 51
        source_file: /src/opus/celt/vq.h
      type_or_value: celt_inner_prod
    - item_type: preproc_def
      name: celt_inner_prod_norm_shift
      pos:
        line_end: 53
        line_start: 52
        source_file: /src/opus/celt/vq.h
      type_or_value: celt_inner_prod
    structs: []
    typedefs: []
    union: []
- function_names:
  - MIN
  - MAX
  - S_MUL
  - S_MUL2
  - S_MUL
  - S_MUL2
  - C_MUL
  - C_MULC
  - C_MULBYSCALAR
  - DIVSCALAR
  - C_FIXDIV
  - C_ADD
  - C_SUB
  - C_ADDTO
  - C_SUBFROM
  - S_MUL
  - S_MUL2
  - C_MUL
  - C_MULC
  - C_MUL4
  - C_MULBYSCALAR
  - C_ADD
  - C_SUB
  - C_ADDTO
  - C_SUBFROM
  - KISS_FFT_COS
  - KISS_FFT_SIN
  - HALF_OF
  - KISS_FFT_COS
  - KISS_FFT_SIN
  - HALF_OF
  - KISS_FFT_COS
  - KISS_FFT_SIN
  - HALF_OF
  - kf_cexp
  - kf_cexp2
  source_file: /src/opus/celt/_kiss_fft_guts.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: SAMP_MAX
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/opus/celt/_kiss_fft_guts.h
      type_or_value: '2147483647'
    - item_type: preproc_def
      name: TWID_MAX
      pos:
        line_end: 52
        line_start: 51
        source_file: /src/opus/celt/_kiss_fft_guts.h
      type_or_value: '32767'
    - item_type: preproc_def
      name: TRIG_UPSCALE
      pos:
        line_end: 53
        line_start: 52
        source_file: /src/opus/celt/_kiss_fft_guts.h
      type_or_value: '1'
    - item_type: preproc_def
      name: SAMP_MIN
      pos:
        line_end: 55
        line_start: 54
        source_file: /src/opus/celt/_kiss_fft_guts.h
      type_or_value: -SAMP_MAX
    structs: []
    typedefs: []
    union: []
- function_names:
  - ec_read_byte
  - ec_read_byte_from_end
  - ec_dec_normalize
  - ec_dec_init
  - ec_decode
  - ec_decode_bin
  - ec_dec_update
  - ec_dec_bit_logp
  - ec_dec_icdf
  - ec_dec_icdf16
  - ec_dec_uint
  - ec_dec_bits
  source_file: /src/opus/celt/entdec.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - _celt_autocorr
  source_file: /src/opus/celt/celt_lpc.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - clt_mdct_init
  - clt_mdct_clear
  - clt_mdct_forward_c
  - opus_fft_impl
  - clt_mdct_backward_c
  source_file: /src/opus/celt/mdct.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: M_PI
      pos:
        line_end: 61
        line_start: 60
        source_file: /src/opus/celt/mdct.c
      type_or_value: '3.141592653'
    structs: []
    typedefs: []
    union: []
- function_names:
  - MULT16_16SU
  - MULT_16_16
  - celt_ilog2
  - MULT16_32_Q15
  - MAX16
  - MIN16
  - MAX32
  - MIN32
  - VSHR32
  - MULT16_16_Q15
  - celt_maxabs16
  source_file: /src/opus/celt/fixed_c6x.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - opus_select_arch
  source_file: /src/opus/celt/cpu_support.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: OPUS_ARCHMASK
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/opus/celt/cpu_support.h
      type_or_value: '7'
    - item_type: preproc_def
      name: OPUS_ARCHMASK
      pos:
        line_end: 61
        line_start: 60
        source_file: /src/opus/celt/cpu_support.h
      type_or_value: '7'
    - item_type: preproc_def
      name: OPUS_ARCHMASK
      pos:
        line_end: 65
        line_start: 64
        source_file: /src/opus/celt/cpu_support.h
      type_or_value: '0'
    structs: []
    typedefs: []
    union: []
- function_names:
  - celt_encoder_get_size
  - opus_custom_encoder_get_size
  - opus_custom_encoder_create
  - opus_custom_encoder_init_arch
  - opus_custom_encoder_init
  - celt_encoder_init
  - opus_custom_encoder_destroy
  - transient_analysis
  - patch_transient_decision
  - compute_mdcts
  - celt_preemphasis
  - l1_metric
  - tf_analysis
  - tf_encode
  - alloc_trim_analysis
  - stereo_analysis
  - MSWAP
  - median_of_5
  - median_of_3
  - dynalloc_analysis
  - normalize_tone_input
  - acos_approx
  - tone_lpc
  - tone_detect
  - run_prefilter
  - compute_vbr
  - encode_qext_stereo_params
  source_file: /src/opus/celt/celt_encoder.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: M_PI
      pos:
        line_end: 56
        line_start: 55
        source_file: /src/opus/celt/celt_encoder.c
      type_or_value: '3.141592653'
    - item_type: preproc_def
      name: ENCODER_RESET_START
      pos:
        line_end: 90
        line_start: 89
        source_file: /src/opus/celt/celt_encoder.c
      type_or_value: rng
    structs:
    - fields:
      - name: '*mode'
        type: OpusCustomMode
      - name: channels
        type: int
      - name: stream_channels
        type: int
      - name: force_intra
        type: int
      - name: clip
        type: int
      - name: disable_pf
        type: int
      - name: complexity
        type: int
      - name: upsample
        type: int
      - name: start
        type: int
      - name: bitrate
        type: opus_int32
      - name: vbr
        type: int
      - name: signalling
        type: int
      - name: constrained_vbr
        type: int
      - name: loss_rate
        type: int
      - name: lsb_depth
        type: int
      - name: lfe
        type: int
      - name: disable_inv
        type: int
      - name: arch
        type: int
      - name: rng
        type: opus_uint32
      - name: spread_decision
        type: int
      - name: delayedIntra
        type: opus_val32
      - name: tonal_average
        type: int
      - name: lastCodedBands
        type: int
      - name: hf_average
        type: int
      - name: tapset_decision
        type: int
      - name: prefilter_period
        type: int
      - name: prefilter_gain
        type: opus_val16
      - name: prefilter_tapset
        type: int
      - name: consec_transient
        type: int
      - name: analysis
        type: AnalysisInfo
      - name: silk_info
        type: SILKInfo
      - name: preemph_memE[2]
        type: opus_val32
      - name: preemph_memD[2]
        type: opus_val32
      - name: vbr_reservoir
        type: opus_int32
      - name: vbr_drift
        type: opus_int32
      - name: vbr_offset
        type: opus_int32
      - name: vbr_count
        type: opus_int32
      - name: overlap_max
        type: opus_val32
      - name: stereo_saving
        type: opus_val16
      - name: intensity
        type: int
      - name: '*energy_mask'
        type: celt_glog
      - name: spec_avg
        type: celt_glog
      - name: in_mem[1]
        type: celt_sig
      item_type: struct
      name: OpusCustomEncoder
      pos:
        line_end: 141
        line_start: 62
        source_file: /src/opus/celt/celt_encoder.c
    typedefs: []
    union: []
- function_names:
  - compute_ebands
  - compute_allocation_table
  - opus_custom_mode_destroy
  - compute_qext_mode
  source_file: /src/opus/celt/modes.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: BITALLOC_SIZE
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/opus/celt/modes.c
      type_or_value: '11'
    - item_type: preproc_def
      name: M_PI
      pos:
        line_end: 74
        line_start: 73
        source_file: /src/opus/celt/modes.c
      type_or_value: '3.1415926535897931'
    - item_type: preproc_def
      name: BARK_BANDS
      pos:
        line_end: 81
        line_start: 80
        source_file: /src/opus/celt/modes.c
      type_or_value: '25'
    structs: []
    typedefs: []
    union: []
- function_names:
  - float2int
  - float2int
  - opus_int32
  - float2int
  - float2int
  - float2int
  - float2int
  - FLOAT2INT16
  - FLOAT2INT24
  - FLOAT2SIG
  source_file: /src/opus/celt/float_cast.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: _ISOC9X_SOURCE
      pos:
        line_end: 118
        line_start: 117
        source_file: /src/opus/celt/float_cast.h
      type_or_value: '1'
    - item_type: preproc_def
      name: _ISOC99_SOURCE
      pos:
        line_end: 119
        line_start: 118
        source_file: /src/opus/celt/float_cast.h
      type_or_value: '1'
    - item_type: preproc_def
      name: __USE_ISOC9X
      pos:
        line_end: 121
        line_start: 120
        source_file: /src/opus/celt/float_cast.h
      type_or_value: '1'
    - item_type: preproc_def
      name: __USE_ISOC99
      pos:
        line_end: 122
        line_start: 121
        source_file: /src/opus/celt/float_cast.h
      type_or_value: '1'
    - item_type: preproc_def
      name: _ISOC9X_SOURCE
      pos:
        line_end: 129
        line_start: 128
        source_file: /src/opus/celt/float_cast.h
      type_or_value: '1'
    - item_type: preproc_def
      name: _ISOC99_SOURCE
      pos:
        line_end: 130
        line_start: 129
        source_file: /src/opus/celt/float_cast.h
      type_or_value: '1'
    - item_type: preproc_def
      name: __USE_ISOC9X
      pos:
        line_end: 132
        line_start: 131
        source_file: /src/opus/celt/float_cast.h
      type_or_value: '1'
    - item_type: preproc_def
      name: __USE_ISOC99
      pos:
        line_end: 133
        line_start: 132
        source_file: /src/opus/celt/float_cast.h
      type_or_value: '1'
    structs: []
    typedefs: []
    union: []
- function_names:
  - ec_write_byte
  - ec_write_byte_at_end
  - ec_enc_carry_out
  - ec_enc_normalize
  - ec_enc_init
  - ec_encode
  - ec_encode_bin
  - ec_enc_bit_logp
  - ec_enc_icdf
  - ec_enc_icdf16
  - ec_enc_uint
  - ec_enc_bits
  - ec_enc_patch_initial_bits
  - ec_enc_shrink
  - ec_enc_done
  source_file: /src/opus/celt/entenc.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - __GNUC_PREREQ
  - __GNUC_PREREQ
  - opus_likely
  - opus_unlikely
  - opus_likely
  - opus_unlikely
  - CELT_FATAL
  - celt_fatal
  - celt_assert
  - celt_assert2
  - MUST_SUCCEED
  - celt_assert
  - celt_assert2
  - MUST_SUCCEED
  - celt_sig_assert
  - celt_sig_assert
  - IMUL32
  - MIN16
  - MAX16
  - MIN32
  - MAX32
  - IMIN
  - IMAX
  - FMIN
  - FMAX
  - UADD32
  - USUB32
  - MAXG
  - MING
  - ARG_FIXED
  - SIG2RES
  - RES2INT16
  - RES2INT24
  - RES2FLOAT
  - INT16TORES
  - INT24TORES
  - ADD_RES
  - FLOAT2RES
  - RES2SIG
  - MULT16_RES_Q15
  - SIG2RES
  - RES2INT16
  - RES2INT24
  - RES2FLOAT
  - INT16TORES
  - INT24TORES
  - ADD_RES
  - FLOAT2RES
  - RES2SIG
  - MULT16_RES_Q15
  - RES2VAL16
  - INT16TOSIG
  - INT24TOSIG
  - MULT_COEF_32
  - MAC_COEF_32_ARM
  - MULT_COEF
  - MULT_COEF_TAPS
  - COEF2VAL16
  - MULT_COEF_32
  - MAC_COEF_32_ARM
  - MULT_COEF
  - MULT_COEF_TAPS
  - COEF2VAL16
  - celt_isnan
  - ABS16
  - ABS32
  - SAT16
  - celt_isnan
  - celt_isnan
  - COEF2VAL16
  - ABS16
  - ABS32
  - QCONST16
  - QCONST32
  - GCONST
  - NEG16
  - NEG32
  - NEG32_ovflw
  - EXTRACT16
  - EXTEND32
  - SHR16
  - SHL16
  - SHR32
  - SHL32
  - PSHR32
  - VSHR32
  - SHR64
  - PSHR
  - SHR
  - SHL
  - SATURATE
  - SATURATE16
  - ROUND16
  - SROUND16
  - HALF16
  - HALF32
  - ADD16
  - SUB16
  - ADD32
  - SUB32
  - ADD32_ovflw
  - SUB32_ovflw
  - SHL32_ovflw
  - PSHR32_ovflw
  - MULT16_16_16
  - MULT16_16
  - MAC16_16
  - MULT16_32_Q15
  - MULT16_32_Q16
  - MULT32_32_Q16
  - MULT32_32_Q31
  - MULT32_32_P31
  - MULT32_32_P31_ovflw
  - MAC16_32_Q15
  - MAC16_32_Q16
  - MAC_COEF_32_ARM
  - MULT16_16_Q11_32
  - MULT16_16_Q11
  - MULT16_16_Q13
  - MULT16_16_Q14
  - MULT16_16_Q15
  - MULT16_16_P15
  - MULT16_16_P13
  - MULT16_16_P14
  - MULT16_32_P16
  - MULT_COEF_32
  - MULT_COEF
  - MULT_COEF_TAPS
  - DIV32_16
  - DIV32
  - SIG2RES
  - RES2INT16
  - RES2INT24
  - RES2FLOAT
  - INT16TORES
  - INT24TORES
  - ADD_RES
  - FLOAT2RES
  - RES2SIG
  - MULT16_RES_Q15
  - RES2VAL16
  - FLOAT2SIG
  - INT16TOSIG
  - INT24TOSIG
  source_file: /src/opus/celt/arch.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: CELT_SIG_SCALE
      pos:
        line_end: 57
        line_start: 56
        source_file: /src/opus/celt/arch.h
      type_or_value: 32768.f
    - item_type: preproc_def
      name: OPUS_FAST_INT64
      pos:
        line_end: 125
        line_start: 124
        source_file: /src/opus/celt/arch.h
      type_or_value: '1'
    - item_type: preproc_def
      name: OPUS_FAST_INT64
      pos:
        line_end: 127
        line_start: 126
        source_file: /src/opus/celt/arch.h
      type_or_value: '0'
    - item_type: preproc_def
      name: RES_SHIFT
      pos:
        line_end: 151
        line_start: 150
        source_file: /src/opus/celt/arch.h
      type_or_value: '8'
    - item_type: preproc_def
      name: MAX_ENCODING_DEPTH
      pos:
        line_end: 162
        line_start: 161
        source_file: /src/opus/celt/arch.h
      type_or_value: '24'
    - item_type: preproc_def
      name: RES_SHIFT
      pos:
        line_end: 165
        line_start: 164
        source_file: /src/opus/celt/arch.h
      type_or_value: '0'
    - item_type: preproc_def
      name: MAX_ENCODING_DEPTH
      pos:
        line_end: 176
        line_start: 175
        source_file: /src/opus/celt/arch.h
      type_or_value: '16'
    - item_type: preproc_def
      name: NORM_SHIFT
      pos:
        line_end: 183
        line_start: 182
        source_file: /src/opus/celt/arch.h
      type_or_value: '24'
    - item_type: preproc_def
      name: COEF_ONE
      pos:
        line_end: 186
        line_start: 185
        source_file: /src/opus/celt/arch.h
      type_or_value: Q31ONE
    - item_type: preproc_def
      name: COEF_ONE
      pos:
        line_end: 194
        line_start: 193
        source_file: /src/opus/celt/arch.h
      type_or_value: Q15ONE
    - item_type: preproc_def
      name: Q15ONE
      pos:
        line_end: 204
        line_start: 203
        source_file: /src/opus/celt/arch.h
      type_or_value: '32767'
    - item_type: preproc_def
      name: Q31ONE
      pos:
        line_end: 205
        line_start: 204
        source_file: /src/opus/celt/arch.h
      type_or_value: '2147483647'
    - item_type: preproc_def
      name: SIG_SHIFT
      pos:
        line_end: 207
        line_start: 206
        source_file: /src/opus/celt/arch.h
      type_or_value: '12'
    - item_type: preproc_def
      name: SIG_SAT
      pos:
        line_end: 215
        line_start: 214
        source_file: /src/opus/celt/arch.h
      type_or_value: (536870911)
    - item_type: preproc_def
      name: NORM_SCALING
      pos:
        line_end: 217
        line_start: 216
        source_file: /src/opus/celt/arch.h
      type_or_value: (1<<NORM_SHIFT)
    - item_type: preproc_def
      name: DB_SHIFT
      pos:
        line_end: 219
        line_start: 218
        source_file: /src/opus/celt/arch.h
      type_or_value: '24'
    - item_type: preproc_def
      name: EPSILON
      pos:
        line_end: 221
        line_start: 220
        source_file: /src/opus/celt/arch.h
      type_or_value: '1'
    - item_type: preproc_def
      name: VERY_SMALL
      pos:
        line_end: 222
        line_start: 221
        source_file: /src/opus/celt/arch.h
      type_or_value: '0'
    - item_type: preproc_def
      name: VERY_LARGE16
      pos:
        line_end: 223
        line_start: 222
        source_file: /src/opus/celt/arch.h
      type_or_value: ((opus_val16)32767)
    - item_type: preproc_def
      name: Q15_ONE
      pos:
        line_end: 224
        line_start: 223
        source_file: /src/opus/celt/arch.h
      type_or_value: ((opus_val16)32767)
    - item_type: preproc_def
      name: Q15ONE
      pos:
        line_end: 286
        line_start: 285
        source_file: /src/opus/celt/arch.h
      type_or_value: 1.0f
    - item_type: preproc_def
      name: Q31ONE
      pos:
        line_end: 287
        line_start: 286
        source_file: /src/opus/celt/arch.h
      type_or_value: 1.0f
    - item_type: preproc_def
      name: COEF_ONE
      pos:
        line_end: 288
        line_start: 287
        source_file: /src/opus/celt/arch.h
      type_or_value: 1.0f
    - item_type: preproc_def
      name: NORM_SCALING
      pos:
        line_end: 291
        line_start: 290
        source_file: /src/opus/celt/arch.h
      type_or_value: 1.f
    - item_type: preproc_def
      name: EPSILON
      pos:
        line_end: 293
        line_start: 292
        source_file: /src/opus/celt/arch.h
      type_or_value: 1e-15f
    - item_type: preproc_def
      name: VERY_SMALL
      pos:
        line_end: 294
        line_start: 293
        source_file: /src/opus/celt/arch.h
      type_or_value: 1e-30f
    - item_type: preproc_def
      name: VERY_LARGE16
      pos:
        line_end: 295
        line_start: 294
        source_file: /src/opus/celt/arch.h
      type_or_value: 1e15f
    - item_type: preproc_def
      name: Q15_ONE
      pos:
        line_end: 296
        line_start: 295
        source_file: /src/opus/celt/arch.h
      type_or_value: ((opus_val16)1.f)
    - item_type: preproc_def
      name: MAX_ENCODING_DEPTH
      pos:
        line_end: 388
        line_start: 387
        source_file: /src/opus/celt/arch.h
      type_or_value: '24'
    - item_type: preproc_def
      name: GLOBAL_STACK_SIZE
      pos:
        line_end: 394
        line_start: 393
        source_file: /src/opus/celt/arch.h
      type_or_value: '120000'
    - item_type: preproc_def
      name: GLOBAL_STACK_SIZE
      pos:
        line_end: 396
        line_start: 395
        source_file: /src/opus/celt/arch.h
      type_or_value: '120000'
    structs: []
    typedefs:
    - item_type: typedef
      name: opus_val16
      pos:
        line_end: 139
        line_start: 139
        source_file: /src/opus/celt/arch.h
      type: opus_int16
    - item_type: typedef
      name: opus_val32
      pos:
        line_end: 140
        line_start: 140
        source_file: /src/opus/celt/arch.h
      type: opus_int32
    - item_type: typedef
      name: opus_val64
      pos:
        line_end: 141
        line_start: 141
        source_file: /src/opus/celt/arch.h
      type: opus_int64
    - item_type: typedef
      name: celt_sig
      pos:
        line_end: 143
        line_start: 143
        source_file: /src/opus/celt/arch.h
      type: opus_val32
    - item_type: typedef
      name: celt_norm
      pos:
        line_end: 144
        line_start: 144
        source_file: /src/opus/celt/arch.h
      type: opus_val32
    - item_type: typedef
      name: celt_ener
      pos:
        line_end: 145
        line_start: 145
        source_file: /src/opus/celt/arch.h
      type: opus_val32
    - item_type: typedef
      name: celt_glog
      pos:
        line_end: 146
        line_start: 146
        source_file: /src/opus/celt/arch.h
      type: opus_val32
    - item_type: typedef
      name: opus_res
      pos:
        line_end: 149
        line_start: 149
        source_file: /src/opus/celt/arch.h
      type: opus_val32
    - item_type: typedef
      name: opus_res
      pos:
        line_end: 163
        line_start: 163
        source_file: /src/opus/celt/arch.h
      type: opus_val16
    - item_type: typedef
      name: celt_coef
      pos:
        line_end: 184
        line_start: 184
        source_file: /src/opus/celt/arch.h
      type: opus_val32
    - item_type: typedef
      name: celt_coef
      pos:
        line_end: 192
        line_start: 192
        source_file: /src/opus/celt/arch.h
      type: opus_val16
    - item_type: typedef
      name: opus_val16
      pos:
        line_end: 257
        line_start: 257
        source_file: /src/opus/celt/arch.h
      type: float
    - item_type: typedef
      name: opus_val32
      pos:
        line_end: 258
        line_start: 258
        source_file: /src/opus/celt/arch.h
      type: float
    - item_type: typedef
      name: opus_val64
      pos:
        line_end: 259
        line_start: 259
        source_file: /src/opus/celt/arch.h
      type: float
    - item_type: typedef
      name: celt_sig
      pos:
        line_end: 261
        line_start: 261
        source_file: /src/opus/celt/arch.h
      type: float
    - item_type: typedef
      name: celt_norm
      pos:
        line_end: 262
        line_start: 262
        source_file: /src/opus/celt/arch.h
      type: float
    - item_type: typedef
      name: celt_ener
      pos:
        line_end: 263
        line_start: 263
        source_file: /src/opus/celt/arch.h
      type: float
    - item_type: typedef
      name: celt_glog
      pos:
        line_end: 264
        line_start: 264
        source_file: /src/opus/celt/arch.h
      type: float
    - item_type: typedef
      name: opus_res
      pos:
        line_end: 266
        line_start: 266
        source_file: /src/opus/celt/arch.h
      type: float
    - item_type: typedef
      name: celt_coef
      pos:
        line_end: 267
        line_start: 267
        source_file: /src/opus/celt/arch.h
      type: float
    union:
    - fields:
      - name: f
        type: float
      - name: i
        type: opus_uint32
      item_type: union
      name: in
      pos:
        line_end: 274
        line_start: 274
        source_file: /src/opus/celt/arch.h
- function_names:
  - celt_fir
  source_file: /src/opus/celt/celt_lpc.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: CELT_LPC_ORDER
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/opus/celt/celt_lpc.h
      type_or_value: '24'
    structs: []
    typedefs: []
    union: []
- function_names:
  - find_best_pitch
  - celt_fir5
  - compute_pitch_gain
  - compute_pitch_gain
  - remove_doubling
  source_file: /src/opus/celt/pitch.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - MULT16_16U
  - MULT16_16SU
  - MULT32_32_Q31
  - MULT32_32_P31
  - MULT32_32_P31_ovflw
  - MULT32_32_Q32
  - MULT16_32_Q16
  - MULT16_32_P16
  - QCONST16
  - QCONST32
  - GCONST2
  - GCONST
  - VERIFY_SHORT
  - VERIFY_INT
  - VERIFY_UINT
  - SHR
  - PSHR
  - ADD32_ovflw
  - SUB32_ovflw
  - NEG32_ovflw
  - SHL32_ovflw
  - PSHR32_ovflw
  - NEG16
  - NEG32
  - EXTRACT16
  - EXTRACT16_
  - EXTEND32
  - EXTEND32_
  - SHR16
  - SHR16_
  - SHL16
  - SHL16_
  - SHR32
  - SHL32
  - SHL32_
  - PSHR32
  - VSHR32
  - SHR64
  - ROUND16
  - SROUND16
  - HALF16
  - HALF32
  - ADD16
  - ADD16_
  - SUB16
  - SUB16_
  - ADD32
  - ADD32_
  - SUB32
  - SUB32_
  - UADD32
  - UADD32_
  - USUB32
  - USUB32_
  - MULT16_16_16
  - MULT32_32_32
  - MULT32_32_Q16
  - MULT16_16
  - MULT16_16_
  - MAC16_16
  - MULT16_32_QX
  - MULT16_32_QX_
  - MULT16_32_PX
  - MULT16_32_PX_
  - MULT16_32_Q15
  - MAC16_32_Q15
  - MAC16_32_Q16
  - SATURATE
  - SATURATE16
  - MULT16_16_Q11_32
  - MULT16_16_Q13
  - MULT16_16_Q14
  - MULT16_16_Q15
  - MULT16_16_Q15_
  - MULT16_16_P13
  - MULT16_16_P14
  - MULT16_16_P15
  - DIV32_16
  - DIV32_16_
  - DIV32
  - DIV32_
  - SIG2WORD16_generic
  - SIG2WORD16
  - PRINT_MIPS
  source_file: /src/opus/celt/fixed_debug.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - S_MUL
  - C_MUL
  - C_MULBYSCALAR
  - C_ADD
  - C_SUB
  - C_ADDTO
  - C_SUBFROM
  - MINI_KISS_FFT_COS
  - MINI_KISS_FFT_SIN
  - MINI_HALF_OF
  - mini_kf_cexp
  - kf_bfly2
  - kf_bfly4
  - kf_bfly3
  - kf_bfly5
  - kf_work
  - kf_factor
  - mini_kiss_fft_alloc
  - mini_kiss_fft_stride
  - mini_kiss_fft
  - mini_kiss_fftr_alloc
  - mini_kiss_fftr
  source_file: /src/opus/celt/mini_kfft.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: mini_kiss_fft_scalar
      pos:
        line_end: 16
        line_start: 15
        source_file: /src/opus/celt/mini_kfft.c
      type_or_value: float
    - item_type: preproc_def
      name: MINI_MAXFACTORS
      pos:
        line_end: 26
        line_start: 25
        source_file: /src/opus/celt/mini_kfft.c
      type_or_value: '32'
    structs:
    - fields:
      - name: r
        type: mini_kiss_fft_scalar
      - name: i
        type: mini_kiss_fft_scalar
      item_type: struct
      name: mini_kiss_fft_cpx
      pos:
        line_end: 20
        line_start: 17
        source_file: /src/opus/celt/mini_kfft.c
    - fields:
      - name: nfft
        type: int
      - name: inverse
        type: int
      - name: factors[2*MINI_MAXFACTORS]
        type: int
      - name: twiddles[1]
        type: mini_kiss_fft_cpx
      item_type: struct
      name: mini_kiss_fft_state
      pos:
        line_end: 36
        line_start: 31
        source_file: /src/opus/celt/mini_kfft.c
    - fields:
      - name: substate
        type: mini_kiss_fft_cfg
      - name: '* tmpbuf'
        type: mini_kiss_fft_cpx
      - name: '* super_twiddles'
        type: mini_kiss_fft_cpx
      item_type: struct
      name: mini_kiss_fftr_state
      pos:
        line_end: 406
        line_start: 402
        source_file: /src/opus/celt/mini_kfft.c
    typedefs:
    - item_type: typedef
      name: '* mini_kiss_fft_cfg'
      pos:
        line_end: 22
        line_start: 22
        source_file: /src/opus/celt/mini_kfft.c
      type: mini_kiss_fft_state
    - item_type: typedef
      name: '*mini_kiss_fftr_cfg'
      pos:
        line_end: 400
        line_start: 400
        source_file: /src/opus/celt/mini_kfft.c
      type: mini_kiss_fftr_state
    union: []
- function_names: []
  source_file: /src/opus/celt/modes.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAX_PERIOD
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/opus/celt/modes.h
      type_or_value: '1024'
    - item_type: preproc_def
      name: DEC_PITCH_BUF_SIZE
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/opus/celt/modes.h
      type_or_value: '2048'
    - item_type: preproc_def
      name: QEXT_PACKET_SIZE_CAP
      pos:
        line_end: 80
        line_start: 79
        source_file: /src/opus/celt/modes.h
      type_or_value: '3825'
    - item_type: preproc_def
      name: NB_QEXT_BANDS
      pos:
        line_end: 81
        line_start: 80
        source_file: /src/opus/celt/modes.h
      type_or_value: '14'
    structs:
    - fields:
      - name: size
        type: int
      - name: '*index'
        type: opus_int16
      - name: '*bits'
        type: unsigned char
      - name: '*caps'
        type: unsigned char
      item_type: struct
      name: PulseCache
      pos:
        line_end: 48
        line_start: 43
        source_file: /src/opus/celt/modes.h
    - fields:
      - name: Fs
        type: opus_int32
      - name: overlap
        type: int
      - name: nbEBands
        type: int
      - name: effEBands
        type: int
      - name: preemph[4]
        type: opus_val16
      - name: '*eBands'
        type: opus_int16
      - name: maxLM
        type: int
      - name: nbShortMdcts
        type: int
      - name: shortMdctSize
        type: int
      - name: nbAllocVectors
        type: int
      - name: '*allocVectors'
        type: unsigned char
      - name: '*logN'
        type: opus_int16
      - name: '*window'
        type: celt_coef
      - name: mdct
        type: mdct_lookup
      - name: cache
        type: PulseCache
      item_type: struct
      name: OpusCustomMode
      pos:
        line_end: 76
        line_start: 53
        source_file: /src/opus/celt/modes.h
    typedefs: []
    union: []
- function_names:
  - log2_frac
  - CELT_PVQ_U
  - CELT_PVQ_V
  - get_required_bits
  - icwrs
  - encode_pulses
  - cwrsi
  - decode_pulses
  - unext
  - uprev
  - ncwrs_urow
  - cwrsi
  - opus_uint32::icwrs1
  - opus_uint32::icwrs
  - get_required_bits
  - encode_pulses
  - decode_pulses
  source_file: /src/opus/celt/cwrs.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - KISS_FFT_MALLOC
  - opus_fft_alloc_arch
  - opus_fft_free_arch
  - opus_fft
  - opus_ifft
  - opus_fft_alloc_arch
  - opus_fft_free_arch
  - opus_fft
  - opus_ifft
  source_file: /src/opus/celt/kiss_fft.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: kiss_fft_scalar
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/opus/celt/kiss_fft.h
      type_or_value: __m128
    - item_type: preproc_def
      name: KISS_FFT_MALLOC
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/opus/celt/kiss_fft.h
      type_or_value: opus_alloc
    - item_type: preproc_def
      name: kiss_fft_scalar
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/opus/celt/kiss_fft.h
      type_or_value: opus_int32
    - item_type: preproc_def
      name: COEF_SHIFT
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/opus/celt/kiss_fft.h
      type_or_value: '32'
    - item_type: preproc_def
      name: COEF_SHIFT
      pos:
        line_end: 52
        line_start: 51
        source_file: /src/opus/celt/kiss_fft.h
      type_or_value: '16'
    - item_type: preproc_def
      name: kiss_twiddle_scalar
      pos:
        line_end: 55
        line_start: 54
        source_file: /src/opus/celt/kiss_fft.h
      type_or_value: celt_coef
    - item_type: preproc_def
      name: KISS_TWIDDLE_CPX_ALIGNMENT
      pos:
        line_end: 60
        line_start: 59
        source_file: /src/opus/celt/kiss_fft.h
      type_or_value: (sizeof(opus_int32))
    - item_type: preproc_def
      name: kiss_fft_scalar
      pos:
        line_end: 66
        line_start: 65
        source_file: /src/opus/celt/kiss_fft.h
      type_or_value: float
    - item_type: preproc_def
      name: kiss_twiddle_scalar
      pos:
        line_end: 67
        line_start: 66
        source_file: /src/opus/celt/kiss_fft.h
      type_or_value: float
    - item_type: preproc_def
      name: KF_SUFFIX
      pos:
        line_end: 68
        line_start: 67
        source_file: /src/opus/celt/kiss_fft.h
      type_or_value: _celt_single
    - item_type: preproc_def
      name: KISS_TWIDDLE_CPX_ALIGNED
      pos:
        line_end: 73
        line_start: 72
        source_file: /src/opus/celt/kiss_fft.h
      type_or_value: __attribute__((aligned(KISS_TWIDDLE_CPX_ALIGNMENT)))
    - item_type: preproc_def
      name: MAXFACTORS
      pos:
        line_end: 88
        line_start: 87
        source_file: /src/opus/celt/kiss_fft.h
      type_or_value: '8'
    structs:
    - fields:
      - name: r
        type: kiss_fft_scalar
      - name: i
        type: kiss_fft_scalar
      item_type: struct
      name: kiss_fft_cpx
      pos:
        line_end: 80
        line_start: 77
        source_file: /src/opus/celt/kiss_fft.h
    - fields:
      - name: r
        type: kiss_twiddle_scalar
      - name: i
        type: kiss_twiddle_scalar
      item_type: struct
      name: KISS_TWIDDLE_CPX_ALIGNED
      pos:
        line_end: 85
        line_start: 82
        source_file: /src/opus/celt/kiss_fft.h
    - fields:
      - name: is_supported
        type: int
      - name: '*priv'
        type: void
      item_type: struct
      name: arch_fft_state
      pos:
        line_end: 96
        line_start: 93
        source_file: /src/opus/celt/kiss_fft.h
    - fields:
      - name: nfft
        type: int
      - name: scale
        type: celt_coef
      - name: shift
        type: int
      - name: factors[2*MAXFACTORS]
        type: opus_int16
      - name: '*bitrev'
        type: opus_int16
      - name: '*twiddles'
        type: kiss_twiddle_cpx
      - name: '*arch_fft'
        type: arch_fft_state
      item_type: struct
      name: kiss_fft_state
      pos:
        line_end: 109
        line_start: 98
        source_file: /src/opus/celt/kiss_fft.h
    typedefs: []
    union: []
- function_names:
  - IMUL32
  - MAX16
  - MIN16
  - MAX32
  - MIN32
  - VSHR32
  - MULT16_16_Q15
  - MULT16_16SU
  - MULT_16_16
  - MULT16_32_Q15
  - celt_ilog2
  - celt_maxabs16
  source_file: /src/opus/celt/fixed_c5x.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - ALLOC
  - VARDECL
  - ALLOC
  - ALLOC
  - ALIGNOF
  - ALIGNOF
  - ALIGNOF
  - ALIGNOF
  - ALIGN
  - PUSH
  - ALIGN
  - PUSH
  - PUSH
  - VARDECL
  - ALLOC
  - OPUS_CHECK_ARRAY
  - OPUS_CHECK_VALUE
  - OPUS_CHECK_ARRAY_COND
  - OPUS_CHECK_VALUE_COND
  - OPUS_PRINT_INT
  - _opus_false
  - OPUS_CHECK_ARRAY
  - OPUS_CHECK_VALUE
  - OPUS_PRINT_INT
  source_file: /src/opus/celt/stack_alloc.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: ALLOC_NONE
      pos:
        line_end: 99
        line_start: 98
        source_file: /src/opus/celt/stack_alloc.h
      type_or_value: '1'
    - item_type: preproc_def
      name: ALLOC_NONE
      pos:
        line_end: 114
        line_start: 113
        source_file: /src/opus/celt/stack_alloc.h
      type_or_value: '0'
    - item_type: preproc_def
      name: RESTORE_STACK
      pos:
        line_end: 157
        line_start: 156
        source_file: /src/opus/celt/stack_alloc.h
      type_or_value: ((global_stack = _saved_stack),VALGRIND_MAKE_MEM_NOACCESS(global_stack,
        global_stack_top-global_stack))
    - item_type: preproc_def
      name: ALLOC_STACK
      pos:
        line_end: 158
        line_start: 157
        source_file: /src/opus/celt/stack_alloc.h
      type_or_value: 'char *_saved_stack; ((global_stack = (global_stack==0) ? ((global_stack_top=(char*)opus_alloc_scratch(GLOBAL_STACK_SIZE*2)+(GLOBAL_STACK_SIZE*2))-(GLOBAL_STACK_SIZE*2))
        : global_stack),VALGRIND_MAKE_MEM_NOACCESS(global_stack, global_stack_top-global_stack));
        _saved_stack = global_stack;'
    - item_type: preproc_def
      name: RESTORE_STACK
      pos:
        line_end: 171
        line_start: 170
        source_file: /src/opus/celt/stack_alloc.h
      type_or_value: (printf("%ld %s:%d\n", global_stack-scratch_ptr, __FILE__, __LINE__),global_stack
        = _saved_stack)
    - item_type: preproc_def
      name: RESTORE_STACK
      pos:
        line_end: 173
        line_start: 172
        source_file: /src/opus/celt/stack_alloc.h
      type_or_value: (global_stack = _saved_stack)
    - item_type: preproc_def
      name: ALLOC_STACK
      pos:
        line_end: 175
        line_start: 174
        source_file: /src/opus/celt/stack_alloc.h
      type_or_value: 'char *_saved_stack; (global_stack = (global_stack==0) ? (scratch_ptr=(char*)opus_alloc_scratch(GLOBAL_STACK_SIZE))
        : global_stack); _saved_stack = global_stack;'
    - item_type: preproc_def
      name: SAVE_STACK
      pos:
        line_end: 182
        line_start: 181
        source_file: /src/opus/celt/stack_alloc.h
      type_or_value: char *_saved_stack = global_stack;
    - item_type: preproc_def
      name: ALLOC_NONE
      pos:
        line_end: 183
        line_start: 182
        source_file: /src/opus/celt/stack_alloc.h
      type_or_value: '0'
    - item_type: preproc_def
      name: OPUS_FPRINTF
      pos:
        line_end: 196
        line_start: 195
        source_file: /src/opus/celt/stack_alloc.h
      type_or_value: fprintf
    - item_type: preproc_def
      name: OPUS_FPRINTF
      pos:
        line_end: 204
        line_start: 203
        source_file: /src/opus/celt/stack_alloc.h
      type_or_value: (void)
    structs:
    - fields:
      - name: c
        type: char
      - name: member
        type: T
      item_type: struct
      name: alignment_helper
      pos:
        line_end: 137
        line_start: 134
        source_file: /src/opus/celt/stack_alloc.h
    typedefs: []
    union: []
- function_names:
  - ec_laplace_get_start_freq
  - main
  source_file: /src/opus/celt/tests/test_unit_laplace.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: DATA_SIZE
      pos:
        line_end: 43
        line_start: 42
        source_file: /src/opus/celt/tests/test_unit_laplace.c
      type_or_value: '40000'
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  source_file: /src/opus/celt/tests/test_unit_cwrs32.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: NMAX
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/opus/celt/tests/test_unit_cwrs32.c
      type_or_value: (240)
    - item_type: preproc_def
      name: KMAX
      pos:
        line_end: 52
        line_start: 51
        source_file: /src/opus/celt/tests/test_unit_cwrs32.c
      type_or_value: (128)
    - item_type: preproc_def
      name: NDIMS
      pos:
        line_end: 56
        line_start: 55
        source_file: /src/opus/celt/tests/test_unit_cwrs32.c
      type_or_value: (44)
    - item_type: preproc_def
      name: NDIMS
      pos:
        line_end: 74
        line_start: 73
        source_file: /src/opus/celt/tests/test_unit_cwrs32.c
      type_or_value: (22)
    structs: []
    typedefs: []
    union: []
- function_names:
  - check
  - test1d
  - main
  source_file: /src/opus/celt/tests/test_unit_mini_kfft.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: M_PI
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/opus/celt/tests/test_unit_mini_kfft.c
      type_or_value: '3.141592653'
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  source_file: /src/opus/celt/tests/test_unit_types.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - FIX_INT_TO_DOUBLE
  - DOUBLE_TO_FIX_INT
  - testdiv
  - testsqrt
  - testbitexactcos
  - testbitexactlog2tan
  - testlog2
  - testexp2
  - testexp2log2
  - test_cos
  - test_atan2
  - testlog2_db
  - testlog2
  - testexp2
  - testexp2_db
  - testexp2log2
  - testilog2
  - testrsqrt
  - testsqrt32
  - testatan_norm
  - testatan2p_norm
  - testatan
  - test_cos_norm32
  - test_cos
  - test_rcp_norm32
  - testcelt_float2int16
  - testopus_limit2_checkwithin1
  - main
  source_file: /src/opus/celt/tests/test_unit_mathops.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: WORD
      pos:
        line_end: 47
        line_start: 46
        source_file: /src/opus/celt/tests/test_unit_mathops.c
      type_or_value: '"%d"'
    - item_type: preproc_def
      name: WORD
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/opus/celt/tests/test_unit_mathops.c
      type_or_value: '"%f"'
    - item_type: preproc_def
      name: ATAN2_2_OVER_PI
      pos:
        line_end: 481
        line_start: 480
        source_file: /src/opus/celt/tests/test_unit_mathops.c
      type_or_value: 0.636619772367581f
    - item_type: preproc_def
      name: ATAN2_2_OVER_PI
      pos:
        line_end: 515
        line_start: 514
        source_file: /src/opus/celt/tests/test_unit_mathops.c
      type_or_value: 0.636619772367581f
    - item_type: preproc_def
      name: MAX_BUFFER_SIZE
      pos:
        line_end: 631
        line_start: 630
        source_file: /src/opus/celt/tests/test_unit_mathops.c
      type_or_value: '2080'
    - item_type: preproc_def
      name: BUFFER_SIZE
      pos:
        line_end: 708
        line_start: 707
        source_file: /src/opus/celt/tests/test_unit_mathops.c
      type_or_value: '37 '
    - item_type: preproc_def
      name: BYTE_COUNT
      pos:
        line_end: 709
        line_start: 708
        source_file: /src/opus/celt/tests/test_unit_mathops.c
      type_or_value: (BUFFER_SIZE * sizeof(float))
    structs: []
    typedefs: []
    union: []
- function_names:
  - check
  - check_inv
  - test1d
  - main
  source_file: /src/opus/celt/tests/test_unit_mdct.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: M_PI
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/opus/celt/tests/test_unit_mdct.c
      type_or_value: '3.141592653'
    structs: []
    typedefs: []
    union: []
- function_names:
  - test_rotation
  - main
  source_file: /src/opus/celt/tests/test_unit_rotation.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MAX_SIZE
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/opus/celt/tests/test_unit_rotation.c
      type_or_value: '100'
    structs: []
    typedefs: []
    union: []
- function_names:
  - check
  - test1d
  - main
  source_file: /src/opus/celt/tests/test_unit_dft.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: M_PI
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/opus/celt/tests/test_unit_dft.c
      type_or_value: '3.141592653'
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  source_file: /src/opus/celt/tests/test_unit_entropy.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: M_LOG2E
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/opus/celt/tests/test_unit_entropy.c
      type_or_value: '1.4426950408889634074'
    - item_type: preproc_def
      name: DATA_SIZE
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/opus/celt/tests/test_unit_entropy.c
      type_or_value: '10000000'
    - item_type: preproc_def
      name: DATA_SIZE2
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/opus/celt/tests/test_unit_entropy.c
      type_or_value: '10000'
    structs: []
    typedefs: []
    union: []
- function_names:
  - op_pvq_search
  - op_pvq_search
  source_file: /src/opus/celt/x86/vq_sse.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/celt/x86/x86_arch_macros.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xcorr_kernel_sse
  - dual_inner_prod_sse
  - celt_inner_prod_sse
  - comb_filter_const_sse
  source_file: /src/opus/celt/x86/pitch_sse.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - celt_inner_prod_sse2
  source_file: /src/opus/celt/x86/pitch_sse2.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/celt/x86/celt_lpc_sse4_1.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xcorr_kernel_avx
  - celt_pitch_xcorr_avx2
  source_file: /src/opus/celt/x86/pitch_avx.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - celt_fir
  - celt_fir
  source_file: /src/opus/celt/x86/celt_lpc_sse.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/celt/x86/x86_celt_map.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - MAY_HAVE_SSE
  - MAY_HAVE_SSE
  - MAY_HAVE_SSE2
  - MAY_HAVE_SSE2
  - MAY_HAVE_SSE4_1
  - MAY_HAVE_SSE4_1
  - MAY_HAVE_AVX2
  - MAY_HAVE_AVX2
  - WORKAROUND_mm_loadu_si32
  - OP_CVTEPI8_EPI32_M32
  - OP_CVTEPI16_EPI32_M64
  source_file: /src/opus/celt/x86/x86cpu.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: OPUS_CLANG_8
      pos:
        line_end: 83
        line_start: 82
        source_file: /src/opus/celt/x86/x86cpu.h
      type_or_value: (1)
    - item_type: preproc_def
      name: _mm_loadu_si32
      pos:
        line_end: 93
        line_start: 92
        source_file: /src/opus/celt/x86/x86cpu.h
      type_or_value: WORKAROUND_mm_loadu_si32
    structs: []
    typedefs: []
    union: []
- function_names:
  - celt_inner_prod_sse4_1
  - xcorr_kernel_sse4_1
  source_file: /src/opus/celt/x86/pitch_sse4_1.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - op_pvq_search_sse2
  source_file: /src/opus/celt/x86/vq_sse2.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - xcorr_kernel
  - xcorr_kernel
  - xcorr_kernel
  - celt_inner_prod
  - celt_inner_prod
  - celt_inner_prod
  - celt_inner_prod
  - dual_inner_prod
  - comb_filter_const
  - dual_inner_prod
  - comb_filter_const
  - celt_pitch_xcorr
  source_file: /src/opus/celt/x86/pitch_sse.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: celt_pitch_xcorr
      pos:
        line_end: 194
        line_start: 193
        source_file: /src/opus/celt/x86/pitch_sse.h
      type_or_value: celt_pitch_xcorr_avx2
    structs: []
    typedefs: []
    union: []
- function_names:
  - cpuid
  - cpuid
  - opus_cpu_feature_check
  - opus_select_arch_impl
  - opus_select_arch
  source_file: /src/opus/celt/x86/x86cpu.c
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: HW_SSE
        type: int
      - name: HW_SSE2
        type: int
      - name: HW_SSE41
        type: int
      - name: HW_AVX2
        type: int
      item_type: struct
      name: CPU_Feature
      pos:
        line_end: 108
        line_start: 101
        source_file: /src/opus/celt/x86/x86cpu.c
    typedefs: []
    union: []
- function_names:
  - MIPS_MAC
  - MIPS_MAC16x16_2X
  - celt_inner_prod
  - dual_inner_prod
  - xcorr_kernel_mips
  - xcorr_kernel
  source_file: /src/opus/celt/mips/pitch_mipsr1.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: accumulator_t
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/opus/celt/mips/pitch_mipsr1.h
      type_or_value: opus_int64
    - item_type: preproc_def
      name: accumulator_t
      pos:
        line_end: 55
        line_start: 54
        source_file: /src/opus/celt/mips/pitch_mipsr1.h
      type_or_value: opus_int32
    - item_type: preproc_def
      name: MIPS_MAC
      pos:
        line_end: 56
        line_start: 55
        source_file: /src/opus/celt/mips/pitch_mipsr1.h
      type_or_value: MAC16_16
    structs: []
    typedefs: []
    union: []
- function_names:
  - MULT16_32_Q16
  - MULT16_32_P16
  - MULT16_32_Q15
  - MULT32_32_Q31
  - PSHR32
  - MULT16_16_P15
  - celt_maxabs16
  - MULT16_32_Q16
  source_file: /src/opus/celt/mips/fixed_generic_mipsr1.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs:
    - item_type: typedef
      name: v2i16
      pos:
        line_end: 37
        line_start: 37
        source_file: /src/opus/celt/mips/fixed_generic_mipsr1.h
      type: short
    - item_type: typedef
      name: v2i8
      pos:
        line_end: 38
        line_start: 38
        source_file: /src/opus/celt/mips/fixed_generic_mipsr1.h
      type: char
    union: []
- function_names:
  - MIPS_MULT
  - MIPS_MADD
  - MIPS_EXTR
  - comb_filter
  source_file: /src/opus/celt/mips/celt_mipsr1.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MIPS_MULT
      pos:
        line_end: 68
        line_start: 67
        source_file: /src/opus/celt/mips/celt_mipsr1.h
      type_or_value: __builtin_mips_mult
    - item_type: preproc_def
      name: MIPS_MADD
      pos:
        line_end: 69
        line_start: 68
        source_file: /src/opus/celt/mips/celt_mipsr1.h
      type_or_value: __builtin_mips_madd
    - item_type: preproc_def
      name: MIPS_EXTR
      pos:
        line_end: 70
        line_start: 69
        source_file: /src/opus/celt/mips/celt_mipsr1.h
      type_or_value: __builtin_mips_extr_w
    structs: []
    typedefs: []
    union: []
- function_names:
  - S_MUL_ADD
  - S_MUL_SUB
  - C_MUL
  - C_MUL_fun
  - C_MULC
  - C_MULC_fun
  - S_MUL_ADD
  - S_MUL_SUB
  - C_MUL
  - C_MUL_fun
  - C_MULC
  - C_MULC_fun
  - kf_bfly5
  - fft_downshift
  source_file: /src/opus/celt/mips/kiss_fft_mipsr1.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - S_MUL_ADD_PSR
  - S_MUL_SUB_PSR
  - S_MUL_ADD_PSR
  - S_MUL_SUB_PSR
  - clt_mdct_forward
  - opus_fft_impl
  - clt_mdct_backward
  source_file: /src/opus/celt/mips/mdct_mipsr1.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/celt/dump_modes/dump_modes_arch.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: ARM_NE10_ARCH_FILE_NAME
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/opus/celt/dump_modes/dump_modes_arch.h
      type_or_value: '"static_modes_float_arm_ne10.h"'
    - item_type: preproc_def
      name: ARM_NE10_ARCH_FILE_NAME
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/opus/celt/dump_modes/dump_modes_arch.h
      type_or_value: '"static_modes_fixed_arm_ne10.h"'
    - item_type: preproc_def
      name: OVERRIDE_FFT
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/opus/celt/dump_modes/dump_modes_arch.h
      type_or_value: (1)
    structs: []
    typedefs: []
    union: []
- function_names:
  - dump_modes_arch_init
  - dump_modes_arch_finalize
  - dump_mode_arch
  source_file: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: NE10_FFT_CFG_TYPE_T
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c
      type_or_value: ne10_fft_cfg_float32_t
    - item_type: preproc_def
      name: NE10_FFT_CPX_TYPE_T_STR
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c
      type_or_value: '"ne10_fft_cpx_float32_t"'
    - item_type: preproc_def
      name: NE10_FFT_STATE_TYPE_T_STR
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c
      type_or_value: '"ne10_fft_state_float32_t"'
    - item_type: preproc_def
      name: NE10_FFT_CFG_TYPE_T
      pos:
        line_end: 43
        line_start: 42
        source_file: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c
      type_or_value: ne10_fft_cfg_int32_t
    - item_type: preproc_def
      name: NE10_FFT_CPX_TYPE_T_STR
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c
      type_or_value: '"ne10_fft_cpx_int32_t"'
    - item_type: preproc_def
      name: NE10_FFT_STATE_TYPE_T_STR
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/opus/celt/dump_modes/dump_modes_arm_ne10.c
      type_or_value: '"ne10_fft_state_int32_t"'
    structs: []
    typedefs: []
    union: []
- function_names:
  - COEF16
  - opus_select_arch
  - dump_modes
  - dump_header
  - main
  source_file: /src/opus/celt/dump_modes/dump_modes.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: INT16
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/opus/celt/dump_modes/dump_modes.c
      type_or_value: '"%d"'
    - item_type: preproc_def
      name: INT32
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/opus/celt/dump_modes/dump_modes.c
      type_or_value: '"%d"'
    - item_type: preproc_def
      name: FLOAT
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/opus/celt/dump_modes/dump_modes.c
      type_or_value: '"%#0.8gf"'
    - item_type: preproc_def
      name: WORD16
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/opus/celt/dump_modes/dump_modes.c
      type_or_value: INT16
    - item_type: preproc_def
      name: WORD32
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/opus/celt/dump_modes/dump_modes.c
      type_or_value: INT32
    - item_type: preproc_def
      name: WORD16
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/opus/celt/dump_modes/dump_modes.c
      type_or_value: FLOAT
    - item_type: preproc_def
      name: WORD32
      pos:
        line_end: 49
        line_start: 48
        source_file: /src/opus/celt/dump_modes/dump_modes.c
      type_or_value: FLOAT
    - item_type: preproc_def
      name: BASENAME
      pos:
        line_end: 388
        line_start: 387
        source_file: /src/opus/celt/dump_modes/dump_modes.c
      type_or_value: '"static_modes_fixed"'
    - item_type: preproc_def
      name: BASENAME
      pos:
        line_end: 390
        line_start: 389
        source_file: /src/opus/celt/dump_modes/dump_modes.c
      type_or_value: '"static_modes_float"'
    structs: []
    typedefs: []
    union: []
- function_names:
  - vroundf
  - vminvf
  - vmaxvf
  - celt_float2int16
  - celt_float2int16
  - opus_limit2_checkwithin1
  - opus_limit2_checkwithin1
  source_file: /src/opus/celt/arm/mathops_arm.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: OVERRIDE_FLOAT2INT16
      pos:
        line_end: 79
        line_start: 78
        source_file: /src/opus/celt/arm/mathops_arm.h
      type_or_value: (1)
    - item_type: preproc_def
      name: OVERRIDE_FLOAT2INT16
      pos:
        line_end: 84
        line_start: 83
        source_file: /src/opus/celt/arm/mathops_arm.h
      type_or_value: (1)
    - item_type: preproc_def
      name: OVERRIDE_LIMIT2_CHECKWITHIN1
      pos:
        line_end: 93
        line_start: 92
        source_file: /src/opus/celt/arm/mathops_arm.h
      type_or_value: (1)
    - item_type: preproc_def
      name: OVERRIDE_LIMIT2_CHECKWITHIN1
      pos:
        line_end: 98
        line_start: 97
        source_file: /src/opus/celt/arm/mathops_arm.h
      type_or_value: (1)
    structs: []
    typedefs: []
    union: []
- function_names:
  - MULT16_32_Q16_armv4
  - MULT16_32_Q16
  - MULT16_32_Q15_armv4
  - MULT16_32_Q15
  - MAC16_32_Q15
  - MAC16_32_Q16
  - MULT32_32_Q31
  source_file: /src/opus/celt/arm/fixed_armv4.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - MULT16_32_Q16_armv5e
  - MULT16_32_Q16
  - MULT16_32_Q15_armv5e
  - MULT16_32_Q15
  - MAC16_32_Q15_armv5e
  - MAC16_32_Q15
  - MAC16_32_Q16_armv5e
  - MAC16_32_Q16
  - MAC16_16_armv5e
  - MAC16_16
  - MULT16_16_armv5e
  - MULT16_16
  - SIG2WORD16_armv6
  - SIG2WORD16
  source_file: /src/opus/celt/arm/fixed_armv5e.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/opus/celt/arm/arm_celt_map.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - MAY_HAVE_EDSP
  - MAY_HAVE_EDSP
  - MAY_HAVE_MEDIA
  - MAY_HAVE_MEDIA
  - MAY_HAVE_NEON
  - MAY_HAVE_NEON
  - MAY_HAVE_DOTPROD
  - MAY_HAVE_DOTPROD
  - PRESUME_EDSP
  - PRESUME_EDSP
  - PRESUME_MEDIA
  - PRESUME_MEDIA
  - PRESUME_NEON
  - PRESUME_NEON
  - PRESUME_DOTPROD
  - PRESUME_DOTPROD
  source_file: /src/opus/celt/arm/armcpu.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: OPUS_ARCH_ARM_V4
      pos:
        line_end: 82
        line_start: 81
        source_file: /src/opus/celt/arm/armcpu.h
      type_or_value: (0)
    - item_type: preproc_def
      name: OPUS_ARCH_ARM_EDSP
      pos:
        line_end: 83
        line_start: 82
        source_file: /src/opus/celt/arm/armcpu.h
      type_or_value: (1)
    - item_type: preproc_def
      name: OPUS_ARCH_ARM_MEDIA
      pos:
        line_end: 84
        line_start: 83
        source_file: /src/opus/celt/arm/armcpu.h
      type_or_value: (2)
    - item_type: preproc_def
      name: OPUS_ARCH_ARM_NEON
      pos:
        line_end: 85
        line_start: 84
        source_file: /src/opus/celt/arm/armcpu.h
      type_or_value: (3)
    - item_type: preproc_def
      name: OPUS_ARCH_ARM_DOTPROD
      pos:
        line_end: 86
        line_start: 85
        source_file: /src/opus/celt/arm/armcpu.h
      type_or_value: (4)
    structs: []
    typedefs: []
    union: []
- function_names:
  - celt_inner_prod_neon
  - dual_inner_prod_neon
  - vmlaq_f32
  - celt_inner_prod_neon_float_c_simulation
  - dual_inner_prod_neon_float_c_simulation
  - celt_inner_prod_neon
  - dual_inner_prod_neon
  source_file: /src/opus/celt/arm/pitch_neon_intr.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - clt_mdct_forward_neon
  - clt_mdct_backward_neon
  source_file: /src/opus/celt/arm/celt_mdct_ne10.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - C_MUL
  - C_MUL4
  - C_MULC
  source_file: /src/opus/celt/arm/kiss_fft_armv5e.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: LDRD_CONS
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/opus/celt/arm/kiss_fft_armv5e.h
      type_or_value: '"Q"'
    - item_type: preproc_def
      name: LDRD_CONS
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/opus/celt/arm/kiss_fft_armv5e.h
      type_or_value: '"Uq"'
    structs: []
    typedefs: []
    union: []
- function_names:
  - NE10_FFT_ALLOC_C2C_TYPE_NEON
  - opus_fft_alloc_arm_neon
  - opus_fft_free_arm_neon
  - opus_fft_neon
  - opus_ifft_neon
  source_file: /src/opus/celt/arm/celt_fft_ne10.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: NE10_FFT_ALLOC_C2C_TYPE_NEON
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/opus/celt/arm/celt_fft_ne10.c
      type_or_value: ne10_fft_alloc_c2c_float32_neon
    - item_type: preproc_def
      name: NE10_FFT_CFG_TYPE_T
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/opus/celt/arm/celt_fft_ne10.c
      type_or_value: ne10_fft_cfg_float32_t
    - item_type: preproc_def
      name: NE10_FFT_STATE_TYPE_T
      pos:
        line_end: 47
        line_start: 46
        source_file: /src/opus/celt/arm/celt_fft_ne10.c
      type_or_value: ne10_fft_state_float32_t
    - item_type: preproc_def
      name: NE10_FFT_DESTROY_C2C_TYPE
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/opus/celt/arm/celt_fft_ne10.c
      type_or_value: ne10_fft_destroy_c2c_float32
    - item_type: preproc_def
      name: NE10_FFT_CPX_TYPE_T
      pos:
        line_end: 49
        line_start: 48
        source_file: /src/opus/celt/arm/celt_fft_ne10.c
      type_or_value: ne10_fft_cpx_float32_t
    - item_type: preproc_def
      name: NE10_FFT_C2C_1D_TYPE_NEON
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/opus/celt/arm/celt_fft_ne10.c
      type_or_value: ne10_fft_c2c_1d_float32_neon
    - item_type: preproc_def
      name: NE10_FFT_CFG_TYPE_T
      pos:
        line_end: 53
        line_start: 52
        source_file: /src/opus/celt/arm/celt_fft_ne10.c
      type_or_value: ne10_fft_cfg_int32_t
    - item_type: preproc_def
      name: NE10_FFT_STATE_TYPE_T
      pos:
        line_end: 54
        line_start: 53
        source_file: /src/opus/celt/arm/celt_fft_ne10.c
      type_or_value: ne10_fft_state_int32_t
    - item_type: preproc_def
      name: NE10_FFT_DESTROY_C2C_TYPE
      pos:
        line_end: 55
        line_start: 54
        source_file: /src/opus/celt/arm/celt_fft_ne10.c
      type_or_value: ne10_fft_destroy_c2c_int32
    - item_type: preproc_def
      name: NE10_FFT_DESTROY_C2C_TYPE
      pos:
        line_end: 56
        line_start: 55
        source_file: /src/opus/celt/arm/celt_fft_ne10.c
      type_or_value: ne10_fft_destroy_c2c_int32
    - item_type: preproc_def
      name: NE10_FFT_CPX_TYPE_T
      pos:
        line_end: 57
        line_start: 56
        source_file: /src/opus/celt/arm/celt_fft_ne10.c
      type_or_value: ne10_fft_cpx_int32_t
    - item_type: preproc_def
      name: NE10_FFT_C2C_1D_TYPE_NEON
      pos:
        line_end: 58
        line_start: 57
        source_file: /src/opus/celt/arm/celt_fft_ne10.c
      type_or_value: ne10_fft_c2c_1d_int32_neon
    - item_type: preproc_def
      name: NE10_FFTSCALED_SUPPORT_MAX
      pos:
        line_end: 64
        line_start: 63
        source_file: /src/opus/celt/arm/celt_fft_ne10.c
      type_or_value: '4'
    structs: []
    typedefs: []
    union: []
- function_names:
  - opus_fft_alloc_arch
  - opus_fft_free_arch
  - opus_fft
  - opus_ifft
  source_file: /src/opus/celt/arm/fft_arm.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: OVERRIDE_OPUS_FFT
      pos:
        line_end: 53
        line_start: 52
        source_file: /src/opus/celt/arm/fft_arm.h
      type_or_value: (1)
    structs: []
    typedefs: []
    union: []
- function_names:
  - celt_inner_prod
  - dual_inner_prod
  - celt_inner_prod
  - celt_inner_prod
  - dual_inner_prod
  - dual_inner_prod
  - celt_pitch_xcorr
  - xcorr_kernel
  - xcorr_kernel
  - celt_pitch_xcorr
  source_file: /src/opus/celt/arm/pitch_arm.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: OVERRIDE_CELT_INNER_PROD
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/opus/celt/arm/pitch_arm.h
      type_or_value: (1)
    - item_type: preproc_def
      name: OVERRIDE_DUAL_INNER_PROD
      pos:
        line_end: 40
        line_start: 39
        source_file: /src/opus/celt/arm/pitch_arm.h
      type_or_value: (1)
    - item_type: preproc_def
      name: OVERRIDE_CELT_INNER_PROD
      pos:
        line_end: 49
        line_start: 48
        source_file: /src/opus/celt/arm/pitch_arm.h
      type_or_value: (1)
    - item_type: preproc_def
      name: OVERRIDE_CELT_INNER_PROD
      pos:
        line_end: 52
        line_start: 51
        source_file: /src/opus/celt/arm/pitch_arm.h
      type_or_value: (1)
    - item_type: preproc_def
      name: OVERRIDE_DUAL_INNER_PROD
      pos:
        line_end: 61
        line_start: 60
        source_file: /src/opus/celt/arm/pitch_arm.h
      type_or_value: (1)
    - item_type: preproc_def
      name: OVERRIDE_DUAL_INNER_PROD
      pos:
        line_end: 64
        line_start: 63
        source_file: /src/opus/celt/arm/pitch_arm.h
      type_or_value: (1)
    - item_type: preproc_def
      name: celt_pitch_xcorr_media
      pos:
        line_end: 77
        line_start: 76
        source_file: /src/opus/celt/arm/pitch_arm.h
      type_or_value: MAY_HAVE_EDSP(celt_pitch_xcorr)
    - item_type: preproc_def
      name: OVERRIDE_PITCH_XCORR
      pos:
        line_end: 92
        line_start: 91
        source_file: /src/opus/celt/arm/pitch_arm.h
      type_or_value: (1)
    - item_type: preproc_def
      name: OVERRIDE_PITCH_XCORR
      pos:
        line_end: 100
        line_start: 99
        source_file: /src/opus/celt/arm/pitch_arm.h
      type_or_value: (1)
    - item_type: preproc_def
      name: celt_pitch_xcorr
      pos:
        line_end: 101
        line_start: 100
        source_file: /src/opus/celt/arm/pitch_arm.h
      type_or_value: (PRESUME_NEON(celt_pitch_xcorr))
    - item_type: preproc_def
      name: OVERRIDE_XCORR_KERNEL
      pos:
        line_end: 122
        line_start: 121
        source_file: /src/opus/celt/arm/pitch_arm.h
      type_or_value: (1)
    - item_type: preproc_def
      name: OVERRIDE_XCORR_KERNEL
      pos:
        line_end: 127
        line_start: 126
        source_file: /src/opus/celt/arm/pitch_arm.h
      type_or_value: (1)
    - item_type: preproc_def
      name: OVERRIDE_PITCH_XCORR
      pos:
        line_end: 146
        line_start: 145
        source_file: /src/opus/celt/arm/pitch_arm.h
      type_or_value: (1)
    - item_type: preproc_def
      name: OVERRIDE_PITCH_XCORR
      pos:
        line_end: 153
        line_start: 152
        source_file: /src/opus/celt/arm/pitch_arm.h
      type_or_value: (1)
    - item_type: preproc_def
      name: celt_pitch_xcorr
      pos:
        line_end: 154
        line_start: 153
        source_file: /src/opus/celt/arm/pitch_arm.h
      type_or_value: celt_pitch_xcorr_float_neon
    structs: []
    typedefs: []
    union: []
- function_names:
  - clt_mdct_forward
  - clt_mdct_backward
  source_file: /src/opus/celt/arm/mdct_arm.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: OVERRIDE_OPUS_MDCT
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/opus/celt/arm/mdct_arm.h
      type_or_value: (1)
    structs: []
    typedefs: []
    union: []
- function_names:
  - SIG2WORD16
  source_file: /src/opus/celt/arm/fixed_arm64.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - celt_float2int16_neon
  - opus_limit2_checkwithin1_neon
  - xcorr_kernel_neon_fixed
  - vmlaq_lane_f32
  - xcorr_kernel_neon_float
  - celt_pitch_xcorr_float_neon
  source_file: /src/opus/celt/arm/celt_neon_intr.c
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - opus_uint32::opus_cpu_capabilities
  - opus_cpu_capabilities
  - opus_cpu_capabilities
  - opus_cpu_capabilities
  - opus_cpu_capabilities
  - opus_select_arch_impl
  - opus_select_arch
  source_file: /src/opus/celt/arm/armcpu.c
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: OPUS_CPU_ARM_V4_FLAG
      pos:
        line_end: 42
        line_start: 41
        source_file: /src/opus/celt/arm/armcpu.c
      type_or_value: (1<<OPUS_ARCH_ARM_V4)
    - item_type: preproc_def
      name: OPUS_CPU_ARM_EDSP_FLAG
      pos:
        line_end: 43
        line_start: 42
        source_file: /src/opus/celt/arm/armcpu.c
      type_or_value: (1<<OPUS_ARCH_ARM_EDSP)
    - item_type: preproc_def
      name: OPUS_CPU_ARM_MEDIA_FLAG
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/opus/celt/arm/armcpu.c
      type_or_value: (1<<OPUS_ARCH_ARM_MEDIA)
    - item_type: preproc_def
      name: OPUS_CPU_ARM_NEON_FLAG
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/opus/celt/arm/armcpu.c
      type_or_value: (1<<OPUS_ARCH_ARM_NEON)
    - item_type: preproc_def
      name: OPUS_CPU_ARM_DOTPROD_FLAG
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/opus/celt/arm/armcpu.c
      type_or_value: (1<<OPUS_ARCH_ARM_DOTPROD)
    structs: []
    typedefs: []
    union: []
- function_names:
  - C_MUL
  - C_MUL4
  - C_MULC
  source_file: /src/opus/celt/arm/kiss_fft_armv4.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
