Branch: Tag:

1999-08-13

1999-08-13 05:58:00 by Per Hedbor <ph@opera.com>

Working MMX layer operations for add and sub

Rev: src/modules/Image/layer_oper.h:1.7
Rev: src/modules/Image/layers.c:1.37

38: Inside #if undefined(L_LOGIC), #if defined(L_MMX_OPER) and #if defined(TRY_USE_MMX)
      while(num > 16)    { -  moveq_m2r(*source, mm0); -  moveq_m2r(source[8], mm1); +  movq_m2r(*source, mm0); +  source+=8; +  movq_m2r(*source, mm1); +  source += 8;    L_MMX_OPER(*sourcel, mm0); -  L_MMX_OPER(sourcel[8], mm1); /* paddusb_m2r */ -  moveq_r2m(mm0,*dest); -  moveq_r2m(mm1,dest[8]); -  source+=16; -  sourcel+=16; -  dest+=16; +  sourcel+=8; +  L_MMX_OPER(*sourcel, mm1); +  sourcel+=8; +  movq_r2m(mm0,*dest); +  dest += 8; +  movq_r2m(mm1,*dest); +  dest += 8; +  num-=16;    } -  +     if (num > 8)    {    movq_m2r(*source, mm0);
58: Inside #if undefined(L_LOGIC), #if defined(L_MMX_OPER) and #if defined(TRY_USE_MMX)
   dest+=8;    num-=8;    } +     emms();    while (num-->0)    {