Merge remote branch 'upstream/gallium-0.1' into nouveau-gallium-0.1
[mesa.git] / src / gallium / drivers / nv40 / nv40_state.h
index a02ea0c878172e25d0d384e5b87f1004b9ed0968..2b4225deb2e748006d51e86e0f206a44f040beef 100644 (file)
@@ -2,6 +2,7 @@
 #define __NV40_STATE_H__
 
 #include "pipe/p_state.h"
+#include "tgsi/util/tgsi_scan.h"
 
 struct nv40_sampler_state {
        uint32_t fmt;
@@ -25,7 +26,12 @@ struct nv40_vertex_program_data {
 struct nv40_vertex_program {
        struct pipe_shader_state pipe;
 
+       struct draw_vertex_shader *draw;
+
        boolean translated;
+
+       struct pipe_clip_state ucp;
+
        struct nv40_vertex_program_exec *insns;
        unsigned nr_insns;
        struct nv40_vertex_program_data *consts;
@@ -39,6 +45,7 @@ struct nv40_vertex_program {
 
        uint32_t ir;
        uint32_t or;
+       uint32_t clip_ctrl;
        struct nouveau_stateobj *so;
 };
 
@@ -49,6 +56,7 @@ struct nv40_fragment_program_data {
 
 struct nv40_fragment_program {
        struct pipe_shader_state pipe;
+       struct tgsi_shader_info info;
 
        boolean translated;
        unsigned samplers;