row_win.cc | 366 vpermq ymm0, ymm0, 0xd8 local 367 vpunpcklbw ymm0, ymm0, ymm0 local 368 vpermq ymm0, ymm0, 0xd8 local 369 vpunpckhwd ymm1, ymm0, ymm0 local 370 vpunpcklwd ymm0, ymm0, ymm local 371 vpor ymm0, ymm0, ymm5 local 549 vmovdqu ymm0, [eax] \/\/ fetch 16 pixels of bgr565 local 550 vpand ymm1, ymm0, ymm3 \/\/ R in upper 5 bits local 551 vpsllw ymm2, ymm0, 11 \/\/ B in upper 5 bits local 556 vpand ymm0, ymm0, ymm4 \/\/ G in middle 6 bits local 557 vpmulhuw ymm0, ymm0, ymm6 \/\/ << 5 * (256 + 4) local 558 vpor ymm0, ymm0, ymm7 \/\/ AG local 559 vpermq ymm0, ymm0, 0xd8 \/\/ mutate for unpack local 598 vmovdqu ymm0, [eax] \/\/ fetch 16 pixels of 1555 local 599 vpsllw ymm1, ymm0, 1 \/\/ R in upper 5 bits local 600 vpsllw ymm2, ymm0, 11 \/\/ B in upper 5 bits local 606 vpsraw ymm2, ymm0, 8 \/\/ A local 607 vpand ymm0, ymm0, ymm4 \/\/ G in middle 5 bits local 608 vpmulhuw ymm0, ymm0, ymm6 \/\/ << 6 * (256 + 8) local 610 vpor ymm0, ymm0, ymm2 \/\/ AG local 611 vpermq ymm0, ymm0, 0xd8 \/\/ mutate for unpack local 642 vmovdqu ymm0, [eax] \/\/ fetch 16 pixels of bgra4444 local 643 vpand ymm2, ymm0, ymm5 \/\/ mask high nibbles local 644 vpand ymm0, ymm0, ymm4 \/\/ mask low nibbles local 646 vpsllw ymm1, ymm0, 4 local 648 vpor ymm0, ymm0, ymm1 local 649 vpermq ymm0, ymm0, 0xd8 \/\/ mutate for unpack local 651 vpunpckhbw ymm1, ymm0, ymm2 local 652 vpunpcklbw ymm0, ymm0, ymm2 local 936 vmovdqu ymm0, [eax] \/\/ fetch 8 pixels of argb local 937 vpaddusb ymm0, ymm0, ymm6 \/\/ add dither local 938 vpsrld ymm2, ymm0, 5 \/\/ G local 939 vpsrld ymm1, ymm0, 3 \/\/ B local 940 vpsrld ymm0, ymm0, 8 \/\/ R local 943 vpand ymm0, ymm0, ymm5 \/\/ R local 945 vpor ymm0, ymm0, ymm1 \/\/ BGR local 946 vpackusdw ymm0, ymm0, ymm0 local 947 vpermq ymm0, ymm0, 0xd8 local 1045 vmovdqu ymm0, [eax] \/\/ fetch 8 pixels of argb local 1046 vpsrld ymm2, ymm0, 5 \/\/ G local 1047 vpsrld ymm1, ymm0, 3 \/\/ B local 1048 vpsrld ymm0, ymm0, 8 \/\/ R local 1051 vpand ymm0, ymm0, ymm5 \/\/ R local 1053 vpor ymm0, ymm0, ymm1 \/\/ BGR local 1054 vpackusdw ymm0, ymm0, ymm0 local 1055 vpermq ymm0, ymm0, 0xd8 local 1082 vmovdqu ymm0, [eax] \/\/ fetch 8 pixels of argb local 1083 vpsrld ymm3, ymm0, 9 \/\/ R local 1084 vpsrld ymm2, ymm0, 6 \/\/ G local 1085 vpsrld ymm1, ymm0, 3 \/\/ B local 1086 vpsrad ymm0, ymm0, 16 \/\/ A local 1090 vpand ymm0, ymm0, ymm7 \/\/ A local 1091 vpor ymm0, ymm0, ymm1 \/\/ BA local 1093 vpor ymm0, ymm0, ymm2 \/\/ BGRA local 1094 vpackssdw ymm0, ymm0, ymm0 local 1095 vpermq ymm0, ymm0, 0xd8 local 1119 vmovdqu ymm0, [eax] \/\/ fetch 8 pixels of argb local 1120 vpand ymm1, ymm0, ymm4 \/\/ high nibble local 1121 vpand ymm0, ymm0, ymm3 \/\/ low nibble local 1123 vpsrld ymm0, ymm0, 4 local 1124 vpor ymm0, ymm0, ymm1 local 1125 vpackuswb ymm0, ymm0, ymm0 local 1126 vpermq ymm0, ymm0, 0xd8 local 1226 vmovdqu ymm0, [eax] local 1230 vpmaddubsw ymm0, ymm0, ymm4 local 1235 vphaddw ymm0, ymm0, ymm1 \/\/ mutates. local 1237 vpsrlw ymm0, ymm0, 7 local 1239 vpackuswb ymm0, ymm0, ymm2 \/\/ mutates. local 1240 vpermd ymm0, ymm6, ymm0 \/\/ For vphaddw + vpackuswb mutation. local 1241 vpaddb ymm0, ymm0, ymm5 \/\/ add 16 for Y local 1265 vmovdqu ymm0, [eax] local 1269 vpmaddubsw ymm0, ymm0, ymm4 local 1274 vphaddw ymm0, ymm0, ymm1 \/\/ mutates. local 1276 vpaddw ymm0, ymm0, ymm5 \/\/ Add .5 for rounding. local 1278 vpsrlw ymm0, ymm0, 7 local 1280 vpackuswb ymm0, ymm0, ymm2 \/\/ mutates. local 1281 vpermd ymm0, ymm6, ymm0 \/\/ For vphaddw + vpackuswb mutation. local 1552 vmovdqu ymm0, [eax] local 1556 vpavgb ymm0, ymm0, [eax + esi] local 1561 vshufps ymm4, ymm0, ymm1, 0x88 local 1562 vshufps ymm0, ymm0, ymm1, 0xdd local 1563 vpavgb ymm0, ymm0, ymm4 \/\/ mutated by vshufps local 1571 vpmaddubsw ymm1, ymm0, ymm7 \/\/ U local 1573 vpmaddubsw ymm0, ymm0, ymm6 \/\/ V local 1576 vphaddw ymm0, ymm0, ymm2 local 1578 vpsraw ymm0, ymm0, 8 local 1579 vpacksswb ymm0, ymm1, ymm0 \/\/ mutates local 1580 vpermq ymm0, ymm0, 0xd8 \/\/ For vpacksswb local 1581 vpshufb ymm0, ymm0, kShufARGBToUV_AVX \/\/ For vshufps + vphaddw local 1582 vpaddb ymm0, ymm0, ymm5 \/\/ -> unsigned local 1585 vextractf128 [edx], ymm0, 0 \/\/ U local 1586 vextractf128 [edx + edi], ymm0, 1 \/\/ V local 2243 vpunpcklwd ymm0, ymm2, ymm1 \/\/ ARGB first 8 pixels local 2289 vpunpcklwd ymm0, ymm2, ymm1 \/\/ ABGR first 8 pixels local 2333 vpunpcklbw ymm2, ymm0, ymm5 \/\/ BA local 2335 vpunpcklwd ymm0, ymm1, ymm2 \/\/ RGBA first 8 pixels local 3009 vpermq ymm0, ymm0, 0xd8 \/\/ vpunpcklbw mutates local 3010 vpunpcklbw ymm0, ymm0, ymm0 \/\/ Y.Y local 3011 vpmulhuw ymm0, ymm0, ymm2 local 3012 vpsubusw ymm0, ymm0, ymm3 local 3013 vpsrlw ymm0, ymm0, 6 local 3014 vpackuswb ymm0, ymm0, ymm0 \/\/ G. still mutated: 3120 local 3018 vpunpcklbw ymm1, ymm0, ymm0 \/\/ GG - mutates local 3020 vpunpcklwd ymm0, ymm1, ymm1 \/\/ GGGG first 8 pixels local 3022 vpor ymm0, ymm0, ymm4 local 3072 vmovdqu ymm0, [eax - 32 + ecx] local 3073 vpshufb ymm0, ymm0, ymm5 local 3074 vpermq ymm0, ymm0, 0x4e \/\/ swap high and low halfs local 3183 vpermd ymm0, ymm5, [eax - 32 + ecx * 4] \/\/ permute dword order local 3246 vmovdqu ymm0, [eax] local 3249 vpsrlw ymm2, ymm0, 8 \/\/ odd bytes local 3251 vpand ymm0, ymm0, ymm5 \/\/ even bytes local 3253 vpackuswb ymm0, ymm0, ymm1 local 3255 vpermq ymm0, ymm0, 0xd8 local 3314 vmovdqu ymm0, [eax] \/\/ read 32 U's local 3317 vpunpcklbw ymm2, ymm0, ymm1 \/\/ low 16 UV pairs. mutated qqword 0,2 local 3318 vpunpckhbw ymm0, ymm0, ymm1 \/\/ high 16 UV pairs. mutated qqword 1,3 local 3320 vextractf128 [edi + 16], ymm0, 0 \/\/ bytes 16..31 local 3322 vextractf128 [edi + 48], ymm0, 1 \/\/ bytes 47..63 local 3367 vmovdqu ymm0, [eax] local 3442 vpcmpeqb ymm0, ymm0, ymm0 local 3443 vpsrld ymm0, ymm0, 8 \/\/ generate mask 0x00ffffff local 3509 vpcmpeqb ymm0, ymm0, ymm0 local 3510 vpsrld ymm0, ymm0, 8 \/\/ generate mask 0x00ffffff local 3592 vmovdqu ymm0, [eax] local 3595 vpand ymm0, ymm0, ymm5 \/\/ even bytes are Y local 3597 vpackuswb ymm0, ymm0, ymm1 \/\/ mutates. local 3598 vpermq ymm0, ymm0, 0xd8 local 3624 vmovdqu ymm0, [eax] local 3626 vpavgb ymm0, ymm0, [eax + esi] local 3629 vpsrlw ymm0, ymm0, 8 \/\/ YUYV -> UVUV local 3631 vpackuswb ymm0, ymm0, ymm1 \/\/ mutates. local 3632 vpermq ymm0, ymm0, 0xd8 local 3633 vpand ymm1, ymm0, ymm5 \/\/ U local 3634 vpsrlw ymm0, ymm0, 8 \/\/ V local 3636 vpackuswb ymm0, ymm0, ymm0 \/\/ mutates. local 3638 vpermq ymm0, ymm0, 0xd8 local 3640 vextractf128 [edx + edi], ymm0, 0 \/\/ V local 3666 vmovdqu ymm0, [eax] local 3669 vpsrlw ymm0, ymm0, 8 \/\/ YUYV -> UVUV local 3671 vpackuswb ymm0, ymm0, ymm1 \/\/ mutates. local 3672 vpermq ymm0, ymm0, 0xd8 local 3673 vpand ymm1, ymm0, ymm5 \/\/ U local 3674 vpsrlw ymm0, ymm0, 8 \/\/ V local 3676 vpackuswb ymm0, ymm0, ymm0 \/\/ mutates. local 3678 vpermq ymm0, ymm0, 0xd8 local 3680 vextractf128 [edx + edi], ymm0, 0 \/\/ V local 3700 vmovdqu ymm0, [eax] local 3703 vpsrlw ymm0, ymm0, 8 \/\/ odd bytes are Y local 3705 vpackuswb ymm0, ymm0, ymm1 \/\/ mutates. local 3706 vpermq ymm0, ymm0, 0xd8 local 3732 vmovdqu ymm0, [eax] local 3734 vpavgb ymm0, ymm0, [eax + esi] local 3737 vpand ymm0, ymm0, ymm5 \/\/ UYVY -> UVUV local 3739 vpackuswb ymm0, ymm0, ymm1 \/\/ mutates. local 3740 vpermq ymm0, ymm0, 0xd8 local 3741 vpand ymm1, ymm0, ymm5 \/\/ U local 3742 vpsrlw ymm0, ymm0, 8 \/\/ V local 3744 vpackuswb ymm0, ymm0, ymm0 \/\/ mutates. local 3746 vpermq ymm0, ymm0, 0xd8 local 3748 vextractf128 [edx + edi], ymm0, 0 \/\/ V local 3774 vmovdqu ymm0, [eax] local 3777 vpand ymm0, ymm0, ymm5 \/\/ UYVY -> UVUV local 3779 vpackuswb ymm0, ymm0, ymm1 \/\/ mutates. local 3780 vpermq ymm0, ymm0, 0xd8 local 3781 vpand ymm1, ymm0, ymm5 \/\/ U local 3782 vpsrlw ymm0, ymm0, 8 \/\/ V local 3784 vpackuswb ymm0, ymm0, ymm0 \/\/ mutates. local 3786 vpermq ymm0, ymm0, 0xd8 local 3788 vextractf128 [edx + edi], ymm0, 0 \/\/ V local 4298 vpunpcklbw ymm0, ymm6, ymm6 \/\/ low 4 pixels. mutated. local 4300 vpshufb ymm2, ymm0, ymm4 \/\/ low 4 alphas local 4302 vpmulhuw ymm0, ymm0, ymm2 \/\/ rgb * a local 4305 vpsrlw ymm0, ymm0, 8 local 4307 vpackuswb ymm0, ymm0, ymm1 \/\/ unmutated. local 4308 vpor ymm0, ymm0, ymm6 \/\/ copy original alpha local 4390 vpunpcklbw ymm0, ymm6, ymm6 \/\/ low 4 pixels. mutated. local 4397 vpmulhuw ymm0, ymm0, ymm2 \/\/ rgb * ia local 4399 vpackuswb ymm0, ymm0, ymm1 \/\/ unmutated. local 4452 vpunpcklbw ymm0, ymm6, ymm6 \/\/ low 4 pixels. mutated. local 4458 vpmulhuw ymm0, ymm0, ymm2 \/\/ rgb * ia local 4460 vpackuswb ymm0, ymm0, ymm1 \/\/ unmutated. local 4865 vpunpcklbw ymm0, ymm1, ymm1 \/\/ low 4 local 4869 vpmulhuw ymm0, ymm0, ymm2 \/\/ src_argb0 * src_argb1 low 4 local 4871 vpackuswb ymm0, ymm0, ymm1 local 4897 vmovdqu ymm0, [eax] \/\/ read 8 pixels from src_argb0 local 4899 vpaddusb ymm0, ymm0, [esi] \/\/ add 8 pixels from src_argb1 local 4926 vmovdqu ymm0, [eax] \/\/ read 8 pixels from src_argb0 local 4928 vpsubusb ymm0, ymm0, [esi] \/\/ src_argb0 - src_argb1 local 5538 vpxor ymm0, ymm0, ymm0 local 5539 vpermd ymm5, ymm0, ymm5 local 5542 vmovdqu ymm0, [esi] local 5544 vpunpckhbw ymm1, ymm0, ymm2 \/\/ mutates local 5545 vpunpcklbw ymm0, ymm0, ymm2 \/\/ mutates local 5546 vpmaddubsw ymm0, ymm0, ymm5 local 5548 vpsrlw ymm0, ymm0, 7 local 5550 vpackuswb ymm0, ymm0, ymm1 \/\/ unmutates local 5559 vmovdqu ymm0, [esi] local 5561 vpavgb ymm0, ymm0, ymm1 local 5562 vpavgb ymm0, ymm0, ymm1 local 5571 vmovdqu ymm0, [esi] local 5572 vpavgb ymm0, ymm0, [esi + edx] local 5582 vmovdqu ymm0, [esi + edx] local 5583 vpavgb ymm0, ymm0, ymm1 local 5584 vpavgb ymm0, ymm0, ymm1 local 5850 vmovdqu ymm0, [eax] local 5853 vpshufb ymm0, ymm0, ymm5 local 6139 vpmovzxbd ymm0, qword ptr [eax] \/\/ 2 BGRA pixels local 6141 vcvtdq2ps ymm0, ymm0 \/\/ X 8 floats local 6142 vmulps ymm2, ymm0, ymm0 \/\/ X * X local 6143 vmulps ymm3, ymm0, ymm7 \/\/ C3 * X local 6144 vfmadd132ps ymm0, ymm4, ymm5 \/\/ result = C0 + C1 * X local 6145 vfmadd231ps ymm0, ymm2, ymm6 \/\/ result += C2 * X * X local 6146 vfmadd231ps ymm0, ymm2, ymm3 \/\/ result += C3 * X * X * X local 6147 vcvttps2dq ymm0, ymm0 local 6148 vpackusdw ymm0, ymm0, ymm0 \/\/ b0g0r0a0_00000000_b0g0r0a0_00000000 local 6149 vpermq ymm0, ymm0, 0xd8 \/\/ b0g0r0a0_b0g0r0a0_00000000_00000000 local [all...] |