i965/program_cache: Cast the key to char * before adding key_size
[mesa.git] / src / mesa / drivers / dri / i965 / brw_wm.h
index 7e4bf35d089fd98d2da32084d66bea0ca1a4918a..86980c3dadc996eb8d703e5aba30554306ed2663 100644 (file)
 
 #include <stdbool.h>
 
-#include "program/prog_instruction.h"
 #include "brw_context.h"
-#include "brw_eu.h"
-#include "brw_program.h"
-
-/* A big lookup table is used to figure out which and how many
- * additional regs will inserted before the main payload in the WM
- * program execution.  These mainly relate to depth and stencil
- * processing and the early-depth-test optimization.
- */
-#define IZ_PS_KILL_ALPHATEST_BIT    0x1
-#define IZ_PS_COMPUTES_DEPTH_BIT    0x2
-#define IZ_DEPTH_WRITE_ENABLE_BIT   0x4
-#define IZ_DEPTH_TEST_ENABLE_BIT    0x8
-#define IZ_STENCIL_WRITE_ENABLE_BIT 0x10
-#define IZ_STENCIL_TEST_ENABLE_BIT  0x20
-#define IZ_BIT_MAX                  0x40
-
-#define AA_NEVER     0
-#define AA_SOMETIMES 1
-#define AA_ALWAYS    2
 
 #ifdef __cplusplus
 extern "C" {
 #endif
 
-struct nir_shader;
-
-/**
- * Compile a fragment shader.
- *
- * Returns the final assembly and the program's size.
- */
-const unsigned *brw_compile_fs(const struct brw_compiler *compiler,
-                               void *log_data,
-                               void *mem_ctx,
-                               const struct brw_wm_prog_key *key,
-                               struct brw_wm_prog_data *prog_data,
-                               const struct nir_shader *shader,
-                               struct gl_program *prog,
-                               int shader_time_index8,
-                               int shader_time_index16,
-                               bool use_rep_send,
-                               unsigned *final_assembly_size,
-                               char **error_str);
-
-GLboolean brw_link_shader(struct gl_context *ctx, struct gl_shader_program *prog);
-struct gl_shader *brw_new_shader(struct gl_context *ctx, GLuint name, GLuint type);
-
-bool brw_color_buffer_write_enabled(struct brw_context *brw);
-bool brw_codegen_wm_prog(struct brw_context *brw,
-                         struct gl_shader_program *prog,
-                         struct brw_fragment_program *fp,
-                         struct brw_wm_prog_key *key);
-void brw_wm_debug_recompile(struct brw_context *brw,
-                            struct gl_shader_program *prog,
-                            const struct brw_wm_prog_key *key);
-
 void
 brw_upload_wm_prog(struct brw_context *brw);
 
+void
+brw_wm_populate_key(struct brw_context *brw,
+                    struct brw_wm_prog_key *key);
+void
+brw_wm_populate_default_key(const struct brw_compiler *compiler,
+                            struct brw_wm_prog_key *key,
+                            struct gl_program *prog);
+
 #ifdef __cplusplus
 } // extern "C"
 #endif