diff options
author | Ben Skeggs <skeggsb@gmail.com> | 2007-03-24 22:22:27 +1100 |
---|---|---|
committer | Ben Skeggs <skeggsb@gmail.com> | 2007-03-24 22:24:00 +1100 |
commit | ea3d11a3d8901d650eb2a858ce30abae2d20d278 (patch) | |
tree | 16f18e76fe4a37b85753112d1f5a5d5ea0070dd4 /src/mesa | |
parent | 8e1c3bd0b4c599bae5b64cd51cec1d74266f30fb (diff) |
nouveau: some swtcl fixes
Diffstat (limited to 'src/mesa')
-rw-r--r-- | src/mesa/drivers/dri/nouveau/nv10_swtcl.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/nouveau/nv10_swtcl.c b/src/mesa/drivers/dri/nouveau/nv10_swtcl.c index 32da40661b..3bc84d862d 100644 --- a/src/mesa/drivers/dri/nouveau/nv10_swtcl.c +++ b/src/mesa/drivers/dri/nouveau/nv10_swtcl.c @@ -315,6 +315,9 @@ static inline void nv10_render_line(GLcontext *ctx,GLuint v1,GLuint v2) GLuint vertsize = nmesa->vertex_size; GLuint size_dword = vertsize*(2)/4; + /* OUT_RINGp wants size in DWORDS */ + vertsize >>= 2; + nv10ExtendPrimitive(nmesa, size_dword); nv10StartPrimitive(nmesa,GL_LINES+1,size_dword); OUT_RINGp((nouveauVertex*)(vertptr+(v1*vertsize)),vertsize); @@ -329,6 +332,9 @@ static inline void nv10_render_triangle(GLcontext *ctx,GLuint v1,GLuint v2,GLuin GLuint vertsize = nmesa->vertex_size; GLuint size_dword = vertsize*(3)/4; + /* OUT_RINGp wants size in DWORDS */ + vertsize >>= 2; + nv10ExtendPrimitive(nmesa, size_dword); nv10StartPrimitive(nmesa,GL_TRIANGLES+1,size_dword); OUT_RINGp((nouveauVertex*)(vertptr+(v1*vertsize)),vertsize); @@ -344,6 +350,9 @@ static inline void nv10_render_quad(GLcontext *ctx,GLuint v1,GLuint v2,GLuint v3 GLuint vertsize = nmesa->vertex_size; GLuint size_dword = vertsize*(4)/4; + /* OUT_RINGp wants size in DWORDS */ + vertsize >>= 2; + nv10ExtendPrimitive(nmesa, size_dword); nv10StartPrimitive(nmesa,GL_QUADS+1,size_dword); OUT_RINGp((nouveauVertex*)(vertptr+(v1*vertsize)),vertsize); |