{"name": "avg_h264_qpel8_h_lowpass_mmx2", "code": "__int64 __fastcall avg_h264_qpel8_h_lowpass_mmx2 ( __m64 * @@a1@@ , __int64 @@a2@@ , int @@a3@@ , int @@a4@@ ) { __int64 v4 ; __int64 @@result@@ ; int v7 ; __m64 v8 ; __m64 @@v9@@ ; __m64 @@v10@@ ; __m64 v11 ; __m64 @@v12@@ ; __m64 @@v13@@ ; __m64 v14 ; __m64 @@v15@@ ; v4 = @@a4@@ ; @@result@@ = @@a2@@ ; v7 = Number ; do { v8 = * ( __m64 * ) ( @@result@@ + Number ) ; @@v9@@ = _m_psllwi ( _m_paddw ( _m_punpcklbw ( * ( __m64 * ) @@result@@ , Number L ) , _m_punpcklbw ( v8 , Number L ) ) , Number ) ; @@v10@@ = _m_psllwi ( _m_paddw ( _m_punpckhbw ( * ( __m64 * ) @@result@@ , Number L ) , _m_punpckhbw ( v8 , Number L ) ) , Number ) ; v11 = * ( __m64 * ) ( @@result@@ - Number ) ; @@v12@@ = * ( __m64 * ) ( @@result@@ + Number ) ; @@v13@@ = _m_punpcklbw ( v11 , Number L ) ; v14 = _m_punpckhbw ( v11 , Number L ) ; @@v15@@ = _m_punpcklbw ( @@v12@@ , Number L ) ; @@a1@@ -> m64_u64 = ( unsigned __int64 ) _m_pavgb ( _m_packuswb ( _m_psrawi ( _m_paddw ( _m_pmullw ( _m_psubw ( @@v9@@ , _m_paddw ( @@v13@@ , @@v15@@ ) ) , * ( __m64 * ) & ff_pw_5 ) , _m_paddw ( _m_paddw ( _m_punpcklbw ( _mm_cvtsi32_si64 ( * ( _DWORD * ) ( @@result@@ - Number ) ) , Number L ) , v14 ) , * ( __m64 * ) & ff_pw_16 ) ) , Number ) , _m_psrawi ( _m_paddw ( _m_pmullw ( _m_psubw ( @@v10@@ , _m_paddw ( _m_punpckhbw ( @@v12@@ , Number L ) , v14 ) ) , * ( __m64 * ) & ff_pw_5 ) , _m_paddw ( _m_paddw ( @@v15@@ , _m_punpcklbw ( _mm_cvtsi32_si64 ( * ( _DWORD * ) ( @@result@@ + Number ) ) , Number L ) ) , * ( __m64 * ) & ff_pw_16 ) ) , Number ) ) , ( __m64 ) @@a1@@ -> m64_u64 ) ; @@result@@ += v4 ; @@a1@@ = ( __m64 * ) ( ( char * ) @@a1@@ + @@a3@@ ) ; -- v7 ; } while ( v7 ) ; 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": "v9", "t": {"T": 8}, "location": "r424"}, {"n": "v10", "t": {"T": 8}, "location": "r432"}, {"n": "v13", "t": {"T": 8}, "location": "r440"}, {"n": "v15", "t": {"T": 8}, "location": "r456"}, {"n": "v12", "t": {"T": 8}, "location": "r464"}, {"n": "a1", "t": {"T": 3, "t": "__m64"}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "result", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r8"}]}
{"name": "avg_h264_qpel16_h_lowpass_mmx2", "code": "__int64 __fastcall avg_h264_qpel16_h_lowpass_mmx2 ( __m64 * @@a1@@ , __int64 @@a2@@ , int @@a3@@ , int @@a4@@ ) { __int64 @@v7@@ ; __m64 * @@v8@@ ; avg_h264_qpel8_h_lowpass_mmx2 ( @@a1@@ , @@a2@@ , @@a3@@ , @@a4@@ ) ; avg_h264_qpel8_h_lowpass_mmx2 ( @@a1@@ + Number , @@a2@@ + Number , @@a3@@ , @@a4@@ ) ; @@v7@@ = Number * @@a4@@ + @@a2@@ ; @@v8@@ = & @@a1@@ [ @@a3@@ ] ; avg_h264_qpel8_h_lowpass_mmx2 ( @@v8@@ , @@v7@@ , @@a3@@ , @@a4@@ ) ; return avg_h264_qpel8_h_lowpass_mmx2 ( @@v8@@ + Number , @@v7@@ + Number , @@a3@@ , @@a4@@ ) ; }", "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": 3, "t": "__m64"}, "location": "r56"}, {"n": "a2", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "r64"}, {"n": "v7", "t": {"T": 1, "n": "__int64", "s": 8}, "location": "s16"}, {"n": "v8", "t": {"T": 3, "t": "__m64"}, "location": "s8"}]} {"name": "avg_h264_qpel8_mc20_mmx2", "code": "__int64 __fastcall avg_h264_qpel8_mc20_mmx2 ( __m64 * @@a1@@ , __int64 @@a2@@ , int @@a3@@ ) { return avg_h264_qpel8_h_lowpass_mmx2 ( @@a1@@ , @@a2@@ , @@a3@@ , @@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": 1, "n": "__int64", "s": 8}, "location": "r64"}]}