{"name": "h264_h_loop_filter_chroma_mmx2", "code": "unsigned int * __fastcall h264_h_loop_filter_chroma_mmx2 ( __int64 @@a1@@ , int @@a2@@ , int @@a3@@ , int @@a4@@ , unsigned int * @@a5@@ ) { unsigned int @@v10@@ ; unsigned int @@v11@@ [ Number ] ; __m64 @@v12@@ [ Number ] ; transpose4x4 ( & @@v10@@ , ( unsigned int * ) ( @@a1@@ - Number ) , Number , @@a2@@ ) ; transpose4x4 ( @@v11@@ , ( unsigned int * ) ( Number * @@a2@@ - Number L + @@a1@@ ) , Number , @@a2@@ ) ; h264_loop_filter_chroma_mmx2 ( @@v12@@ , Number , @@a3@@ - Number , @@a4@@ - Number , @@a5@@ ) ; transpose4x4 ( ( _DWORD * ) ( @@a1@@ - Number ) , & @@v10@@ , @@a2@@ , Number ) ; return transpose4x4 ( ( _DWORD * ) ( Number * @@a2@@ - Number L + @@a1@@ ) , @@v11@@ , @@a2@@ , Number ) ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "int", "s": 4}, "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": "int", "s": 4}, "location": "r64"}, {"n": "a5", "t": {"T": 3, "t": "unsigned int"}, "location": "r72"}, {"n": "v12", "t": {"T": 2, "n": 2, "s": 8, "t": "__m64"}, "location": "s16"}, {"n": "v11", "t": {"T": 2, "n": 3, "s": 4, "t": "unsigned int"}, "location": "s28"}, {"n": "v10", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "s32"}]}
{"name": "transpose4x4", "code": "unsigned int * __fastcall transpose4x4 ( _DWORD * @@a1@@ , unsigned int * @@a2@@ , int @@a3@@ , int @@a4@@ ) { unsigned int * @@result@@ ; __m64 @@v5@@ ; __m64 v6 ; __m64 @@v7@@ ; __m64 v8 ; @@result@@ = @@a2@@ ; @@v5@@ = _m_punpcklbw ( _mm_cvtsi32_si64 ( * ( unsigned int * ) ( ( char * ) @@a2@@ + Number * @@a4@@ ) ) , _mm_cvtsi32_si64 ( * ( unsigned int * ) ( ( char * ) @@a2@@ + Number * @@a4@@ ) ) ) ; v6 = _m_punpcklbw ( _mm_cvtsi32_si64 ( * @@a2@@ ) , _mm_cvtsi32_si64 ( * ( unsigned int * ) ( ( char * ) @@a2@@ + @@a4@@ ) ) ) ; @@v7@@ = _m_punpcklwd ( v6 , @@v5@@ ) ; v8 = _m_punpckhwd ( v6 , @@v5@@ ) ; * @@a1@@ = _mm_cvtsi64_si32 ( @@v7@@ ) ; * ( _DWORD * ) ( ( char * ) @@a1@@ + @@a3@@ ) = _mm_cvtsi64_si32 ( _m_punpckhdq ( @@v7@@ , @@v7@@ ) ) ; * ( _DWORD * ) ( ( char * ) @@a1@@ + Number * @@a3@@ ) = _mm_cvtsi64_si32 ( v8 ) ; * ( _DWORD * ) ( ( char * ) @@a1@@ + Number * @@a3@@ ) = _mm_cvtsi64_si32 ( _m_punpckhdq ( v8 , v8 ) ) ; return @@result@@ ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "int", "s": 4}, "location": "r16"}, {"n": "a4", "t": {"T": 1, "n": "int", "s": 4}, "location": "r24"}, {"n": "v7", "t": {"T": 8}, "location": "r424"}, {"n": "v5", "t": {"T": 8}, "location": "r440"}, {"n": "a1", "t": {"T": 3, "t": "_DWORD"}, "location": "r56"}, {"n": "a2", "t": {"T": 3, "t": "unsigned int"}, "location": "r64"}, {"n": "result", "t": {"T": 3, "t": "unsigned int"}, "location": "r8"}]} {"name": "h264_loop_filter_chroma_mmx2", "code": "__m64 * __fastcall h264_loop_filter_chroma_mmx2 ( __m64 * @@a1@@ , unsigned int @@a2@@ , unsigned int @@a3@@ , unsigned int @@a4@@ , unsigned int * @@a5@@ ) { __m64 * v5 ; __m64 * @@result@@ ; __m64 @@v7@@ ; __m64 v8 ; __m64 @@v9@@ ; __m64 v10 ; __m64 v11 ; __m64 v12 ; __m64 @@v13@@ ; __m64 v14 ; __m64 v15 ; __m64 v16 ; __m64 @@v17@@ ; __m64 @@v18@@ ; @@v18@@ = ( __m64 ) __PAIR64__ ( @@a2@@ , @@a3@@ ) ; v5 = ( __m64 * ) ( ( char * ) @@a1@@ + ( int ) ( Number * @@a2@@ ) ) ; @@result@@ = @@a1@@ ; @@v7@@ = * ( __m64 * ) ( ( char * ) v5 + * ( ( int * ) & @@v18@@ + Number ) ) ; v8 = * ( __m64 * ) ( ( char * ) @@a1@@ + * ( ( int * ) & @@v18@@ + Number ) ) ; @@v9@@ = _m_pshufw ( @@v18@@ , Number ) ; v10 = _m_pshufw ( ( __m64 ) __PAIR64__ ( @@a3@@ , @@a4@@ ) , Number ) ; v11 = _m_packuswb ( v10 , v10 ) ; v12 = _mm_cvtsi32_si64 ( * @@a5@@ ) ; @@v13@@ = _m_pand ( _m_pcmpeqb ( _m_por ( _m_por ( _m_psubusb ( _m_por ( _m_psubusb ( @@v7@@ , ( __m64 ) @@a1@@ -> m64_u64 ) , _m_psubusb ( ( __m64 ) @@a1@@ -> m64_u64 , @@v7@@ ) ) , _m_packuswb ( @@v9@@ , @@v9@@ ) ) , _m_psubusb ( _m_por ( _m_psubusb ( ( __m64 ) v5 -> m64_u64 , @@v7@@ ) , _m_psubusb ( @@v7@@ , ( __m64 ) v5 -> m64_u64 ) ) , v11 ) ) , _m_psubusb ( _m_por ( _m_psubusb ( v8 , ( __m64 ) @@a1@@ -> m64_u64 ) , _m_psubusb ( ( __m64 ) @@a1@@ -> m64_u64 , v8 ) ) , v11 ) ) , Number L ) , _m_punpcklbw ( v12 , v12 ) ) ; v14 = _m_paddusb ( _m_pavgb ( _m_pavgb ( _m_pavgb ( _m_pxor ( v8 , ( __m64 ) Number ) , ( __m64 ) v5 -> m64_u64 ) , ( __m64 ) ff_pb_3 ) , _m_pand ( _m_pxor ( @@v7@@ , ( __m64 ) @@a1@@ -> m64_u64 ) , ( __m64 ) ff_bone ) ) , _m_pavgb ( _m_pxor ( ( __m64 ) Number , @@v7@@ ) , ( __m64 ) @@a1@@ -> m64_u64 ) ) ; v15 = _m_pminub ( _m_psubusb ( ( __m64 ) ff_pb_A1 , v14 ) , @@v13@@ ) ; v16 = _m_pminub ( _m_psubusb ( v14 , ( __m64 ) ff_pb_A1 ) , @@v13@@ ) ; @@v17@@ = _m_paddusb ( _m_psubusb ( ( __m64 ) @@a1@@ -> m64_u64 , v16 ) , v15 ) ; * ( __m64 * ) ( ( char * ) v5 + * ( ( int * ) & @@v18@@ + Number ) ) = _m_paddusb ( _m_psubusb ( @@v7@@ , v15 ) , v16 ) ; @@a1@@ -> m64_u64 = ( unsigned __int64 ) @@v17@@ ; return @@result@@ ; }", "source": [{"n": "a3", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r16"}, {"n": "a4", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r24"}, {"n": "v7", "t": {"T": 8}, "location": "r432"}, {"n": "v17", "t": {"T": 8}, "location": "r440"}, {"n": "v9", "t": {"T": 8}, "location": "r456"}, {"n": "v13", "t": {"T": 8}, "location": "r480"}, {"n": "a1", "t": {"T": 3, "t": "__m64"}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "unsigned int", "s": 4}, "location": "r64"}, {"n": "a5", "t": {"T": 3, "t": "unsigned int"}, "location": "r72"}, {"n": "result", "t": {"T": 3, "t": "__m64"}, "location": "r8"}, {"n": "v18", "t": {"T": 8}, "location": "s16"}]} {"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"}]}