nouveau: new bufferobj code.
authorBen Skeggs <darktama@iinet.net.au>
Mon, 5 Feb 2007 13:39:50 +0000 (00:39 +1100)
committerBen Skeggs <darktama@iinet.net.au>
Mon, 5 Feb 2007 13:39:50 +0000 (00:39 +1100)
commite7654b22aa02636d17a88a9a5ee1eeb213d81f30
tree0ebd4a6c52f234f4b2eb17996882b99d2bc3c944
parent3805ccf02015e8127748e6f53ae9d7419ae3f633
nouveau: new bufferobj code.

The old code suffered from a number of issues, the most severe being that
with the Mesa VBO merge even swtcl used the driver's bufferobj interface.
On most VBO types (or non-AGP cards) the buffer ended up in vram, and
killed swtcl performance greatly.  All bufferobj's start in system memory
now, until they get referenced as a "real" VBO.

The other big change is that only potentially "damaged" areas are
uploaded/downloaded to/from the hardware.
src/mesa/drivers/dri/nouveau/nouveau_bufferobj.c
src/mesa/drivers/dri/nouveau/nouveau_bufferobj.h
src/mesa/drivers/dri/nouveau/nv30_fragprog.c