Home | History | Annotate | Download | only in libpng-1.2.19

Lines Matching full:mm7

1019                   "movd      %%edx, %%mm7     \n\t" // load bit pattern
1022 "punpcklbw %%mm7, %%mm7 \n\t"
1023 "punpcklwd %%mm7, %%mm7 \n\t"
1024 "punpckldq %%mm7, %%mm7 \n\t" // fill reg with 8 masks
1032 "pand %%mm7, %%mm0 \n\t"
1033 "pand %%mm7, %%mm1 \n\t"
1034 "pand %%mm7, %%mm2 \n\t"
1051 "movq (%4), %%mm7 \n\t"
1052 "pandn %%mm7, %%mm6 \n\t"
1058 "movq %%mm1, %%mm7 \n\t"
1060 "pandn %%mm6, %%mm7 \n\t"
1061 "por %%mm7, %%mm5 \n\t"
1067 "movq 16(%4), %%mm7 \n\t"
1068 "pandn %%mm7, %%mm4 \n\t"
1119 , "%mm4", "%mm5", "%mm6", "%mm7"
1185 "movd %%edx, %%mm7 \n\t" // load bit pattern
1188 "punpcklbw %%mm7, %%mm7 \n\t"
1189 "punpcklwd %%mm7, %%mm7 \n\t"
1190 "punpckldq %%mm7, %%mm7 \n\t" // fill reg with 8 masks
1199 "pand %%mm7, %%mm0 \n\t"
1200 "pand %%mm7, %%mm1 \n\t"
1201 "pand %%mm7, %%mm2 \n\t"
1202 "pand %%mm7, %%mm3 \n\t"
1220 "movq (%4), %%mm7 \n\t"
1221 "pandn %%mm7, %%mm6 \n\t"
1227 "movq %%mm1, %%mm7 \n\t"
1229 "pandn %%mm6, %%mm7 \n\t"
1230 "por %%mm7, %%mm5 \n\t"
1236 "movq 16(%4), %%mm7 \n\t"
1237 "pandn %%mm7, %%mm4 \n\t"
1241 "movq 24(%3), %%mm7 \n\t"
1242 "pand %%mm3, %%mm7 \n\t"
1246 "por %%mm5, %%mm7 \n\t"
1247 "movq %%mm7, 24(%4) \n\t"
1292 , "%mm4", "%mm5", "%mm6", "%mm7"
1356 "movd %%edx, %%mm7 \n\t" // load bit pattern
1359 "punpcklbw %%mm7, %%mm7 \n\t"
1360 "punpcklwd %%mm7, %%mm7 \n\t"
1361 "punpckldq %%mm7, %%mm7 \n\t" // fill reg with 8 masks
1367 "pand %%mm7, %%mm0 \n\t" // nonzero if keep byte
1426 : "%mm0", "%mm4", "%mm6", "%mm7" // clobber list
1658 "movd %%edx, %%mm7 \n\t" // load bit pattern
1661 "punpcklbw %%mm7, %%mm7 \n\t"
1662 "punpcklwd %%mm7, %%mm7 \n\t"
1663 "punpckldq %%mm7, %%mm7 \n\t" // fill reg with 8 masks
1670 "pand %%mm7, %%mm0 \n\t"
1671 "pand %%mm7, %%mm1 \n\t"
1687 "movq (%4), %%mm7 \n\t"
1688 "pandn %%mm7, %%mm6 \n\t"
1694 "movq %%mm1, %%mm7 \n\t"
1696 "pandn %%mm6, %%mm7 \n\t"
1697 "por %%mm7, %%mm5 \n\t"
1743 , "%mm5", "%mm6", "%mm7"
1807 "movd %%edx, %%mm7 \n\t" // load bit pattern
1810 "punpcklbw %%mm7, %%mm7 \n\t"
1811 "punpcklwd %%mm7, %%mm7 \n\t"
1812 "punpckldq %%mm7, %%mm7 \n\t" // fill reg with 8 masks
1823 "pand %%mm7, %%mm0 \n\t"
1824 "pand %%mm7, %%mm1 \n\t"
1825 "pand %%mm7, %%mm2 \n\t"
1826 "pand %%mm7, %%mm3 \n\t"
1827 "pand %%mm7, %%mm4 \n\t"
1828 "pand %%mm7, %%mm5 \n\t"
1845 "movq (%3), %%mm7 \n\t"
1846 "pand %%mm0, %%mm7 \n\t"
1849 "por %%mm6, %%mm7 \n\t"
1850 "movq %%mm7, (%4) \n\t"
1854 "movq %%mm1, %%mm7 \n\t"
1855 "pandn 8(%4), %%mm7 \n\t"
1856 "por %%mm7, %%mm6 \n\t"
1861 "movq %%mm2, %%mm7 \n\t"
1862 "pandn 16(%4), %%mm7 \n\t"
1863 "por %%mm7, %%mm6 \n\t"
1866 "movq 24(%3), %%mm7 \n\t"
1867 "pand %%mm3, %%mm7 \n\t"
1870 "por %%mm6, %%mm7 \n\t"
1871 "movq %%mm7, 24(%4) \n\t"
1875 "movq %%mm4, %%mm7 \n\t"
1876 "pandn 32(%4), %%mm7 \n\t"
1877 "por %%mm7, %%mm6 \n\t"
1880 "movq 40(%3), %%mm7 \n\t"
1881 "pand %%mm5, %%mm7 \n\t"
1884 "por %%mm6, %%mm7 \n\t"
1885 "movq %%mm7, 40(%4) \n\t"
1933 , "%mm4", "%mm5", "%mm6", "%mm7"
3370 "movq " AMASK5_3_0 ", %%mm7 \n\t" // _amask5_3_0 -> mm7
3388 "movq %%mm7, %%mm6 \n\t"
3471 , "%mm4", "%mm5", "%mm6", "%mm7"
3490 "movq " AMASK0_8_0 ", %%mm7 \n\t" // _amask0_8_0 -> mm7
3495 "psrlq $32, %%mm7 \n\t" // was _ShiftRem
3497 "movq %%mm7, %%mm6 \n\t"
3526 "pand %%mm7, %%mm2 \n\t" // leave only Active Group 1
3568 , "%mm4", "%mm5", "%mm6", "%mm7"
3639 "movq " AMASK6_2_0 ", %%mm7 \n\t" // _amask6_2_0 -> mm7
3662 "movq %%mm7, %%mm6 \n\t"
3764 , "%mm4", "%mm5", "%mm6", "%mm7"
3782 "movq " AMASK0_8_0 ", %%mm7 \n\t" // _amask0_8_0 -> mm7
3787 "psrlq $16, %%mm7 \n\t"
3789 "movq %%mm7, %%mm6 \n\t"
3818 "pand %%mm7, %%mm2 \n\t" // leave only Active Group 1
3860 , "%mm4", "%mm5", "%mm6", "%mm7"
4196 "pxor %%mm7, %%mm7 \n\t"
4206 "pand %%mm4, %%mm0 \n\t" // only pav bytes < 0 in mm7
4207 "pcmpgtw %%mm5, %%mm7 \n\t" // create mask pbv bytes < 0
4209 "pand %%mm5, %%mm7 \n\t" // only pbv bytes < 0 in mm0
4211 "psubw %%mm7, %%mm5 \n\t"
4214 "pand %%mm6, %%mm0 \n\t" // only pav bytes < 0 in mm7
4215 "psubw %%mm7, %%mm5 \n\t"
4218 "movq %%mm4, %%mm7 \n\t"
4220 "pcmpgtw %%mm5, %%mm7 \n\t" // pa > pb?
4221 "movq %%mm7, %%mm0 \n\t"
4222 // use mm7 mask to merge pa & pb
4223 "pand %%mm7, %%mm5 \n\t"
4226 "pandn %%mm4, %%mm7 \n\t"
4228 "paddw %%mm5, %%mm7 \n\t"
4231 "pcmpgtw %%mm6, %%mm7 \n\t" // pab > pc?
4233 "pand %%mm7, %%mm3 \n\t"
4234 "pandn %%mm0, %%mm7 \n\t"
4235 "paddw %%mm3, %%mm7 \n\t"
4237 "packuswb %%mm1, %%mm7 \n\t"
4239 "pand " AMASK5_3_0 ", %%mm7 \n\t" // _amask5_3_0 (was _ActiveMask)
4241 "paddb (%1," PCX ",), %%mm7 \n\t" // add Paeth predictor + Raw(x)
4243 "movq %%mm7, (%1," PCX ",) \n\t" // write back updated value
4244 "movq %%mm7, %%mm1 \n\t" // now mm1 will be used as
4249 "pxor %%mm7, %%mm7 \n\t"
4266 "pcmpgtw %%mm4, %%mm7 \n\t" // create mask pav bytes < 0
4268 "pand %%mm4, %%mm7 \n\t" // only pav bytes < 0 in mm7
4270 "psubw %%mm7, %%mm4 \n\t"
4272 "psubw %%mm7, %%mm4 \n\t"
4275 "pand %%mm6, %%mm0 \n\t" // only pav bytes < 0 in mm7
4278 "movq %%mm4, %%mm7 \n\t"
4280 "pcmpgtw %%mm5, %%mm7 \n\t" // pa > pb?
4281 "movq %%mm7, %%mm0 \n\t"
4282 // use mm7 mask to merge pa & pb
4283 "pand %%mm7, %%mm5 \n\t"
4286 "pandn %%mm4, %%mm7 \n\t"
4288 "paddw %%mm5, %%mm7 \n\t"
4291 "pcmpgtw %%mm6, %%mm7 \n\t" // pab > pc?
4293 "pand %%mm7, %%mm3 \n\t"
4294 "pandn %%mm0, %%mm7 \n\t"
4296 "paddw %%mm3, %%mm7 \n\t"
4298 "packuswb %%mm1, %%mm7 \n\t"
4300 "pand " AMASK5_3_0 ", %%mm7 \n\t" // _amask5_3_0 (was _ActiveMask)
4302 "psllq $24, %%mm7 \n\t" // shift bytes to 2nd group of
4306 "paddb (%1," PCX ",), %%mm7 \n\t" // add Paeth predictor + Raw(x)
4308 "movq %%mm7, (%1," PCX ",) \n\t" // write back updated value
4309 "movq %%mm7, %%mm1 \n\t"
4314 "pxor %%mm7, %%mm7 \n\t"
4329 "pcmpgtw %%mm5, %%mm7 \n\t" // create mask pbv bytes < 0
4330 "pand %%mm4, %%mm0 \n\t" // only pav bytes < 0 in mm7
4331 "pand %%mm5, %%mm7 \n\t" // only pbv bytes < 0 in mm0
4333 "psubw %%mm7, %%mm5 \n\t"
4335 "psubw %%mm7, %%mm5 \n\t"
4338 "pand %%mm6, %%mm0 \n\t" // only pav bytes < 0 in mm7
4341 "movq %%mm4, %%mm7 \n\t"
4343 "pcmpgtw %%mm5, %%mm7 \n\t" // pa > pb?
4344 "movq %%mm7, %%mm0 \n\t"
4347 // use mm7 mask to merge pa & pb
4348 "pand %%mm7, %%mm5 \n\t"
4350 "pandn %%mm4, %%mm7 \n\t"
4352 "paddw %%mm5, %%mm7 \n\t"
4354 "pcmpgtw %%mm6, %%mm7 \n\t" // pab > pc?
4355 "pand %%mm7, %%mm3 \n\t"
4356 "pandn %%mm0, %%mm7 \n\t"
4357 "paddw %%mm3, %%mm7 \n\t"
4359 "packuswb %%mm7, %%mm1 \n\t"
4384 , "%mm4", "%mm5", "%mm6", "%mm7"
4412 "pxor %%mm7, %%mm7 \n\t"
4421 "pand %%mm4, %%mm0 \n\t" // only pav bytes < 0 in mm7
4422 "pcmpgtw %%mm5, %%mm7 \n\t" // create mask pbv bytes < 0
4424 "pand %%mm5, %%mm7 \n\t" // only pbv bytes < 0 in mm0
4426 "psubw %%mm7, %%mm5 \n\t"
4429 "pand %%mm6, %%mm0 \n\t" // only pav bytes < 0 in mm7
4430 "psubw %%mm7, %%mm5 \n\t"
4433 "movq %%mm4, %%mm7 \n\t"
4435 "pcmpgtw %%mm5, %%mm7 \n\t" // pa > pb?
4436 "movq %%mm7, %%mm0 \n\t"
4437 // use mm7 mask to merge pa & pb
4438 "pand %%mm7, %%mm5 \n\t"
4441 "pandn %%mm4, %%mm7 \n\t"
4443 "paddw %%mm5, %%mm7 \n\t"
4446 "pcmpgtw %%mm6, %%mm7 \n\t" // pab > pc?
4448 "pand %%mm7, %%mm3 \n\t"
4449 "pandn %%mm0, %%mm7 \n\t"
4450 "paddw %%mm3, %%mm7 \n\t"
4452 "packuswb %%mm1, %%mm7 \n\t"
4455 "pand " AMASK4_4_0 ", %%mm7 \n\t" // _amask4_4_0 (was _ActiveMask)
4458 "paddb (%1," PCX ",), %%mm7 \n\t" // add Paeth predictor + Raw(x)
4460 "movq %%mm7, (%1," PCX ",) \n\t" // write back updated value
4461 "movq %%mm7, %%mm1 \n\t" // now mm1 will be used as
4471 "pxor %%mm7, %%mm7 \n\t"
4480 "pand %%mm4, %%mm0 \n\t" // only pav bytes < 0 in mm7
4481 "pcmpgtw %%mm5, %%mm7 \n\t" // create mask pbv bytes < 0
4483 "pand %%mm5, %%mm7 \n\t" // only pbv bytes < 0 in mm0
4485 "psubw %%mm7, %%mm5 \n\t"
4488 "pand %%mm6, %%mm0 \n\t" // only pav bytes < 0 in mm7
4489 "psubw %%mm7, %%mm5 \n\t"
4492 "movq %%mm4, %%mm7 \n\t"
4494 "pcmpgtw %%mm5, %%mm7 \n\t" // pa > pb?
4495 "movq %%mm7, %%mm0 \n\t"
4496 // use mm7 mask to merge pa & pb
4497 "pand %%mm7, %%mm5 \n\t"
4500 "pandn %%mm4, %%mm7 \n\t"
4502 "paddw %%mm5, %%mm7 \n\t"
4505 "pcmpgtw %%mm6, %%mm7 \n\t" // pab > pc?
4507 "pand %%mm7, %%mm3 \n\t"
4508 "pandn %%mm0, %%mm7 \n\t"
4510 "paddw %%mm3, %%mm7 \n\t"
4514 "packuswb %%mm7, %%mm1 \n\t"
4533 , "%mm4", "%mm5", "%mm6", "%mm7"
4690 "pxor %%mm7, %%mm7 \n\t"
4699 "pand %%mm4, %%mm0 \n\t" // only pav bytes < 0 in mm7
4700 "pcmpgtw %%mm5, %%mm7 \n\t" // create mask pbv bytes < 0
4702 "pand %%mm5, %%mm7 \n\t" // only pbv bytes < 0 in mm0
4704 "psubw %%mm7, %%mm5 \n\t"
4707 "pand %%mm6, %%mm0 \n\t" // only pav bytes < 0 in mm7
4708 "psubw %%mm7, %%mm5 \n\t"
4711 "movq %%mm4, %%mm7 \n\t"
4713 "pcmpgtw %%mm5, %%mm7 \n\t" // pa > pb?
4714 "movq %%mm7, %%mm0 \n\t"
4715 // use mm7 mask to merge pa & pb
4716 "pand %%mm7, %%mm5 \n\t"
4719 "pandn %%mm4, %%mm7 \n\t"
4721 "paddw %%mm5, %%mm7 \n\t"
4724 "pcmpgtw %%mm6, %%mm7 \n\t" // pab > pc?
4726 "pand %%mm7, %%mm3 \n\t"
4727 "pandn %%mm0, %%mm7 \n\t"
4728 "paddw %%mm3, %%mm7 \n\t"
4730 "packuswb %%mm1, %%mm7 \n\t"
4733 "pand " AMASK4_4_0 ", %%mm7 \n\t" // _amask4_4_0 (was _ActiveMask)
4737 "paddb (%1," PCX ",), %%mm7 \n\t" // add Paeth predictor + Raw(x)
4739 "movq %%mm7
4742 "movq %%mm7, %%mm5 \n\t"
4756 "pxor %%mm7, %%mm7 \n\t"
4765 "pand %%mm4, %%mm0 \n\t" // only pav bytes < 0 in mm7
4766 "pcmpgtw %%mm5, %%mm7 \n\t" // create mask pbv bytes < 0
4768 "pand %%mm5, %%mm7 \n\t" // only pbv bytes < 0 in mm0
4770 "psubw %%mm7, %%mm5 \n\t"
4773 "pand %%mm6, %%mm0 \n\t" // only pav bytes < 0 in mm7
4774 "psubw %%mm7, %%mm5 \n\t"
4777 "movq %%mm4, %%mm7 \n\t"
4779 "pcmpgtw %%mm5, %%mm7 \n\t" // pa > pb?
4780 "movq %%mm7, %%mm0 \n\t"
4781 // use mm7 mask to merge pa & pb
4782 "pand %%mm7, %%mm5 \n\t"
4785 "pandn %%mm4, %%mm7 \n\t"
4787 "paddw %%mm5, %%mm7 \n\t"
4790 "pcmpgtw %%mm6, %%mm7 \n\t" // pab > pc?
4792 "pand %%mm7, %%mm3 \n\t"
4793 "pandn %%mm0, %%mm7 \n\t"
4795 "paddw %%mm3, %%mm7 \n\t"
4799 "packuswb %%mm7, %%mm1 \n\t"
4818 , "%mm4", "%mm5", "%mm6", "%mm7"
4846 "pxor %%mm7, %%mm7 \n\t"
4855 "pand %%mm4, %%mm0 \n\t" // only pav bytes < 0 in mm7
4856 "pcmpgtw %%mm5, %%mm7 \n\t" // create mask pbv bytes < 0
4858 "pand %%mm5, %%mm7 \n\t" // only pbv bytes < 0 in mm0
4860 "psubw %%mm7, %%mm5 \n\t"
4863 "pand %%mm6, %%mm0 \n\t" // only pav bytes < 0 in mm7
4864 "psubw %%mm7, %%mm5 \n\t"
4867 "movq %%mm4, %%mm7 \n\t"
4869 "pcmpgtw %%mm5, %%mm7 \n\t" // pa > pb?
4870 "movq %%mm7, %%mm0 \n\t"
4871 // use mm7 mask to merge pa & pb
4872 "pand %%mm7, %%mm5 \n\t"
4875 "pandn %%mm4, %%mm7 \n\t"
4877 "paddw %%mm5, %%mm7 \n\t"
4880 "pcmpgtw %%mm6, %%mm7 \n\t" // pab > pc?
4882 "pand %%mm7, %%mm3 \n\t"
4883 "pandn %%mm0, %%mm7 \n\t"
4884 "paddw %%mm3, %%mm7 \n\t"
4886 "packuswb %%mm1, %%mm7 \n\t"
4889 "pand " AMASK4_4_0 ", %%mm7 \n\t" // _amask4_4_0 (was _ActiveMask)
4892 "paddb (%1," PCX ",), %%mm7 \n\t" // add Paeth predictor + Raw(x)
4894 "movq %%mm7, (%1," PCX ",) \n\t" // write back updated value
4905 "pxor %%mm7, %%mm7 \n\t"
4914 "pand %%mm4, %%mm0 \n\t" // only pav bytes < 0 in mm7
4915 "pcmpgtw %%mm5, %%mm7 \n\t" // create mask pbv bytes < 0
4917 "pand %%mm5, %%mm7 \n\t" // only pbv bytes < 0 in mm0
4919 "psubw %%mm7, %%mm5 \n\t"
4922 "pand %%mm6, %%mm0 \n\t" // only pav bytes < 0 in mm7
4923 "psubw %%mm7, %%mm5 \n\t"
4926 "movq %%mm4, %%mm7 \n\t"
4928 "pcmpgtw %%mm5, %%mm7 \n\t" // pa > pb?
4929 "movq %%mm7, %%mm0 \n\t"
4930 // use mm7 mask to merge pa & pb
4931 "pand %%mm7, %%mm5 \n\t"
4934 "pandn %%mm4, %%mm7 \n\t"
4936 "paddw %%mm5, %%mm7 \n\t"
4939 "pcmpgtw %%mm6, %%mm7 \n\t" // pab > pc?
4941 "pand %%mm7, %%mm3 \n\t"
4942 "pandn %%mm0, %%mm7 \n\t"
4944 "paddw %%mm3, %%mm7 \n\t"
4948 "packuswb %%mm7, %%mm1 \n\t"
4967 , "%mm4", "%mm5", "%mm6", "%mm7"
5201 "movq " AMASK2_3_3 ", %%mm7 \n\t" // _amask2_3_3
5207 "movq %%mm7, %%mm6 \n\t"
5224 "pand %%mm7, %%mm1 \n\t" // mask to use 2nd active group
5250 : "%mm0", "%mm1", "%mm6", "%mm7" // clobber list
5351 "movq " AMASK4_2_2 ", %%mm7 \n\t" // _amask4_2_2
5354 "movq %%mm7, %%mm6 \n\t"
5377 "pand %%mm7, %%mm1 \n\t" // mask to use 2nd active group
5409 , "%mm7"
5475 "movq -8(%1," PDX ",), %%mm7 \n\t"
5481 "paddb %%mm7, %%mm0 \n\t"
5506 "movq 56(%1," PDX ",), %%mm7 \n\t" // load Sub(x) for 8th 8 bytes
5509 "paddb %%mm6, %%mm7 \n\t"
5511 "movq %%mm7, -8(%1," PDX ",) \n\t" // write Raw(x) for 8th 8 bytes
5520 "paddb %%mm7, %%mm0 \n\t"
5523 "movq %%mm0, %%mm7 \n\t" // move calculated Raw(x) data
5524 "jb sub_8lpA \n\t" // to mm7 to be new Raw(x-bpp)
5541 , "%mm4", "%mm5", "%mm6", "%mm7"
5667 "movq 24(%1," PBX ",), %%mm7 \n\t"
5671 "paddb %%mm7, %%mm6 \n\t"
5683 "movq 56(%1," PBX ",), %%mm7 \n\t"
5688 "paddb %%mm7, %%mm6 \n\t"
5743 , "%mm4", "%mm5", "%mm6", "%mm7"