[Nouveau] nv50: shader generation patches

Christoph Bumiller e0425955 at student.tuwien.ac.at
Wed May 6 03:28:27 PDT 2009


Hi ! I've been trying to improve NV50 shader generation a bit the last couple of weeks, so here is
what I've produced. I don't know if it's usable for you or just a pile of horrible hacks, but at
least it makes some mesa demos render more correcly, p.e. the teapot (aside from mip-mapping issues
of the floor texture), arbfplight, and I think the gears also didn't appear as they should before,
and I hope it doesn't break others that worked.
I also tried playing neverball and neverputt, which at some point worked fine, but now it locks up
the GPU again after a certain (short) amount of time. That's probably not related to my
modifications, because it crashes without the patches as well (plus has some flickering and other
graphics errors). It seems to work OK if I run it with valgrind, though.
There also are and have been some random graphics errors that spam the kernel log with invalid
method NV50TCL_VERTEX_END, so if something doesn't look right, try to restart the program, or toggle
some options in the mesa demos (show help, etc.).

There might, as always, be some bugs in the patches, of course, and the they probably can't be
committed unmodified. I've not put them in the email text but as attachments because there's rather
many changes. There's a short description (commit log) in each patch, but I hope the code speaks for
itself, otherwise I'll provide more explanation / add more comments ... later.
These don't represent everything I've tried to improve, but the rest isn't in any usable shape yet.

If anyone who knows their way around the gallium code has time, please have a look and tell me what
you think. Thank you.

Christoph
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: patch-00.diff
Url: http://lists.freedesktop.org/archives/nouveau/attachments/20090506/5c5e2f51/attachment-0001.ksh 
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: patch-01.diff
Url: http://lists.freedesktop.org/archives/nouveau/attachments/20090506/5c5e2f51/attachment-0003.asc 
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: patch-02.diff
Url: http://lists.freedesktop.org/archives/nouveau/attachments/20090506/5c5e2f51/attachment-0002.txt 
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: patch-03.diff
Url: http://lists.freedesktop.org/archives/nouveau/attachments/20090506/5c5e2f51/attachment-0004.asc 
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: patch-04.diff
Url: http://lists.freedesktop.org/archives/nouveau/attachments/20090506/5c5e2f51/attachment-0003.txt 
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: patch-05.diff
Url: http://lists.freedesktop.org/archives/nouveau/attachments/20090506/5c5e2f51/attachment-0005.asc 


More information about the Nouveau mailing list