summaryrefslogtreecommitdiff
path: root/src/mesa/state_tracker
diff options
context:
space:
mode:
Diffstat (limited to 'src/mesa/state_tracker')
-rw-r--r--src/mesa/state_tracker/st_cb_blit.c2
-rw-r--r--src/mesa/state_tracker/st_cb_viewport.c2
-rw-r--r--src/mesa/state_tracker/st_context.c2
-rw-r--r--src/mesa/state_tracker/st_debug.c18
-rw-r--r--src/mesa/state_tracker/st_extensions.c7
-rw-r--r--src/mesa/state_tracker/st_mesa_to_tgsi.c13
6 files changed, 25 insertions, 19 deletions
diff --git a/src/mesa/state_tracker/st_cb_blit.c b/src/mesa/state_tracker/st_cb_blit.c
index d7c086f569..1f73f503f6 100644
--- a/src/mesa/state_tracker/st_cb_blit.c
+++ b/src/mesa/state_tracker/st_cb_blit.c
@@ -33,7 +33,6 @@
#include "main/imports.h"
#include "main/image.h"
#include "main/macros.h"
-#include "shader/program.h"
#include "st_context.h"
#include "st_texture.h"
@@ -41,7 +40,6 @@
#include "st_cb_fbo.h"
#include "util/u_blit.h"
-#include "util/u_inlines.h"
void
diff --git a/src/mesa/state_tracker/st_cb_viewport.c b/src/mesa/state_tracker/st_cb_viewport.c
index d10b0b2531..a1fe45cac4 100644
--- a/src/mesa/state_tracker/st_cb_viewport.c
+++ b/src/mesa/state_tracker/st_cb_viewport.c
@@ -29,11 +29,9 @@
#include "st_context.h"
#include "st_cb_viewport.h"
-#include "pipe/p_context.h"
#include "pipe/p_state.h"
#include "pipe/p_defines.h"
#include "util/u_atomic.h"
-#include "util/u_debug.h"
/**
* Cast wrapper to convert a GLframebuffer to an st_framebuffer.
diff --git a/src/mesa/state_tracker/st_context.c b/src/mesa/state_tracker/st_context.c
index 605a337b55..0bf030e987 100644
--- a/src/mesa/state_tracker/st_context.c
+++ b/src/mesa/state_tracker/st_context.c
@@ -59,8 +59,6 @@
#include "st_program.h"
#include "pipe/p_context.h"
#include "util/u_inlines.h"
-#include "util/u_rect.h"
-#include "util/u_surface.h"
#include "cso_cache/cso_context.h"
diff --git a/src/mesa/state_tracker/st_debug.c b/src/mesa/state_tracker/st_debug.c
index 2da27fc4bd..0b3768341e 100644
--- a/src/mesa/state_tracker/st_debug.c
+++ b/src/mesa/state_tracker/st_debug.c
@@ -45,15 +45,15 @@
int ST_DEBUG = 0;
static const struct debug_named_value st_debug_flags[] = {
- { "mesa", DEBUG_MESA },
- { "tgsi", DEBUG_TGSI },
- { "constants",DEBUG_CONSTANTS },
- { "pipe", DEBUG_PIPE },
- { "tex", DEBUG_TEX },
- { "fallback", DEBUG_FALLBACK },
- { "screen", DEBUG_SCREEN },
- { "query", DEBUG_QUERY },
- {NULL, 0}
+ { "mesa", DEBUG_MESA, NULL },
+ { "tgsi", DEBUG_TGSI, NULL },
+ { "constants",DEBUG_CONSTANTS, NULL },
+ { "pipe", DEBUG_PIPE, NULL },
+ { "tex", DEBUG_TEX, NULL },
+ { "fallback", DEBUG_FALLBACK, NULL },
+ { "screen", DEBUG_SCREEN, NULL },
+ { "query", DEBUG_QUERY, NULL },
+ DEBUG_NAMED_VALUE_END
};
#endif
diff --git a/src/mesa/state_tracker/st_extensions.c b/src/mesa/state_tracker/st_extensions.c
index 810a0635b5..4093eedde9 100644
--- a/src/mesa/state_tracker/st_extensions.c
+++ b/src/mesa/state_tracker/st_extensions.c
@@ -373,6 +373,13 @@ void st_init_extensions(struct st_context *st)
ctx->Extensions.EXT_draw_buffers2 = GL_TRUE;
}
+ /* GL_ARB_half_float_vertex */
+ if (screen->is_format_supported(screen, PIPE_FORMAT_R16G16B16A16_FLOAT,
+ PIPE_BUFFER, 0,
+ PIPE_BIND_VERTEX_BUFFER, 0)) {
+ ctx->Extensions.ARB_half_float_vertex = GL_TRUE;
+ }
+
#if 0 /* not yet */
if (screen->get_param(screen, PIPE_CAP_INDEP_BLEND_FUNC)) {
ctx->Extensions.ARB_draw_buffers_blend = GL_TRUE;
diff --git a/src/mesa/state_tracker/st_mesa_to_tgsi.c b/src/mesa/state_tracker/st_mesa_to_tgsi.c
index 6df6cdfe03..35016d80e6 100644
--- a/src/mesa/state_tracker/st_mesa_to_tgsi.c
+++ b/src/mesa/state_tracker/st_mesa_to_tgsi.c
@@ -319,10 +319,15 @@ translate_src( struct st_translate *t,
if (SrcReg->RelAddr) {
src = ureg_src_indirect( src, ureg_src(t->address[0]));
- /* If SrcReg->Index was negative, it was set to zero in
- * src_register(). Reassign it now.
- */
- src.Index = SrcReg->Index;
+ if (SrcReg->File != PROGRAM_INPUT &&
+ SrcReg->File != PROGRAM_OUTPUT) {
+ /* If SrcReg->Index was negative, it was set to zero in
+ * src_register(). Reassign it now. But don't do this
+ * for input/output regs since they get remapped while
+ * const buffers don't.
+ */
+ src.Index = SrcReg->Index;
+ }
}
return src;