http://bugs.freedesktop.org/show_bug.cgi?id=12240


[EMAIL PROTECTED] changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |[EMAIL PROTECTED]




------- Comment #3 from [EMAIL PROTECTED]  2007-12-28 13:19 PST -------
Okay,

I've just spend 1 1/2 day debugging this! And I've got both issues fixed.

To be clear the 2 issues I'm talking about are:
1) Wrong rendering with current git (and with Fedora's packages because those
   have the r300 part updated to a recent git snapshot for rs480 support).

2) Maniadrive being slow with mesa >= 7.0 (official release, clean build).


And now the fixes:


1) The wrong rendering is caused by the second chunk of this commit:
http://gitweb.freedesktop.org/?p=mesa/mesa.git;a=commitdiff;h=d7777f45981bf91d2cb31502ba078312b1b4cf13

If you revert the second chunk of this commit, then everything gets properly
rendered.


2) The slowness problem is caused by tnl/t_vp_build.c generating vertex
programs which use 14 temp variables, and the r300 has exactly 14 temp
registers (according to the current driver).

This becomes a problem because:
a) Certain ARB vertex instructions are emulated on the r300, and the emulation
   code needs a temp register too.
b) Even those vertex programs which do not use the troublesome ARB vertex
   instructions will not work because there is an of by one bug in the check if 
   there are enough registers.

I have a patch which fixes the t_vp_build.c code to not require more temp
registers then it actually needs, by allocating them only when needed and
freeing them asap. It takes 2 of the number of temp registers needed by the
generated code in the case of maniadrive, making maniadrive work even with the
off by one bug still present in the r300 code. I'll attach this patch right
away.

I'll write and attach a patch for the off by one bug next.

p.s.

Oliver I've added you to the CC as we have had some mail exchanges about the
slowness bug in the past, I wrongly blamed your vertprog rewrite for it :)


-- 
Configure bugmail: http://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
--
_______________________________________________
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to