Subversion Repositories Kolibri OS

Rev

Rev 8666 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 8666 Rev 8719
Line 627... Line 74...
627
ret
74
        ret
628
.mask:
-
 
629
           dq 0xffffffff00ffffff
-
 
630
           dq 0xffffffffffffffff
-
 
631
-
 
632
-
 
633
-
 
634
-
 
635
-
 
636
-
 
637
-
 
638
-
 
639
-
 
640
-
 
641
-
 
642
-
 
Line -... Line 75...
-
 
75
 
-
 
76
horizontal_grd:  ; eax=x1 ebx=y1 ecx=x2
-
 
77
        cmp ecx,eax
-
 
78
        jg .m
-
 
79
        xchg ecx,eax
-
 
80
.m:
-
 
81
        sub ecx,eax
-
 
82
        jnz .nn
-
 
83
        add ecx,1
-
 
84
.nn:
-
 
85
        movd  edx,mm2
-
 
86
        imul  ebx,edx
-
 
87
        add   eax,ebx
-
 
88
        movd  edi,mm1
-
 
89
        lea   edi,[edi+eax*4]
-
 
90
        push  eax
-
 
91
        push  ebx
-
 
92
        movd  ebx,mm0
-
 
93
        lea   ebx,[ebx+eax*4]
-
 
94
.l:
-
 
95
      ;  movss    xmm4,xmm2     ; xmm2 - cur z
-
 
96
      ;  cmpnltss xmm4,[ebx]
-
 
97
      ;  movd     eax,xmm4
-
 
98
      ;  or       eax,eax
-
 
99
      ;  jnz      @f
-
 
100
        comiss   xmm2,[ebx]
-
 
101
        jng      @f
-
 
102
        movaps   xmm4,xmm0    ; xmm0 - cur col
-
 
103
        cvtps2dq xmm4,xmm4
-
 
104
        packssdw xmm4,xmm4
-
 
105
        packuswb xmm4,xmm4
-
 
106
        movd     [edi],xmm4
-
 
107
      @@:
-
 
108
        addss xmm2,xmm6
-
 
109
        addps xmm0,xmm5
-
 
110
        add   edi,4
-
 
111
        sub   ecx,1
-
 
112
        jnz   .l
-
 
113
        pop   ebx
-
 
114
        pop   eax