{"name": "ff_h264_idct8_add_mmx", "code": "__int64 __fastcall ff_h264_idct8_add_mmx ( __m64 * @@a1@@ , _WORD * @@a2@@ , int @@a3@@ ) { __m64 v3 ; __m64 v4 ; __m64 v5 ; __m64 v6 ; __m64 v7 ; __m64 v8 ; __m64 v9 ; __m64 v10 ; __m64 * v11 ; __m64 v12 ; __m64 v13 ; __m64 v14 ; __m64 v15 ; __m64 v16 ; __m64 v17 ; __m64 v18 ; __m64 v19 ; __m64 v20 ; __m64 v21 ; __m64 v22 ; __m64 v23 ; __m64 v24 ; __m64 * v25 ; __m64 @@v28@@ ; __m64 @@v29@@ [ Number ] ; int @@i@@ ; * @@a2@@ += Number ; for ( @@i@@ = Number ; @@i@@ <= Number ; ++ @@i@@ ) { h264_idct8_1d ( ( __int64 ) & @@a2@@ [ Number * @@i@@ ] ) ; v11 = & @@v29@@ [ Number * @@i@@ ] ; @@v28@@ = v10 ; v12 = v3 ; v13 = _m_punpcklwd ( v3 , v5 ) ; v14 = _m_punpckhwd ( v12 , v5 ) ; v15 = v7 ; v16 = _m_punpcklwd ( v7 , v9 ) ; v5 = _m_punpckhwd ( v15 , v9 ) ; v17 = v13 ; v18 = _m_punpckldq ( v13 , v16 ) ; v9 = _m_punpckhdq ( v17 , v16 ) ; v7 = _m_punpckhdq ( v14 , v5 ) ; v11 [ Number ] . m64_u64 = ( unsigned __int64 ) v18 ; v11 [ Number ] . m64_u64 = ( unsigned __int64 ) v9 ; v11 [ Number ] . m64_u64 = ( unsigned __int64 ) _m_punpckldq ( v14 , v5 ) ; v11 [ Number ] . m64_u64 = ( unsigned __int64 ) v7 ; v19 = _m_punpcklwd ( @@v28@@ , v8 ) ; v20 = _m_punpckhwd ( @@v28@@ , v8 ) ; v21 = v6 ; v22 = _m_punpcklwd ( v6 , v4 ) ; v8 = _m_punpckhwd ( v21 , v4 ) ; v23 = v19 ; v10 = _m_punpckldq ( v19 , v22 ) ; v4 = _m_punpckhdq ( v23 , v22 ) ; v24 = v20 ; v3 = _m_punpckldq ( v20 , v8 ) ; v6 = _m_punpckhdq ( v24 , v8 ) ; v11 -> m64_u64 = ( unsigned __int64 ) v10 ; v11 [ Number ] . m64_u64 = ( unsigned __int64 ) v4 ; v11 [ Number ] . m64_u64 = ( unsigned __int64 ) v3 ; v11 [ Number ] . m64_u64 = ( unsigned __int64 ) v6 ; } for ( @@i@@ = Number ; @@i@@ <= Number ; ++ @@i@@ ) { h264_idct8_1d ( ( __int64 ) & @@v29@@ [ @@i@@ ] ) ; v25 = & @@v29@@ [ @@i@@ ] ; v10 = _m_psrawi ( v10 , Number ) ; v9 = _m_psrawi ( v9 , Number ) ; v8 = _m_psrawi ( v8 , Number ) ; v7 = _m_psrawi ( v7 , Number ) ; v6 = _m_psrawi ( v6 , Number ) ; v5 = _m_psrawi ( v5 , Number ) ; v4 = _m_psrawi ( v4 , Number ) ; v3 = _m_psrawi ( v3 , Number ) ; v25 -> m64_u64 = ( unsigned __int64 ) v10 ; v25 [ Number ] . m64_u64 = ( unsigned __int64 ) v8 ; v25 [ Number ] . m64_u64 = ( unsigned __int64 ) v6 ; v25 [ Number ] . m64_u64 = ( unsigned __int64 ) v4 ; v25 [ Number ] . m64_u64 = ( unsigned __int64 ) v3 ; v25 [ Number ] . m64_u64 = ( unsigned __int64 ) v5 ; v25 [ Number ] . m64_u64 = ( unsigned __int64 ) v7 ; v25 [ Number ] . m64_u64 = ( unsigned __int64 ) v9 ; } return add_pixels_clamped_mmx ( @@v29@@ , @@a1@@ , @@a3@@ ) ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "int", "s": 4}, "location": "r16"}, {"n": "a1", "t": {"T": 3, "t": "__m64"}, "location": "r56"}, {"n": "a2", "t": {"T": 3, "t": "_WORD"}, "location": "r64"}, {"n": "v29", "t": {"T": 2, "n": 17, "s": 8, "t": "__m64"}, "location": "s144"}, {"n": "v28", "t": {"T": 8}, "location": "s152"}, {"n": "i", "t": {"T": 1, "n": "int", "s": 4}, "location": "s4"}]}
{"name": "add_pixels_clamped_mmx", "code": "__int64 __fastcall add_pixels_clamped_mmx ( __m64 * @@a1@@ , __m64 * @@a2@@ , int @@a3@@ ) { __m64 * v3 ; __m64 @@v4@@ ; __int64 result ; int @@v6@@ ; @@v6@@ = Number ; do { v3 = ( __m64 * ) ( ( char * ) @@a2@@ + @@a3@@ ) ; @@v4@@ = _m_packuswb ( _m_paddsw ( @@a1@@ [ Number ] , _m_punpcklbw ( ( __m64 ) v3 -> m64_u64 , Number L ) ) , _m_paddsw ( @@a1@@ [ Number ] , _m_punpckhbw ( ( __m64 ) v3 -> m64_u64 , Number L ) ) ) ; @@a2@@ -> m64_u64 = ( unsigned __int64 ) _m_packuswb ( _m_paddsw ( ( __m64 ) @@a1@@ -> m64_u64 , _m_punpcklbw ( ( __m64 ) @@a2@@ -> m64_u64 , Number L ) ) , _m_paddsw ( @@a1@@ [ Number ] , _m_punpckhbw ( ( __m64 ) @@a2@@ -> m64_u64 , Number L ) ) ) ; v3 -> m64_u64 = ( unsigned __int64 ) @@v4@@ ; result = Number * @@a3@@ ; @@a2@@ = ( __m64 * ) ( ( char * ) @@a2@@ + result ) ; @@a1@@ += Number ; -- @@v6@@ ; } while ( @@v6@@ ) ; return result ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "int", "s": 4}, "location": "r16"}, {"n": "v4", "t": {"T": 8}, "location": "r440"}, {"n": "a1", "t": {"T": 3, "t": "__m64"}, "location": "r56"}, {"n": "a2", "t": {"T": 3, "t": "__m64"}, "location": "r64"}, {"n": "v6", "t": {"T": 1, "n": "int", "s": 4}, "location": "s20"}]} {"name": "h264_idct8_1d", "code": "__int64 __fastcall h264_idct8_1d ( __int64 @@a1@@ ) { return @@a1@@ ; }", "source": [{"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}]} {"name": "ff_h264_idct8_add4_mmx", "code": "__int64 __fastcall ff_h264_idct8_add4_mmx ( __int64 @@a1@@ , __int64 @@a2@@ , __int64 @@a3@@ , int @@a4@@ , __int64 @@a5@@ ) { __int64 @@result@@ ; int @@i@@ ; for ( @@i@@ = Number ; @@i@@ <= Number ; @@i@@ += Number ) { @@result@@ = * ( unsigned __int8 * ) ( ( unsigned __int8 ) scan8 [ @@i@@ ] + @@a5@@ ) ; if ( ( _BYTE ) @@result@@ ) @@result@@ = ff_h264_idct8_add_mmx ( ( __m64 * ) ( * ( int * ) ( Number L * @@i@@ + @@a2@@ ) + @@a1@@ ) , ( _WORD * ) ( Number L * @@i@@ + @@a3@@ ) , @@a4@@ ) ; } return @@result@@ ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r16"}, {"n": "a4", "t": {"T": 1, "n": "int", "s": 4}, "location": "r24"}, {"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "a5", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r72"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}, {"n": "i", "t": {"T": 1, "n": "int", "s": 4}, "location": "s4"}]} {"name": "ff_h264_idct8_add4_mmx2", "code": "__int64 __fastcall ff_h264_idct8_add4_mmx2 ( __int64 @@a1@@ , __int64 @@a2@@ , __int64 @@a3@@ , int @@a4@@ , __int64 @@a5@@ ) { __int64 v5 ; __int64 @@result@@ ; int @@i@@ ; for ( @@i@@ = Number ; @@i@@ <= Number ; @@i@@ += Number ) { v5 = ( unsigned __int8 ) scan8 [ @@i@@ ] ; @@result@@ = * ( unsigned __int8 * ) ( v5 + @@a5@@ ) ; if ( * ( _BYTE * ) ( v5 + @@a5@@ ) ) { if ( * ( _BYTE * ) ( v5 + @@a5@@ ) == Number && * ( _WORD * ) ( Number L * @@i@@ + @@a3@@ ) ) @@result@@ = ff_h264_idct8_dc_add_mmx2 ( ( __m64 * ) ( * ( int * ) ( Number L * @@i@@ + @@a2@@ ) + @@a1@@ ) , ( __int16 * ) ( Number L * @@i@@ + @@a3@@ ) , @@a4@@ ) ; else @@result@@ = ff_h264_idct8_add_mmx ( ( __m64 * ) ( * ( int * ) ( Number L * @@i@@ + @@a2@@ ) + @@a1@@ ) , ( _WORD * ) ( Number L * @@i@@ + @@a3@@ ) , @@a4@@ ) ; } } return @@result@@ ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r16"}, {"n": "a4", "t": {"T": 1, "n": "int", "s": 4}, "location": "r24"}, {"n": "a1", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "a5", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r72"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}, {"n": "i", "t": {"T": 1, "n": "int", "s": 4}, "location": "s4"}]} {"name": "ff_h264dsp_init_x86", "code": "__int64 ( __fastcall * * __fastcall ff_h264dsp_init_x86 ( __int64 ( __fastcall * * @@a1@@ ) ( __int64 @@a1@@ , int a2 , unsigned int a3 , unsigned int a4 , int a5 ) ) ) ( __int64 @@a1@@ , int a2 , unsigned int a3 , unsigned int a4 , int a5 ) { __int64 ( __fastcall * * @@result@@ ) ( __int64 , int , unsigned int , unsigned int , int ) ; mm_flags = mm_support ( ) ; @@result@@ = ( __int64 ( __fastcall * * ) ( __int64 , int , unsigned int , unsigned int , int ) ) ( mm_flags & Number ) ; if ( ( mm_flags & Number ) != Number ) { @@a1@@ [ Number ] = ( __int64 ( __fastcall * ) ( __int64 , int , unsigned int , unsigned int , int ) ) ff_h264_idct_add_mmx ; @@a1@@ [ Number ] = @@a1@@ [ Number ] ; @@a1@@ [ Number ] = ( __int64 ( __fastcall * ) ( __int64 , int , unsigned int , unsigned int , int ) ) ff_h264_idct8_add_mmx ; @@a1@@ [ Number ] = @@a1@@ [ Number ] ; @@a1@@ [ Number ] = ( __int64 ( __fastcall * ) ( __int64 , int , unsigned int , unsigned int , int ) ) ff_h264_idct_add16_mmx ; @@a1@@ [ Number ] = ( __int64 ( __fastcall * ) ( __int64 , int , unsigned int , unsigned int , int ) ) ff_h264_idct8_add4_mmx ; @@a1@@ [ Number ] = ( __int64 ( __fastcall * ) ( __int64 , int , unsigned int , unsigned int , int ) ) ff_h264_idct_add8_mmx ; @@a1@@ [ Number ] = ( __int64 ( __fastcall * ) ( __int64 , int , unsigned int , unsigned int , int ) ) ff_h264_idct_add16intra_mmx ; if ( ( mm_flags & Number ) != Number ) { @@a1@@ [ Number ] = ( __int64 ( __fastcall * ) ( __int64 , int , unsigned int , unsigned int , int ) ) ff_h264_idct_dc_add_mmx2 ; @@a1@@ [ Number ] = ( __int64 ( __fastcall * ) ( __int64 , int , unsigned int , unsigned int , int ) ) ff_h264_idct8_dc_add_mmx2 ; @@a1@@ [ Number ] = ( __int64 ( __fastcall * ) ( __int64 , int , unsigned int , unsigned int , int ) ) ff_h264_idct_add16_mmx2 ; @@a1@@ [ Number ] = ( __int64 ( __fastcall * ) ( __int64 , int , unsigned int , unsigned int , int ) ) ff_h264_idct8_add4_mmx2 ; @@a1@@ [ Number ] = ( __int64 ( __fastcall * ) ( __int64 , int , unsigned int , unsigned int , int ) ) ff_h264_idct_add8_mmx2 ; @@a1@@ [ Number ] = ( __int64 ( __fastcall * ) ( __int64 , int , unsigned int , unsigned int , int ) ) ff_h264_idct_add16intra_mmx2 ; @@a1@@ [ Number ] = ( __int64 ( __fastcall * ) ( __int64 , int , unsigned int , unsigned int , int ) ) h264_v_loop_filter_luma_mmx2 ; @@a1@@ [ Number ] = ( __int64 ( __fastcall * ) ( __int64 , int , unsigned int , unsigned int , int ) ) h264_h_loop_filter_luma_mmx2 ; @@a1@@ [ Number ] = ( __int64 ( __fastcall * ) ( __int64 , int , unsigned int , unsigned int , int ) ) h264_v_loop_filter_chroma_mmx2 ; @@a1@@ [ Number ] = ( __int64 ( __fastcall * ) ( __int64 , int , unsigned int , unsigned int , int ) ) h264_h_loop_filter_chroma_mmx2 ; @@a1@@ [ Number ] = ( __int64 ( __fastcall * ) ( __int64 , int , unsigned int , unsigned int , int ) ) h264_v_loop_filter_chroma_intra_mmx2 ; @@a1@@ [ Number ] = ( __int64 ( __fastcall * ) ( __int64 , int , unsigned int , unsigned int , int ) ) h264_h_loop_filter_chroma_intra_mmx2 ; @@a1@@ [ Number ] = ( __int64 ( __fastcall * ) ( __int64 , int , unsigned int , unsigned int , int ) ) h264_loop_filter_strength_mmx2 ; * @@a1@@ = ff_h264_weight_16x16_mmx2 ; @@a1@@ [ Number ] = ff_h264_weight_16x8_mmx2 ; @@a1@@ [ Number ] = ff_h264_weight_8x16_mmx2 ; @@a1@@ [ Number ] = ff_h264_weight_8x8_mmx2 ; @@a1@@ [ Number ] = ff_h264_weight_8x4_mmx2 ; @@a1@@ [ Number ] = ff_h264_weight_4x8_mmx2 ; @@a1@@ [ Number ] = ff_h264_weight_4x4_mmx2 ; @@a1@@ [ Number ] = ff_h264_weight_4x2_mmx2 ; @@a1@@ [ Number ] = ( __int64 ( __fastcall * ) ( __int64 , int , unsigned int , unsigned int , int ) ) ff_h264_biweight_16x16_mmx2 ; @@a1@@ [ Number ] = ( __int64 ( __fastcall * ) ( __int64 , int , unsigned int , unsigned int , int ) ) ff_h264_biweight_16x8_mmx2 ; @@a1@@ [ Number ] = ( __int64 ( __fastcall * ) ( __int64 , int , unsigned int , unsigned int , int ) ) ff_h264_biweight_8x16_mmx2 ; @@a1@@ [ Number ] = ( __int64 ( __fastcall * ) ( __int64 , int , unsigned int , unsigned int , int ) ) ff_h264_biweight_8x8_mmx2 ; @@a1@@ [ Number ] = ( __int64 ( __fastcall * ) ( __int64 , int , unsigned int , unsigned int , int ) ) ff_h264_biweight_8x4_mmx2 ; @@a1@@ [ Number ] = ( __int64 ( __fastcall * ) ( __int64 , int , unsigned int , unsigned int , int ) ) ff_h264_biweight_4x8_mmx2 ; @@a1@@ [ Number ] = ( __int64 ( __fastcall * ) ( __int64 , int , unsigned int , unsigned int , int ) ) ff_h264_biweight_4x4_mmx2 ; @@a1@@ [ Number ] = ( __int64 ( __fastcall * ) ( __int64 , int , unsigned int , unsigned int , int ) ) ff_h264_biweight_4x2_mmx2 ; } @@result@@ = ( __int64 ( __fastcall * * ) ( __int64 , int , unsigned int , unsigned int , int ) ) ( mm_flags & Number ) ; if ( ( mm_flags & Number ) != Number ) { @@a1@@ [ Number ] = ( __int64 ( __fastcall * ) ( __int64 , int , unsigned int , unsigned int , int ) ) ff_h264_idct8_add_sse2 ; @@result@@ = @@a1@@ ; @@a1@@ [ Number ] = ( __int64 ( __fastcall * ) ( __int64 , int , unsigned int , unsigned int , int ) ) ff_h264_idct8_add4_sse2 ; } } return @@result@@ ; }", "source": [{"n": "a1", "t": {"T": 9, "n": "__int64 (__fastcall **)(__int64 a1, int a2, unsigned int a3, unsigned int a4, int a5)"}, "location": "r56"}, {"n": "result", "t": {"T": 9, "n": "__int64 (__fastcall **)(__int64 a1, int a2, unsigned int a3, unsigned int a4, int a5)"}, "location": "r8"}]}