Hello, Felix!
On Sun, 1 Dec 2002 17:04:43 +0100 you wrote:
> On Sun, 1 Dec 2002 18:43:10 +0300
> Nick Kurshev <[EMAIL PROTECTED]> wrote:
>
> [snip]
> > (gdb) info all-registers
> > eax 0x10 16
> > ecx 0x8289420 136877088
> > edx 0x8072a70 134687344
> > ebx 0x827c984 136825220
> > esp 0xbfffed98 0xbfffed98
> > ebp 0x81d0168 0x81d0168
> > esi 0x81d7c68 136150120
> > edi 0x8288720 136873760
> > eip 0x4046cb6a 0x4046cb6a
> > eflags 0x10202 66050
> > cs 0x23 35
> > ss 0x2b 43
> > ds 0x2b 43
> > es 0x2b 43
> > fs 0x2b 43
> > gs 0x2b 43
> > st0 0 (raw 0x00000000000000000000)
> > st1 9.15698587894439697265625 (raw 0x4002928303a000000000)
> > st2 -0.39477355778217315673828125 (raw 0xbffdca1fc28000000000)
> > st3 1.0389819958971111546475185605231673 (raw
>0x3fff84fd5caec1652000)
> > st4 1 (raw 0x3fff8000000000000000)
> > st5 1 (raw 0x3fff8000000000000000)
> > st6 0 (raw 0x00000000000000000000)
> > st7 0.81921756267547607421875 (raw 0x3ffed1b83e0000000000)
> > fctrl 0x7f 127
> > fstat 0x0 0
> > ftag 0x0 0
> > fiseg 0x0 0
> > fioff 0x0 0
> > foseg 0x20 32
> > fooff 0x0 0
> > fop 0x0 0
> > xmm0 {f = {0x0, 0x0, 0x0, 0x0}} {f = {-nan(0x7fffff),
> > -nan(0x7fffff), -nan(0x7fffff), -nan(0x7fffff)}}
> > xmm1 {f = {0x0, 0x0, 0x0, 0x0}} {f = {-nan(0x7fffff),
> > -nan(0x7fffff), -nan(0x7fffff), -nan(0x7fffff)}}
> > xmm2 {f = {0x0, 0x0, 0x0, 0x0}} {f = {-nan(0x7fffff),
> > -nan(0x7fffff), -nan(0x7fffff), -nan(0x7fffff)}}
> > xmm3 {f = {0x0, 0x0, 0x0, 0x0}} {f = {-nan(0x7fffff),
> > -nan(0x7fffff), -nan(0x7fffff), -nan(0x7fffff)}}
> > xmm4 {f = {0x0, 0x0, 0x0, 0x0}} {f = {-nan(0x7fffff),
> > -nan(0x7fffff), -nan(0x7fffff), -nan(0x7fffff)}}
> > xmm5 {f = {0x0, 0x0, 0x0, 0x0}} {f = {-nan(0x7fffff),
> > -nan(0x7fffff), -nan(0x7fffff), -nan(0x7fffff)}}
> > xmm6 {f = {0x0, 0x0, 0x0, 0x0}} {f = {-nan(0x7fffff),
> > -nan(0x7fffff), -nan(0x7fffff), -nan(0x7fffff)}}
> > xmm7 {f = {0x0, 0x0, 0x0, 0x0}} {f = {-nan(0x7fffff),
> > -nan(0x7fffff), -nan(0x7fffff), -nan(0x7fffff)}}
> > mxcsr 0x1f80 8064
>
> The xmm registers look like they were not saved in the core dump. Could
> you run glxgears inside gdb and get another register dump?
The result was the same! :(
I guess that SSE optimized function doesn't check length of parameters
and executes wrong code.
MOV_L ( EDX, REGOFF(V4F_COUNT, ECX) )
I think that (ecx % 4) != 0 in this place and it would be correctly
to limit SSE loop by less number of iteration:
and ~$3, %ecx
and execute scalar version for remaind of data.
>
> Felix
>
> __\|/__ ___ ___ ___
> __Tsch��_______\_6 6_/___/__ \___/__ \___/___\___You can do anything,___
> _____Felix_______\�/\ \_____\ \_____\ \______U___just not everything____
> [EMAIL PROTECTED] >o<__/ \___/ \___/ at the same time!
>
WBR! Nick
-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
_______________________________________________
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel