Merge branch 'llvm-cliptest-viewport'
[mesa.git] / src / mesa / drivers / dri / r300 / r300_context.h
index 518d5cdbf4f5908a93ecc61091d9e81e411f70a0..349a3d412f17b86deddb3f3ed02a4e1703c46bfa 100644 (file)
@@ -43,7 +43,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 #include "radeon_common.h"
 
 #include "main/mtypes.h"
-#include "shader/prog_instruction.h"
+#include "program/prog_instruction.h"
 #include "compiler/radeon_code.h"
 
 struct r300_context;
@@ -355,7 +355,6 @@ struct r300_hw_state {
        struct radeon_state_atom zb_hiz_offset; /* (4F44) */
        struct radeon_state_atom zb_hiz_pitch;  /* (4F54) */
 
-       struct radeon_state_atom vap_flush;
        struct radeon_state_atom vpi;   /* vp instructions */
        struct radeon_state_atom vpp;   /* vp parameters */
        struct radeon_state_atom vps;   /* vertex point size (?) */
@@ -464,9 +463,9 @@ struct r300_swtcl_info {
 };
 
 struct r300_vtable {
-       void (* SetupRSUnit)(GLcontext *ctx);
-       void (* SetupFragmentShaderTextures)(GLcontext *ctx, int *tmu_mappings);
-       void (* SetupPixelShader)(GLcontext *ctx);
+       void (* SetupRSUnit)(struct gl_context *ctx);
+       void (* SetupFragmentShaderTextures)(struct gl_context *ctx, int *tmu_mappings);
+       void (* SetupPixelShader)(struct gl_context *ctx);
 };
 
 struct r300_vertex_buffer {
@@ -533,21 +532,27 @@ struct r300_context {
 
        uint32_t fallback;
 
+       struct {
+               struct r300_vertex_program_code vp_code;
+               struct rX00_fragment_program_code fp_code;
+       } blit;
+
        DECLARE_RENDERINPUTS(render_inputs_bitset);
 };
 
 #define R300_CONTEXT(ctx)              ((r300ContextPtr)(ctx->DriverCtx))
 
-extern void r300DestroyContext(__DRIcontextPrivate * driContextPriv);
-extern GLboolean r300CreateContext(const __GLcontextModes * glVisual,
-                                  __DRIcontextPrivate * driContextPriv,
+extern void r300DestroyContext(__DRIcontext * driContextPriv);
+extern GLboolean r300CreateContext(gl_api api,
+                                  const struct gl_config * glVisual,
+                                  __DRIcontext * driContextPriv,
                                   void *sharedContextPrivate);
 
 extern void r300InitShaderFuncs(struct dd_function_table *functions);
 
 extern void r300InitShaderFunctions(r300ContextPtr r300);
 
-extern void r300InitDraw(GLcontext *ctx);
+extern void r300InitDraw(struct gl_context *ctx);
 
 #define r300PackFloat32 radeonPackFloat32
 #define r300PackFloat24 radeonPackFloat24