{"name": "h264_loop_filter_strength_mmx2", "code": "__m64 * __fastcall h264_loop_filter_strength_mmx2 ( __m64 * @@a1@@ , __int64 @@a2@@ , __int64 @@a3@@ , __int64 @@a4@@ , int @@a5@@ , int @@a6@@ , int @@a7@@ , int @@a8@@ , int @@a9@@ , int @@a10@@ ) { __m64 v10 ; __m64 @@v11@@ ; __m64 @@v12@@ ; __int64 v13 ; __int64 v15 ; __m64 v16 ; __m64 * v17 ; __m64 * v18 ; __int64 v19 ; __m64 v20 ; __m64 v21 ; __m64 v22 ; __m64 v23 ; __m64 v24 ; __m64 * result ; __m64 v26 ; __m64 @@v27@@ ; __m64 v28 ; __m64 @@v29@@ ; __m64 v30 ; __m64 v31 ; __m64 v32 ; __m64 @@v36@@ ; int @@v37@@ ; __int64 @@v38@@ ; int @@v39@@ ; int @@v40@@ ; int @@i@@ ; @@v11@@ = ( __m64 ) ff_pb_3 ; if ( @@a10@@ ) @@v11@@ = ( __m64 ) ff_pb_3_1 ; @@v12@@ = _m_paddb ( @@v11@@ , @@v11@@ ) ; for ( @@i@@ = Number ; @@i@@ >= Number ; -- @@i@@ ) { if ( @@i@@ ) v13 = Number ; else v13 = Number ; @@v38@@ = v13 ; if ( ! @@i@@ ) @@a9@@ = @@a8@@ ; @@v37@@ = @@a9@@ ; if ( @@i@@ ) v15 = Number L ; else v15 = Number ; @@v36@@ = ( __m64 ) v15 ; @@v40@@ = Number ; @@v39@@ = Number ; while ( @@v39@@ < @@a6@@ ) { v16 = _m_pand ( v10 , @@v36@@ ) ; if ( ( @@v39@@ & @@v37@@ ) == Number ) { if ( @@a5@@ ) { v17 = ( __m64 * ) ( @@a3@@ + @@v40@@ ) ; v19 = @@v38@@ ; v20 = _m_punpckldq ( _mm_cvtsi32_si64 ( * ( unsigned __int32 * ) ( ( char * ) v17 -> m64_u32 + @@v38@@ ) ) , ( __m64 ) * ( unsigned int * ) ( ( char * ) & v17 [ Number ] + @@v38@@ ) ) ; v21 = _m_psubb ( _m_pshufw ( ( __m64 ) v17 -> m64_u64 , Number ) , v20 ) ; v22 = _m_psubb ( _m_pshufw ( v17 [ Number ] , Number ) , _m_pshufw ( v20 , Number ) ) ; do { v21 = _m_por ( v21 , v22 ) ; v18 = ( __m64 * ) ( @@a4@@ + Number L * @@v40@@ ) ; v22 = _m_packsswb ( _m_psubusb ( _m_paddb ( _m_packsswb ( _m_psubw ( * ( __m64 * ) ( ( char * ) v18 + Number * v19 ) , ( __m64 ) v18 -> m64_u64 ) , _m_psubw ( * ( __m64 * ) ( ( char * ) v18 + Number * v19 + Number ) , v18 [ Number ] ) ) , @@v11@@ ) , @@v12@@ ) , _m_psubusb ( _m_paddb ( _m_packsswb ( _m_psubw ( * ( __m64 * ) ( ( char * ) v18 + Number * v19 ) , v18 [ Number ] ) , _m_psubw ( * ( __m64 * ) ( ( char * ) v18 + Number * v19 + Number ) , v18 [ Number ] ) ) , @@v11@@ ) , @@v12@@ ) ) ; v19 += Number L ; } while ( v19 < Number ) ; v23 = _m_por ( v21 , _m_pshufw ( v22 , Number ) ) ; v16 = _m_pminub ( v23 , _m_pshufw ( v23 , Number ) ) ; } else { v24 = _m_psubusb ( _m_paddb ( _m_packsswb ( _m_psubw ( * ( __m64 * ) ( @@a4@@ + Number L * @@v40@@ ) , * ( __m64 * ) ( @@a4@@ + Number L * @@v40@@ + Number * @@v38@@ ) ) , _m_psubw ( * ( __m64 * ) ( @@a4@@ + Number L * @@v40@@ + Number ) , * ( __m64 * ) ( @@a4@@ + Number L * @@v40@@ + Number * @@v38@@ + Number ) ) ) , @@v11@@ ) , @@v12@@ ) ; v16 = _m_por ( _m_psubb ( _mm_cvtsi32_si64 ( * ( _DWORD * ) ( @@a3@@ + @@v40@@ ) ) , * ( __m64 * ) ( @@a3@@ + @@v40@@ + @@v38@@ ) ) , _m_packsswb ( v24 , v24 ) ) ; } } v10 = _m_pminub ( v16 , ( __m64 ) ff_pb_1 ) ; @@a1@@ [ Number * @@i@@ + @@v39@@ ] = _m_punpcklbw ( _m_pmaxub ( _m_psllwi ( _m_pminub ( _m_por ( _mm_cvtsi32_si64 ( * ( _DWORD * ) ( @@v40@@ + @@a2@@ ) ) , * ( __m64 * ) ( @@v40@@ + @@v38@@ + @@a2@@ ) ) , ( __m64 ) ff_pb_1 ) , Number ) , v10 ) , Number L ) ; @@v39@@ += @@a7@@ ; @@v40@@ += Number * @@a7@@ ; } @@a6@@ = Number ; @@a7@@ = Number ; } result = @@a1@@ ; v26 = @@a1@@ [ Number ] ; @@v27@@ = @@a1@@ [ Number ] ; v28 = _m_punpcklwd ( ( __m64 ) @@a1@@ -> m64_u64 , v26 ) ; @@v29@@ = _m_punpckhwd ( ( __m64 ) @@a1@@ -> m64_u64 , v26 ) ; v30 = @@a1@@ [ Number ] ; v31 = _m_punpcklwd ( v30 , @@v27@@ ) ; v32 = _m_punpckhwd ( v30 , @@v27@@ ) ; @@a1@@ -> m64_u64 = ( unsigned __int64 ) _m_punpckldq ( v28 , v31 ) ; @@a1@@ [ Number ] . m64_u64 = ( unsigned __int64 ) _m_punpckhdq ( v28 , v31 ) ; @@a1@@ [ Number ] . m64_u64 = ( unsigned __int64 ) _m_punpckldq ( @@v29@@ , v32 ) ; @@a1@@ [ Number ] . m64_u64 = ( unsigned __int64 ) _m_punpckhdq ( @@v29@@ , v32 ) ; return result ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r16"}, {"n": "a4", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r24"}, {"n": "v27", "t": {"T": 8}, "location": "r448"}, {"n": "v29", "t": {"T": 8}, "location": "r456"}, {"n": "v12", "t": {"T": 8}, "location": "r464"}, {"n": "v11", "t": {"T": 8}, "location": "r472"}, {"n": "a1", "t": {"T": 3, "t": "__m64"}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "a5", "t": {"T": 1, "n": "int", "s": 4}, "location": "r72"}, {"n": "a6", "t": {"T": 1, "n": "int", "s": 4}, "location": "r80"}, {"n": "a8", "t": {"T": 1, "n": "int", "s": 4}, "location": "s-16"}, {"n": "a9", "t": {"T": 1, "n": "int", "s": 4}, "location": "s-24"}, {"n": "a10", "t": {"T": 1, "n": "int", "s": 4}, "location": "s-32"}, {"n": "a7", "t": {"T": 1, "n": "int", "s": 4}, "location": "s-8"}, {"n": "v39", "t": {"T": 1, "n": "int", "s": 4}, "location": "s12"}, {"n": "v38", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s24"}, {"n": "v37", "t": {"T": 1, "n": "int", "s": 4}, "location": "s28"}, {"n": "i", "t": {"T": 1, "n": "int", "s": 4}, "location": "s4"}, {"n": "v36", "t": {"T": 8}, "location": "s40"}, {"n": "v40", "t": {"T": 1, "n": "int", "s": 4}, "location": "s8"}]}
{"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"}]}