summaryrefslogtreecommitdiffstats
path: root/src/gallium
diff options
context:
space:
mode:
authorBen Skeggs <[email protected]>2008-08-07 11:19:15 +1000
committerBen Skeggs <[email protected]>2008-08-07 11:19:15 +1000
commit4b1c508f49a070f113929393423d6704f1ff18b6 (patch)
tree76803b434b75b438c44829ed55e1a19b208dde01 /src/gallium
parent7fde9febd6f212494730ebef916fe25c95d30be9 (diff)
parentbe66a8f43172327e3cdde27281e40377cacbb121 (diff)
Merge remote branch 'origin/gallium-0.1' into nouveau-gallium-0.1
Diffstat (limited to 'src/gallium')
-rw-r--r--src/gallium/auxiliary/cso_cache/cso_context.c2
-rw-r--r--src/gallium/auxiliary/draw/draw_pipe_aaline.c4
-rw-r--r--src/gallium/auxiliary/draw/draw_pipe_aapoint.c4
-rw-r--r--src/gallium/auxiliary/draw/draw_pipe_pstipple.c4
-rw-r--r--src/gallium/auxiliary/draw/draw_private.h4
-rw-r--r--src/gallium/auxiliary/draw/draw_vs_aos.c8
-rw-r--r--src/gallium/auxiliary/draw/draw_vs_aos_io.c6
-rw-r--r--src/gallium/auxiliary/draw/draw_vs_aos_machine.c6
-rw-r--r--src/gallium/auxiliary/draw/draw_vs_exec.c4
-rw-r--r--src/gallium/auxiliary/draw/draw_vs_llvm.c2
-rw-r--r--src/gallium/auxiliary/draw/draw_vs_sse.c4
-rw-r--r--src/gallium/auxiliary/gallivm/gallivm.cpp4
-rw-r--r--src/gallium/auxiliary/gallivm/gallivm_cpu.cpp4
-rw-r--r--src/gallium/auxiliary/gallivm/tgsitollvm.cpp10
-rw-r--r--src/gallium/auxiliary/tgsi/Makefile18
-rw-r--r--src/gallium/auxiliary/tgsi/SConscript24
-rw-r--r--src/gallium/auxiliary/tgsi/exec/Makefile2
-rw-r--r--src/gallium/auxiliary/tgsi/tgsi_build.c (renamed from src/gallium/auxiliary/tgsi/util/tgsi_build.c)0
-rw-r--r--src/gallium/auxiliary/tgsi/tgsi_build.h (renamed from src/gallium/auxiliary/tgsi/util/tgsi_build.h)0
-rw-r--r--src/gallium/auxiliary/tgsi/tgsi_dump.c (renamed from src/gallium/auxiliary/tgsi/util/tgsi_dump.c)23
-rw-r--r--src/gallium/auxiliary/tgsi/tgsi_dump.h (renamed from src/gallium/auxiliary/tgsi/util/tgsi_dump.h)0
-rw-r--r--src/gallium/auxiliary/tgsi/tgsi_dump_c.c (renamed from src/gallium/auxiliary/tgsi/util/tgsi_dump_c.c)0
-rw-r--r--src/gallium/auxiliary/tgsi/tgsi_dump_c.h (renamed from src/gallium/auxiliary/tgsi/util/tgsi_dump_c.h)0
-rw-r--r--src/gallium/auxiliary/tgsi/tgsi_exec.c (renamed from src/gallium/auxiliary/tgsi/exec/tgsi_exec.c)4
-rw-r--r--src/gallium/auxiliary/tgsi/tgsi_exec.h (renamed from src/gallium/auxiliary/tgsi/exec/tgsi_exec.h)0
-rw-r--r--src/gallium/auxiliary/tgsi/tgsi_iterate.c (renamed from src/gallium/auxiliary/tgsi/util/tgsi_iterate.c)0
-rw-r--r--src/gallium/auxiliary/tgsi/tgsi_iterate.h (renamed from src/gallium/auxiliary/tgsi/util/tgsi_iterate.h)2
-rw-r--r--src/gallium/auxiliary/tgsi/tgsi_parse.c (renamed from src/gallium/auxiliary/tgsi/util/tgsi_parse.c)0
-rw-r--r--src/gallium/auxiliary/tgsi/tgsi_parse.h (renamed from src/gallium/auxiliary/tgsi/util/tgsi_parse.h)0
-rw-r--r--src/gallium/auxiliary/tgsi/tgsi_sanity.c (renamed from src/gallium/auxiliary/tgsi/util/tgsi_sanity.c)0
-rw-r--r--src/gallium/auxiliary/tgsi/tgsi_sanity.h (renamed from src/gallium/auxiliary/tgsi/util/tgsi_sanity.h)0
-rw-r--r--src/gallium/auxiliary/tgsi/tgsi_scan.c (renamed from src/gallium/auxiliary/tgsi/util/tgsi_scan.c)4
-rw-r--r--src/gallium/auxiliary/tgsi/tgsi_scan.h (renamed from src/gallium/auxiliary/tgsi/util/tgsi_scan.h)0
-rw-r--r--[-rwxr-xr-x]src/gallium/auxiliary/tgsi/tgsi_sse2.c (renamed from src/gallium/auxiliary/tgsi/exec/tgsi_sse2.c)4
-rw-r--r--[-rwxr-xr-x]src/gallium/auxiliary/tgsi/tgsi_sse2.h (renamed from src/gallium/auxiliary/tgsi/exec/tgsi_sse2.h)0
-rw-r--r--src/gallium/auxiliary/tgsi/tgsi_text.c (renamed from src/gallium/auxiliary/tgsi/util/tgsi_text.c)0
-rw-r--r--src/gallium/auxiliary/tgsi/tgsi_text.h (renamed from src/gallium/auxiliary/tgsi/util/tgsi_text.h)0
-rw-r--r--src/gallium/auxiliary/tgsi/tgsi_transform.c (renamed from src/gallium/auxiliary/tgsi/util/tgsi_transform.c)0
-rw-r--r--src/gallium/auxiliary/tgsi/tgsi_transform.h (renamed from src/gallium/auxiliary/tgsi/util/tgsi_transform.h)4
-rw-r--r--src/gallium/auxiliary/tgsi/tgsi_util.c (renamed from src/gallium/auxiliary/tgsi/util/tgsi_util.c)0
-rw-r--r--src/gallium/auxiliary/tgsi/tgsi_util.h (renamed from src/gallium/auxiliary/tgsi/util/tgsi_util.h)0
-rw-r--r--src/gallium/auxiliary/util/p_tile.c46
-rw-r--r--src/gallium/auxiliary/util/u_gen_mipmap.c6
-rw-r--r--src/gallium/auxiliary/util/u_simple_shaders.c6
-rw-r--r--src/gallium/drivers/cell/ppu/cell_context.h2
-rw-r--r--src/gallium/drivers/cell/ppu/cell_state_shader.c2
-rw-r--r--src/gallium/drivers/cell/spu/spu_exec.c4
-rw-r--r--src/gallium/drivers/cell/spu/spu_exec.h2
-rw-r--r--src/gallium/drivers/cell/spu/spu_util.c4
-rw-r--r--src/gallium/drivers/i915simple/i915_context.h2
-rw-r--r--src/gallium/drivers/i915simple/i915_fpc_translate.c4
-rw-r--r--src/gallium/drivers/i915simple/i915_state.c2
-rw-r--r--src/gallium/drivers/i965simple/brw_context.h2
-rw-r--r--src/gallium/drivers/i965simple/brw_sf.c2
-rw-r--r--src/gallium/drivers/i965simple/brw_shader_info.c2
-rw-r--r--src/gallium/drivers/i965simple/brw_state.c4
-rw-r--r--src/gallium/drivers/i965simple/brw_vs_emit.c2
-rw-r--r--src/gallium/drivers/i965simple/brw_wm_decl.c2
-rw-r--r--src/gallium/drivers/i965simple/brw_wm_glsl.c2
-rw-r--r--src/gallium/drivers/softpipe/sp_fs_exec.c4
-rw-r--r--src/gallium/drivers/softpipe/sp_fs_llvm.c2
-rw-r--r--src/gallium/drivers/softpipe/sp_fs_sse.c4
-rw-r--r--src/gallium/drivers/softpipe/sp_headers.h2
-rw-r--r--src/gallium/drivers/softpipe/sp_screen.c4
-rw-r--r--src/gallium/drivers/softpipe/sp_state.h2
-rw-r--r--src/gallium/drivers/softpipe/sp_state_fs.c4
-rw-r--r--src/gallium/drivers/softpipe/sp_tex_sample.c30
-rw-r--r--src/gallium/include/pipe/p_defines.h3
-rw-r--r--src/gallium/include/pipe/p_util.h2
-rw-r--r--src/gallium/state_trackers/python/gallium.i4
70 files changed, 182 insertions, 126 deletions
diff --git a/src/gallium/auxiliary/cso_cache/cso_context.c b/src/gallium/auxiliary/cso_cache/cso_context.c
index af4af8ac1d4..86e4d46a200 100644
--- a/src/gallium/auxiliary/cso_cache/cso_context.c
+++ b/src/gallium/auxiliary/cso_cache/cso_context.c
@@ -38,7 +38,7 @@
#include "pipe/p_state.h"
#include "pipe/p_util.h"
#include "pipe/p_inlines.h"
-#include "tgsi/util/tgsi_parse.h"
+#include "tgsi/tgsi_parse.h"
#include "cso_cache/cso_context.h"
#include "cso_cache/cso_cache.h"
diff --git a/src/gallium/auxiliary/draw/draw_pipe_aaline.c b/src/gallium/auxiliary/draw/draw_pipe_aaline.c
index 3dd7ee19fd1..991304b2c84 100644
--- a/src/gallium/auxiliary/draw/draw_pipe_aaline.c
+++ b/src/gallium/auxiliary/draw/draw_pipe_aaline.c
@@ -38,8 +38,8 @@
#include "pipe/p_defines.h"
#include "pipe/p_shader_tokens.h"
-#include "tgsi/util/tgsi_transform.h"
-#include "tgsi/util/tgsi_dump.h"
+#include "tgsi/tgsi_transform.h"
+#include "tgsi/tgsi_dump.h"
#include "draw_context.h"
#include "draw_private.h"
diff --git a/src/gallium/auxiliary/draw/draw_pipe_aapoint.c b/src/gallium/auxiliary/draw/draw_pipe_aapoint.c
index 87fd3036493..13b44015212 100644
--- a/src/gallium/auxiliary/draw/draw_pipe_aapoint.c
+++ b/src/gallium/auxiliary/draw/draw_pipe_aapoint.c
@@ -44,8 +44,8 @@
#include "pipe/p_defines.h"
#include "pipe/p_shader_tokens.h"
-#include "tgsi/util/tgsi_transform.h"
-#include "tgsi/util/tgsi_dump.h"
+#include "tgsi/tgsi_transform.h"
+#include "tgsi/tgsi_dump.h"
#include "draw_context.h"
#include "draw_vs.h"
diff --git a/src/gallium/auxiliary/draw/draw_pipe_pstipple.c b/src/gallium/auxiliary/draw/draw_pipe_pstipple.c
index 1f63f943656..d3bd9baddd6 100644
--- a/src/gallium/auxiliary/draw/draw_pipe_pstipple.c
+++ b/src/gallium/auxiliary/draw/draw_pipe_pstipple.c
@@ -40,8 +40,8 @@
#include "pipe/p_defines.h"
#include "pipe/p_shader_tokens.h"
-#include "tgsi/util/tgsi_transform.h"
-#include "tgsi/util/tgsi_dump.h"
+#include "tgsi/tgsi_transform.h"
+#include "tgsi/tgsi_dump.h"
#include "draw_context.h"
#include "draw_pipe.h"
diff --git a/src/gallium/auxiliary/draw/draw_private.h b/src/gallium/auxiliary/draw/draw_private.h
index 7bd1e670b4b..626a2e3e304 100644
--- a/src/gallium/auxiliary/draw/draw_private.h
+++ b/src/gallium/auxiliary/draw/draw_private.h
@@ -44,8 +44,8 @@
#include "pipe/p_state.h"
#include "pipe/p_defines.h"
-#include "tgsi/exec/tgsi_exec.h"
-#include "tgsi/util/tgsi_scan.h"
+#include "tgsi/tgsi_exec.h"
+#include "tgsi/tgsi_scan.h"
struct pipe_context;
diff --git a/src/gallium/auxiliary/draw/draw_vs_aos.c b/src/gallium/auxiliary/draw/draw_vs_aos.c
index 1f926b3e850..441877d46f0 100644
--- a/src/gallium/auxiliary/draw/draw_vs_aos.c
+++ b/src/gallium/auxiliary/draw/draw_vs_aos.c
@@ -31,10 +31,10 @@
#include "pipe/p_util.h"
#include "pipe/p_shader_tokens.h"
-#include "tgsi/util/tgsi_parse.h"
-#include "tgsi/util/tgsi_util.h"
-#include "tgsi/exec/tgsi_exec.h"
-#include "tgsi/util/tgsi_dump.h"
+#include "tgsi/tgsi_parse.h"
+#include "tgsi/tgsi_util.h"
+#include "tgsi/tgsi_exec.h"
+#include "tgsi/tgsi_dump.h"
#include "draw_vs.h"
#include "draw_vs_aos.h"
diff --git a/src/gallium/auxiliary/draw/draw_vs_aos_io.c b/src/gallium/auxiliary/draw/draw_vs_aos_io.c
index 8e834501a4c..eda677cc62c 100644
--- a/src/gallium/auxiliary/draw/draw_vs_aos_io.c
+++ b/src/gallium/auxiliary/draw/draw_vs_aos_io.c
@@ -28,9 +28,9 @@
#include "pipe/p_util.h"
#include "pipe/p_shader_tokens.h"
-#include "tgsi/util/tgsi_parse.h"
-#include "tgsi/util/tgsi_util.h"
-#include "tgsi/exec/tgsi_exec.h"
+#include "tgsi/tgsi_parse.h"
+#include "tgsi/tgsi_util.h"
+#include "tgsi/tgsi_exec.h"
#include "draw_vs.h"
#include "draw_vs_aos.h"
#include "draw_vertex.h"
diff --git a/src/gallium/auxiliary/draw/draw_vs_aos_machine.c b/src/gallium/auxiliary/draw/draw_vs_aos_machine.c
index 6a54917ae38..e029b7b4bb5 100644
--- a/src/gallium/auxiliary/draw/draw_vs_aos_machine.c
+++ b/src/gallium/auxiliary/draw/draw_vs_aos_machine.c
@@ -31,9 +31,9 @@
#include "pipe/p_util.h"
#include "pipe/p_shader_tokens.h"
-#include "tgsi/util/tgsi_parse.h"
-#include "tgsi/util/tgsi_util.h"
-#include "tgsi/exec/tgsi_exec.h"
+#include "tgsi/tgsi_parse.h"
+#include "tgsi/tgsi_util.h"
+#include "tgsi/tgsi_exec.h"
#include "draw_vs.h"
#include "draw_vs_aos.h"
#include "draw_vertex.h"
diff --git a/src/gallium/auxiliary/draw/draw_vs_exec.c b/src/gallium/auxiliary/draw/draw_vs_exec.c
index 4501877efcf..e26903d8cc5 100644
--- a/src/gallium/auxiliary/draw/draw_vs_exec.c
+++ b/src/gallium/auxiliary/draw/draw_vs_exec.c
@@ -38,8 +38,8 @@
#include "draw_context.h"
#include "draw_vs.h"
-#include "tgsi/util/tgsi_parse.h"
-#include "tgsi/util/tgsi_scan.h"
+#include "tgsi/tgsi_parse.h"
+#include "tgsi/tgsi_scan.h"
struct exec_vertex_shader {
diff --git a/src/gallium/auxiliary/draw/draw_vs_llvm.c b/src/gallium/auxiliary/draw/draw_vs_llvm.c
index c63bd51a106..fc03473b919 100644
--- a/src/gallium/auxiliary/draw/draw_vs_llvm.c
+++ b/src/gallium/auxiliary/draw/draw_vs_llvm.c
@@ -38,7 +38,7 @@
#include "draw_context.h"
#include "draw_vs.h"
-#include "tgsi/util/tgsi_parse.h"
+#include "tgsi/tgsi_parse.h"
#ifdef MESA_LLVM
diff --git a/src/gallium/auxiliary/draw/draw_vs_sse.c b/src/gallium/auxiliary/draw/draw_vs_sse.c
index c3189c707db..61f0c084c38 100644
--- a/src/gallium/auxiliary/draw/draw_vs_sse.c
+++ b/src/gallium/auxiliary/draw/draw_vs_sse.c
@@ -45,8 +45,8 @@
#include "rtasm/rtasm_cpu.h"
#include "rtasm/rtasm_x86sse.h"
-#include "tgsi/exec/tgsi_sse2.h"
-#include "tgsi/util/tgsi_parse.h"
+#include "tgsi/tgsi_sse2.h"
+#include "tgsi/tgsi_parse.h"
#define SSE_MAX_VERTICES 4
diff --git a/src/gallium/auxiliary/gallivm/gallivm.cpp b/src/gallium/auxiliary/gallivm/gallivm.cpp
index 77900e342b1..29adeea47de 100644
--- a/src/gallium/auxiliary/gallivm/gallivm.cpp
+++ b/src/gallium/auxiliary/gallivm/gallivm.cpp
@@ -42,8 +42,8 @@
#include "pipe/p_context.h"
#include "pipe/p_shader_tokens.h"
-#include "tgsi/exec/tgsi_exec.h"
-#include "tgsi/util/tgsi_dump.h"
+#include "tgsi/tgsi_exec.h"
+#include "tgsi/tgsi_dump.h"
#include <llvm/Module.h>
#include <llvm/CallingConv.h>
diff --git a/src/gallium/auxiliary/gallivm/gallivm_cpu.cpp b/src/gallium/auxiliary/gallivm/gallivm_cpu.cpp
index 857c190f7b6..cf5b9788375 100644
--- a/src/gallium/auxiliary/gallivm/gallivm_cpu.cpp
+++ b/src/gallium/auxiliary/gallivm/gallivm_cpu.cpp
@@ -43,8 +43,8 @@
#include "pipe/p_shader_tokens.h"
#include "pipe/p_util.h"
-#include "tgsi/exec/tgsi_exec.h"
-#include "tgsi/util/tgsi_dump.h"
+#include "tgsi/tgsi_exec.h"
+#include "tgsi/tgsi_dump.h"
#include <llvm/Module.h>
#include <llvm/CallingConv.h>
diff --git a/src/gallium/auxiliary/gallivm/tgsitollvm.cpp b/src/gallium/auxiliary/gallivm/tgsitollvm.cpp
index 98014bdaa15..b14e2affd6f 100644
--- a/src/gallium/auxiliary/gallivm/tgsitollvm.cpp
+++ b/src/gallium/auxiliary/gallivm/tgsitollvm.cpp
@@ -10,11 +10,11 @@
#include "pipe/p_shader_tokens.h"
-#include "tgsi/util/tgsi_parse.h"
-#include "tgsi/exec/tgsi_exec.h"
-#include "tgsi/util/tgsi_util.h"
-#include "tgsi/util/tgsi_build.h"
-#include "tgsi/util/tgsi_dump.h"
+#include "tgsi/tgsi_parse.h"
+#include "tgsi/tgsi_exec.h"
+#include "tgsi/tgsi_util.h"
+#include "tgsi/tgsi_build.h"
+#include "tgsi/tgsi_dump.h"
#include <llvm/Module.h>
diff --git a/src/gallium/auxiliary/tgsi/Makefile b/src/gallium/auxiliary/tgsi/Makefile
index 9c4b9676511..bbeff1304d1 100644
--- a/src/gallium/auxiliary/tgsi/Makefile
+++ b/src/gallium/auxiliary/tgsi/Makefile
@@ -4,15 +4,15 @@ include $(TOP)/configs/current
LIBNAME = tgsi
C_SOURCES = \
- exec/tgsi_exec.c \
- exec/tgsi_sse2.c \
- util/tgsi_iterate.c \
- util/tgsi_build.c \
- util/tgsi_dump.c \
- util/tgsi_parse.c \
- util/tgsi_scan.c \
- util/tgsi_transform.c \
- util/tgsi_util.c
+ tgsi_build.c \
+ tgsi_dump.c \
+ tgsi_exec.c \
+ tgsi_iterate.c \
+ tgsi_parse.c \
+ tgsi_scan.c \
+ tgsi_sse2.c \
+ tgsi_transform.c \
+ tgsi_util.c
include ../../Makefile.template
diff --git a/src/gallium/auxiliary/tgsi/SConscript b/src/gallium/auxiliary/tgsi/SConscript
index 3bbfa1be547..03982e21943 100644
--- a/src/gallium/auxiliary/tgsi/SConscript
+++ b/src/gallium/auxiliary/tgsi/SConscript
@@ -3,18 +3,18 @@ Import('*')
tgsi = env.ConvenienceLibrary(
target = 'tgsi',
source = [
- 'exec/tgsi_exec.c',
- 'exec/tgsi_sse2.c',
- 'util/tgsi_build.c',
- 'util/tgsi_dump.c',
- 'util/tgsi_dump_c.c',
- 'util/tgsi_iterate.c',
- 'util/tgsi_parse.c',
- 'util/tgsi_sanity.c',
- 'util/tgsi_scan.c',
- 'util/tgsi_text.c',
- 'util/tgsi_transform.c',
- 'util/tgsi_util.c',
+ 'tgsi_build.c',
+ 'tgsi_dump.c',
+ 'tgsi_dump_c.c',
+ 'tgsi_exec.c',
+ 'tgsi_iterate.c',
+ 'tgsi_parse.c',
+ 'tgsi_sanity.c',
+ 'tgsi_scan.c',
+ 'tgsi_sse2.c',
+ 'tgsi_text.c',
+ 'tgsi_transform.c',
+ 'tgsi_util.c',
])
auxiliaries.insert(0, tgsi)
diff --git a/src/gallium/auxiliary/tgsi/exec/Makefile b/src/gallium/auxiliary/tgsi/exec/Makefile
deleted file mode 100644
index 451911a3545..00000000000
--- a/src/gallium/auxiliary/tgsi/exec/Makefile
+++ /dev/null
@@ -1,2 +0,0 @@
-default:
- cd .. ; make
diff --git a/src/gallium/auxiliary/tgsi/util/tgsi_build.c b/src/gallium/auxiliary/tgsi/tgsi_build.c
index 742ef14c352..742ef14c352 100644
--- a/src/gallium/auxiliary/tgsi/util/tgsi_build.c
+++ b/src/gallium/auxiliary/tgsi/tgsi_build.c
diff --git a/src/gallium/auxiliary/tgsi/util/tgsi_build.h b/src/gallium/auxiliary/tgsi/tgsi_build.h
index ed258302487..ed258302487 100644
--- a/src/gallium/auxiliary/tgsi/util/tgsi_build.h
+++ b/src/gallium/auxiliary/tgsi/tgsi_build.h
diff --git a/src/gallium/auxiliary/tgsi/util/tgsi_dump.c b/src/gallium/auxiliary/tgsi/tgsi_dump.c
index d2e6375212f..0eedb1c91e3 100644
--- a/src/gallium/auxiliary/tgsi/util/tgsi_dump.c
+++ b/src/gallium/auxiliary/tgsi/tgsi_dump.c
@@ -265,16 +265,6 @@ static const char *modulate_names[TGSI_MODULATE_COUNT] =
};
static void
-_dump_register_prefix(
- uint file,
- uint first,
- uint last )
-{
-
-
-}
-
-static void
_dump_register(
uint file,
int first,
@@ -332,7 +322,7 @@ void
tgsi_dump_declaration(
const struct tgsi_full_declaration *decl )
{
- TXT( "\nDCL " );
+ TXT( "DCL " );
_dump_register(
decl->Declaration.File,
@@ -354,6 +344,8 @@ tgsi_dump_declaration(
TXT( ", " );
ENM( decl->Declaration.Interpolate, interpolate_names );
+
+ EOL();
}
static boolean
@@ -371,7 +363,7 @@ tgsi_dump_immediate(
{
uint i;
- TXT( "\nIMM " );
+ TXT( "IMM " );
ENM( imm->Immediate.DataType, immediate_type_names );
TXT( " { " );
@@ -388,6 +380,8 @@ tgsi_dump_immediate(
TXT( ", " );
}
TXT( " }" );
+
+ EOL();
}
static boolean
@@ -407,7 +401,6 @@ tgsi_dump_instruction(
uint i;
boolean first_reg = TRUE;
- EOL();
UID( instno );
CHR( ':' );
ENM( inst->Instruction.Opcode, opcode_names );
@@ -534,6 +527,8 @@ tgsi_dump_instruction(
UID( inst->InstructionExtLabel.Label );
break;
}
+
+ EOL();
}
static boolean
@@ -551,11 +546,11 @@ static boolean
prolog(
struct tgsi_iterate_context *ctx )
{
- EOL();
ENM( ctx->processor.Processor, processor_type_names );
UID( ctx->version.MajorVersion );
CHR( '.' );
UID( ctx->version.MinorVersion );
+ EOL();
return TRUE;
}
diff --git a/src/gallium/auxiliary/tgsi/util/tgsi_dump.h b/src/gallium/auxiliary/tgsi/tgsi_dump.h
index 51c230b5db4..51c230b5db4 100644
--- a/src/gallium/auxiliary/tgsi/util/tgsi_dump.h
+++ b/src/gallium/auxiliary/tgsi/tgsi_dump.h
diff --git a/src/gallium/auxiliary/tgsi/util/tgsi_dump_c.c b/src/gallium/auxiliary/tgsi/tgsi_dump_c.c
index eabd74bd6d9..eabd74bd6d9 100644
--- a/src/gallium/auxiliary/tgsi/util/tgsi_dump_c.c
+++ b/src/gallium/auxiliary/tgsi/tgsi_dump_c.c
diff --git a/src/gallium/auxiliary/tgsi/util/tgsi_dump_c.h b/src/gallium/auxiliary/tgsi/tgsi_dump_c.h
index d91cd35b3b7..d91cd35b3b7 100644
--- a/src/gallium/auxiliary/tgsi/util/tgsi_dump_c.h
+++ b/src/gallium/auxiliary/tgsi/tgsi_dump_c.h
diff --git a/src/gallium/auxiliary/tgsi/exec/tgsi_exec.c b/src/gallium/auxiliary/tgsi/tgsi_exec.c
index 001a4c4b152..8b430548bca 100644
--- a/src/gallium/auxiliary/tgsi/exec/tgsi_exec.c
+++ b/src/gallium/auxiliary/tgsi/tgsi_exec.c
@@ -54,8 +54,8 @@
#include "pipe/p_state.h"
#include "pipe/p_util.h"
#include "pipe/p_shader_tokens.h"
-#include "tgsi/util/tgsi_parse.h"
-#include "tgsi/util/tgsi_util.h"
+#include "tgsi/tgsi_parse.h"
+#include "tgsi/tgsi_util.h"
#include "tgsi_exec.h"
#define TILE_TOP_LEFT 0
diff --git a/src/gallium/auxiliary/tgsi/exec/tgsi_exec.h b/src/gallium/auxiliary/tgsi/tgsi_exec.h
index 4f30650b07b..4f30650b07b 100644
--- a/src/gallium/auxiliary/tgsi/exec/tgsi_exec.h
+++ b/src/gallium/auxiliary/tgsi/tgsi_exec.h
diff --git a/src/gallium/auxiliary/tgsi/util/tgsi_iterate.c b/src/gallium/auxiliary/tgsi/tgsi_iterate.c
index 5371a88b964..5371a88b964 100644
--- a/src/gallium/auxiliary/tgsi/util/tgsi_iterate.c
+++ b/src/gallium/auxiliary/tgsi/tgsi_iterate.c
diff --git a/src/gallium/auxiliary/tgsi/util/tgsi_iterate.h b/src/gallium/auxiliary/tgsi/tgsi_iterate.h
index f5bebf89b82..ec7b85bf63d 100644
--- a/src/gallium/auxiliary/tgsi/util/tgsi_iterate.h
+++ b/src/gallium/auxiliary/tgsi/tgsi_iterate.h
@@ -29,7 +29,7 @@
#define TGSI_ITERATE_H
#include "pipe/p_shader_tokens.h"
-#include "tgsi/util/tgsi_parse.h"
+#include "tgsi/tgsi_parse.h"
#if defined __cplusplus
extern "C" {
diff --git a/src/gallium/auxiliary/tgsi/util/tgsi_parse.c b/src/gallium/auxiliary/tgsi/tgsi_parse.c
index d16f0cdcad4..d16f0cdcad4 100644
--- a/src/gallium/auxiliary/tgsi/util/tgsi_parse.c
+++ b/src/gallium/auxiliary/tgsi/tgsi_parse.c
diff --git a/src/gallium/auxiliary/tgsi/util/tgsi_parse.h b/src/gallium/auxiliary/tgsi/tgsi_parse.h
index 054350712d8..054350712d8 100644
--- a/src/gallium/auxiliary/tgsi/util/tgsi_parse.h
+++ b/src/gallium/auxiliary/tgsi/tgsi_parse.h
diff --git a/src/gallium/auxiliary/tgsi/util/tgsi_sanity.c b/src/gallium/auxiliary/tgsi/tgsi_sanity.c
index 2e3ec96b5b5..2e3ec96b5b5 100644
--- a/src/gallium/auxiliary/tgsi/util/tgsi_sanity.c
+++ b/src/gallium/auxiliary/tgsi/tgsi_sanity.c
diff --git a/src/gallium/auxiliary/tgsi/util/tgsi_sanity.h b/src/gallium/auxiliary/tgsi/tgsi_sanity.h
index ca45e94c7ad..ca45e94c7ad 100644
--- a/src/gallium/auxiliary/tgsi/util/tgsi_sanity.h
+++ b/src/gallium/auxiliary/tgsi/tgsi_sanity.h
diff --git a/src/gallium/auxiliary/tgsi/util/tgsi_scan.c b/src/gallium/auxiliary/tgsi/tgsi_scan.c
index 240aaaf362c..59bcf10b530 100644
--- a/src/gallium/auxiliary/tgsi/util/tgsi_scan.c
+++ b/src/gallium/auxiliary/tgsi/tgsi_scan.c
@@ -34,8 +34,8 @@
#include "tgsi_scan.h"
-#include "tgsi/util/tgsi_parse.h"
-#include "tgsi/util/tgsi_build.h"
+#include "tgsi/tgsi_parse.h"
+#include "tgsi/tgsi_build.h"
#include "pipe/p_util.h"
diff --git a/src/gallium/auxiliary/tgsi/util/tgsi_scan.h b/src/gallium/auxiliary/tgsi/tgsi_scan.h
index 5cb6efb3439..5cb6efb3439 100644
--- a/src/gallium/auxiliary/tgsi/util/tgsi_scan.h
+++ b/src/gallium/auxiliary/tgsi/tgsi_scan.h
diff --git a/src/gallium/auxiliary/tgsi/exec/tgsi_sse2.c b/src/gallium/auxiliary/tgsi/tgsi_sse2.c
index cdbdf5c8827..0cb1f11ef20 100755..100644
--- a/src/gallium/auxiliary/tgsi/exec/tgsi_sse2.c
+++ b/src/gallium/auxiliary/tgsi/tgsi_sse2.c
@@ -27,8 +27,8 @@
#include "pipe/p_util.h"
#include "pipe/p_shader_tokens.h"
-#include "tgsi/util/tgsi_parse.h"
-#include "tgsi/util/tgsi_util.h"
+#include "tgsi/tgsi_parse.h"
+#include "tgsi/tgsi_util.h"
#include "tgsi_exec.h"
#include "tgsi_sse2.h"
diff --git a/src/gallium/auxiliary/tgsi/exec/tgsi_sse2.h b/src/gallium/auxiliary/tgsi/tgsi_sse2.h
index af838b2a25b..af838b2a25b 100755..100644
--- a/src/gallium/auxiliary/tgsi/exec/tgsi_sse2.h
+++ b/src/gallium/auxiliary/tgsi/tgsi_sse2.h
diff --git a/src/gallium/auxiliary/tgsi/util/tgsi_text.c b/src/gallium/auxiliary/tgsi/tgsi_text.c
index 35cb3055bb2..35cb3055bb2 100644
--- a/src/gallium/auxiliary/tgsi/util/tgsi_text.c
+++ b/src/gallium/auxiliary/tgsi/tgsi_text.c
diff --git a/src/gallium/auxiliary/tgsi/util/tgsi_text.h b/src/gallium/auxiliary/tgsi/tgsi_text.h
index 8eeeeef1402..8eeeeef1402 100644
--- a/src/gallium/auxiliary/tgsi/util/tgsi_text.h
+++ b/src/gallium/auxiliary/tgsi/tgsi_text.h
diff --git a/src/gallium/auxiliary/tgsi/util/tgsi_transform.c b/src/gallium/auxiliary/tgsi/tgsi_transform.c
index 357f77b05a6..357f77b05a6 100644
--- a/src/gallium/auxiliary/tgsi/util/tgsi_transform.c
+++ b/src/gallium/auxiliary/tgsi/tgsi_transform.c
diff --git a/src/gallium/auxiliary/tgsi/util/tgsi_transform.h b/src/gallium/auxiliary/tgsi/tgsi_transform.h
index fcf85d603be..3da0b382711 100644
--- a/src/gallium/auxiliary/tgsi/util/tgsi_transform.h
+++ b/src/gallium/auxiliary/tgsi/tgsi_transform.h
@@ -31,8 +31,8 @@
#include "pipe/p_util.h"
#include "pipe/p_shader_tokens.h"
-#include "tgsi/util/tgsi_parse.h"
-#include "tgsi/util/tgsi_build.h"
+#include "tgsi/tgsi_parse.h"
+#include "tgsi/tgsi_build.h"
diff --git a/src/gallium/auxiliary/tgsi/util/tgsi_util.c b/src/gallium/auxiliary/tgsi/tgsi_util.c
index 09486e649e1..09486e649e1 100644
--- a/src/gallium/auxiliary/tgsi/util/tgsi_util.c
+++ b/src/gallium/auxiliary/tgsi/tgsi_util.c
diff --git a/src/gallium/auxiliary/tgsi/util/tgsi_util.h b/src/gallium/auxiliary/tgsi/tgsi_util.h
index 7877f345587..7877f345587 100644
--- a/src/gallium/auxiliary/tgsi/util/tgsi_util.h
+++ b/src/gallium/auxiliary/tgsi/tgsi_util.h
diff --git a/src/gallium/auxiliary/util/p_tile.c b/src/gallium/auxiliary/util/p_tile.c
index 1bf0d727332..2b6db43bee6 100644
--- a/src/gallium/auxiliary/util/p_tile.c
+++ b/src/gallium/auxiliary/util/p_tile.c
@@ -441,6 +441,46 @@ a8_get_tile_rgba(ubyte *src,
}
}
+/*** PIPE_FORMAT_R16_SNORM ***/
+
+static void
+r16_get_tile_rgba(short *src,
+ unsigned w, unsigned h,
+ float *p,
+ unsigned dst_stride)
+{
+ unsigned i, j;
+
+ for (i = 0; i < h; i++) {
+ float *pRow = p;
+ for (j = 0; j < w; j++, src++, pRow += 4) {
+ pRow[0] = SHORT_TO_FLOAT(src[0]);
+ pRow[1] =
+ pRow[2] = 0.0;
+ pRow[3] = 1.0;
+ }
+ p += dst_stride;
+ }
+}
+
+
+static void
+r16_put_tile_rgba(short *dst,
+ unsigned w, unsigned h,
+ const float *p,
+ unsigned src_stride)
+{
+ unsigned i, j;
+
+ for (i = 0; i < h; i++) {
+ const float *pRow = p;
+ for (j = 0; j < w; j++, dst++, pRow += 4) {
+ UNCLAMPED_FLOAT_TO_SHORT(dst[0], pRow[0]);
+ }
+ p += src_stride;
+ }
+}
+
/*** PIPE_FORMAT_R16G16B16A16_SNORM ***/
@@ -742,6 +782,9 @@ pipe_tile_raw_to_rgba(enum pipe_format format,
case PIPE_FORMAT_A8L8_UNORM:
a8_l8_get_tile_rgba((ushort *) src, w, h, dst, dst_stride);
break;
+ case PIPE_FORMAT_R16_SNORM:
+ r16_get_tile_rgba((short *) src, w, h, dst, dst_stride);
+ break;
case PIPE_FORMAT_R16G16B16A16_SNORM:
r16g16b16a16_get_tile_rgba((short *) src, w, h, dst, dst_stride);
break;
@@ -847,6 +890,9 @@ pipe_put_tile_rgba(struct pipe_surface *ps,
case PIPE_FORMAT_A8L8_UNORM:
/*a8_l8_put_tile_rgba((ushort *) packed, w, h, p, src_stride);*/
break;
+ case PIPE_FORMAT_R16_SNORM:
+ /*r16_put_tile_rgba((short *) packed, w, h, p, src_stride);*/
+ break;
case PIPE_FORMAT_R16G16B16A16_SNORM:
r16g16b16a16_put_tile_rgba((short *) packed, w, h, p, src_stride);
break;
diff --git a/src/gallium/auxiliary/util/u_gen_mipmap.c b/src/gallium/auxiliary/util/u_gen_mipmap.c
index 4999822068a..8713ff5d584 100644
--- a/src/gallium/auxiliary/util/u_gen_mipmap.c
+++ b/src/gallium/auxiliary/util/u_gen_mipmap.c
@@ -45,9 +45,9 @@
#include "util/u_gen_mipmap.h"
#include "util/u_simple_shaders.h"
-#include "tgsi/util/tgsi_build.h"
-#include "tgsi/util/tgsi_dump.h"
-#include "tgsi/util/tgsi_parse.h"
+#include "tgsi/tgsi_build.h"
+#include "tgsi/tgsi_dump.h"
+#include "tgsi/tgsi_parse.h"
#include "cso_cache/cso_context.h"
diff --git a/src/gallium/auxiliary/util/u_simple_shaders.c b/src/gallium/auxiliary/util/u_simple_shaders.c
index 505d93d7277..c34fb6ee334 100644
--- a/src/gallium/auxiliary/util/u_simple_shaders.c
+++ b/src/gallium/auxiliary/util/u_simple_shaders.c
@@ -43,9 +43,9 @@
#include "util/u_simple_shaders.h"
-#include "tgsi/util/tgsi_build.h"
-#include "tgsi/util/tgsi_dump.h"
-#include "tgsi/util/tgsi_parse.h"
+#include "tgsi/tgsi_build.h"
+#include "tgsi/tgsi_dump.h"
+#include "tgsi/tgsi_parse.h"
diff --git a/src/gallium/drivers/cell/ppu/cell_context.h b/src/gallium/drivers/cell/ppu/cell_context.h
index 8df41c1d4ca..f1d1ca89a97 100644
--- a/src/gallium/drivers/cell/ppu/cell_context.h
+++ b/src/gallium/drivers/cell/ppu/cell_context.h
@@ -37,7 +37,7 @@
#include "cell_winsys.h"
#include "cell/common.h"
#include "rtasm/rtasm_ppc_spe.h"
-#include "tgsi/util/tgsi_scan.h"
+#include "tgsi/tgsi_scan.h"
struct cell_vbuf_render;
diff --git a/src/gallium/drivers/cell/ppu/cell_state_shader.c b/src/gallium/drivers/cell/ppu/cell_state_shader.c
index c3a3fbd066d..f5707f2bb8b 100644
--- a/src/gallium/drivers/cell/ppu/cell_state_shader.c
+++ b/src/gallium/drivers/cell/ppu/cell_state_shader.c
@@ -30,7 +30,7 @@
#include "pipe/p_inlines.h"
#include "pipe/p_winsys.h"
#include "draw/draw_context.h"
-#include "tgsi/util/tgsi_parse.h"
+#include "tgsi/tgsi_parse.h"
#include "cell_context.h"
#include "cell_state.h"
diff --git a/src/gallium/drivers/cell/spu/spu_exec.c b/src/gallium/drivers/cell/spu/spu_exec.c
index 3a80df427da..96393732ed8 100644
--- a/src/gallium/drivers/cell/spu/spu_exec.c
+++ b/src/gallium/drivers/cell/spu/spu_exec.c
@@ -65,8 +65,8 @@
#include "pipe/p_state.h"
#include "pipe/p_util.h"
#include "pipe/p_shader_tokens.h"
-#include "tgsi/util/tgsi_parse.h"
-#include "tgsi/util/tgsi_util.h"
+#include "tgsi/tgsi_parse.h"
+#include "tgsi/tgsi_util.h"
#include "spu_exec.h"
#include "spu_main.h"
#include "spu_vertex_shader.h"
diff --git a/src/gallium/drivers/cell/spu/spu_exec.h b/src/gallium/drivers/cell/spu/spu_exec.h
index 3e17c490d20..c68f78f59b6 100644
--- a/src/gallium/drivers/cell/spu/spu_exec.h
+++ b/src/gallium/drivers/cell/spu/spu_exec.h
@@ -29,7 +29,7 @@
#define SPU_EXEC_H
#include "pipe/p_compiler.h"
-#include "tgsi/exec/tgsi_exec.h"
+#include "tgsi/tgsi_exec.h"
#if defined __cplusplus
extern "C" {
diff --git a/src/gallium/drivers/cell/spu/spu_util.c b/src/gallium/drivers/cell/spu/spu_util.c
index ea4274a0a7b..74ab2bbd1f0 100644
--- a/src/gallium/drivers/cell/spu/spu_util.c
+++ b/src/gallium/drivers/cell/spu/spu_util.c
@@ -1,8 +1,8 @@
#include "pipe/p_util.h"
#include "pipe/p_shader_tokens.h"
-#include "tgsi/util/tgsi_parse.h"
+#include "tgsi/tgsi_parse.h"
//#include "tgsi_build.h"
-#include "tgsi/util/tgsi_util.h"
+#include "tgsi/tgsi_util.h"
unsigned
tgsi_util_get_src_register_swizzle(
diff --git a/src/gallium/drivers/i915simple/i915_context.h b/src/gallium/drivers/i915simple/i915_context.h
index c8db4f608c5..3cdabe45f9d 100644
--- a/src/gallium/drivers/i915simple/i915_context.h
+++ b/src/gallium/drivers/i915simple/i915_context.h
@@ -35,7 +35,7 @@
#include "draw/draw_vertex.h"
-#include "tgsi/util/tgsi_scan.h"
+#include "tgsi/tgsi_scan.h"
#define I915_TEX_UNITS 8
diff --git a/src/gallium/drivers/i915simple/i915_fpc_translate.c b/src/gallium/drivers/i915simple/i915_fpc_translate.c
index 23cd909337e..04507ab8adc 100644
--- a/src/gallium/drivers/i915simple/i915_fpc_translate.c
+++ b/src/gallium/drivers/i915simple/i915_fpc_translate.c
@@ -34,8 +34,8 @@
#include "pipe/p_shader_tokens.h"
#include "util/u_string.h"
-#include "tgsi/util/tgsi_parse.h"
-#include "tgsi/util/tgsi_dump.h"
+#include "tgsi/tgsi_parse.h"
+#include "tgsi/tgsi_dump.h"
#include "draw/draw_vertex.h"
diff --git a/src/gallium/drivers/i915simple/i915_state.c b/src/gallium/drivers/i915simple/i915_state.c
index dbb33f26955..e8521b385ef 100644
--- a/src/gallium/drivers/i915simple/i915_state.c
+++ b/src/gallium/drivers/i915simple/i915_state.c
@@ -33,7 +33,7 @@
#include "pipe/p_winsys.h"
#include "pipe/p_util.h"
#include "pipe/p_inlines.h"
-#include "tgsi/util/tgsi_parse.h"
+#include "tgsi/tgsi_parse.h"
#include "i915_context.h"
#include "i915_reg.h"
diff --git a/src/gallium/drivers/i965simple/brw_context.h b/src/gallium/drivers/i965simple/brw_context.h
index 2cae7665f78..f00eb34f92b 100644
--- a/src/gallium/drivers/i965simple/brw_context.h
+++ b/src/gallium/drivers/i965simple/brw_context.h
@@ -38,7 +38,7 @@
#include "pipe/p_defines.h"
#include "pipe/p_state.h"
-#include "tgsi/util/tgsi_scan.h"
+#include "tgsi/tgsi_scan.h"
#include "brw_structs.h"
#include "brw_winsys.h"
diff --git a/src/gallium/drivers/i965simple/brw_sf.c b/src/gallium/drivers/i965simple/brw_sf.c
index 96f8fb87a3d..b82a2e143ba 100644
--- a/src/gallium/drivers/i965simple/brw_sf.c
+++ b/src/gallium/drivers/i965simple/brw_sf.c
@@ -36,7 +36,7 @@
#include "brw_util.h"
#include "brw_sf.h"
#include "brw_state.h"
-#include "tgsi/util/tgsi_parse.h"
+#include "tgsi/tgsi_parse.h"
static void compile_sf_prog( struct brw_context *brw,
diff --git a/src/gallium/drivers/i965simple/brw_shader_info.c b/src/gallium/drivers/i965simple/brw_shader_info.c
index fb3da92421e..30f37a99d46 100644
--- a/src/gallium/drivers/i965simple/brw_shader_info.c
+++ b/src/gallium/drivers/i965simple/brw_shader_info.c
@@ -3,7 +3,7 @@
#include "brw_state.h"
#include "pipe/p_util.h"
#include "pipe/p_shader_tokens.h"
-#include "tgsi/util/tgsi_parse.h"
+#include "tgsi/tgsi_parse.h"
/**
diff --git a/src/gallium/drivers/i965simple/brw_state.c b/src/gallium/drivers/i965simple/brw_state.c
index caeeba46300..27ca32843da 100644
--- a/src/gallium/drivers/i965simple/brw_state.c
+++ b/src/gallium/drivers/i965simple/brw_state.c
@@ -34,8 +34,8 @@
#include "pipe/p_util.h"
#include "pipe/p_inlines.h"
#include "pipe/p_shader_tokens.h"
-#include "tgsi/util/tgsi_dump.h"
-#include "tgsi/util/tgsi_parse.h"
+#include "tgsi/tgsi_dump.h"
+#include "tgsi/tgsi_parse.h"
#include "brw_context.h"
#include "brw_defines.h"
diff --git a/src/gallium/drivers/i965simple/brw_vs_emit.c b/src/gallium/drivers/i965simple/brw_vs_emit.c
index 81423e2d7d5..34dbc0624d5 100644
--- a/src/gallium/drivers/i965simple/brw_vs_emit.c
+++ b/src/gallium/drivers/i965simple/brw_vs_emit.c
@@ -33,7 +33,7 @@
#include "brw_vs.h"
#include "pipe/p_shader_tokens.h"
-#include "tgsi/util/tgsi_parse.h"
+#include "tgsi/tgsi_parse.h"
struct brw_prog_info {
unsigned num_temps;
diff --git a/src/gallium/drivers/i965simple/brw_wm_decl.c b/src/gallium/drivers/i965simple/brw_wm_decl.c
index bf1b4d961a7..e6f1a44817d 100644
--- a/src/gallium/drivers/i965simple/brw_wm_decl.c
+++ b/src/gallium/drivers/i965simple/brw_wm_decl.c
@@ -4,7 +4,7 @@
#include "brw_wm.h"
#include "pipe/p_util.h"
#include "pipe/p_shader_tokens.h"
-#include "tgsi/util/tgsi_parse.h"
+#include "tgsi/tgsi_parse.h"
static struct brw_reg alloc_tmp(struct brw_wm_compile *c)
{
diff --git a/src/gallium/drivers/i965simple/brw_wm_glsl.c b/src/gallium/drivers/i965simple/brw_wm_glsl.c
index 5c905838243..6a4a5aef092 100644
--- a/src/gallium/drivers/i965simple/brw_wm_glsl.c
+++ b/src/gallium/drivers/i965simple/brw_wm_glsl.c
@@ -4,7 +4,7 @@
#include "brw_wm.h"
#include "pipe/p_util.h"
#include "pipe/p_shader_tokens.h"
-#include "tgsi/util/tgsi_parse.h"
+#include "tgsi/tgsi_parse.h"
diff --git a/src/gallium/drivers/softpipe/sp_fs_exec.c b/src/gallium/drivers/softpipe/sp_fs_exec.c
index 0b199a2193e..cc171bbc396 100644
--- a/src/gallium/drivers/softpipe/sp_fs_exec.c
+++ b/src/gallium/drivers/softpipe/sp_fs_exec.c
@@ -36,8 +36,8 @@
#include "pipe/p_defines.h"
#include "pipe/p_util.h"
#include "pipe/p_inlines.h"
-#include "tgsi/exec/tgsi_exec.h"
-#include "tgsi/util/tgsi_parse.h"
+#include "tgsi/tgsi_exec.h"
+#include "tgsi/tgsi_parse.h"
struct sp_exec_fragment_shader {
struct sp_fragment_shader base;
diff --git a/src/gallium/drivers/softpipe/sp_fs_llvm.c b/src/gallium/drivers/softpipe/sp_fs_llvm.c
index 6e1d9280bb4..20226da78c3 100644
--- a/src/gallium/drivers/softpipe/sp_fs_llvm.c
+++ b/src/gallium/drivers/softpipe/sp_fs_llvm.c
@@ -38,7 +38,7 @@
#include "pipe/p_defines.h"
#include "pipe/p_util.h"
#include "pipe/p_inlines.h"
-#include "tgsi/exec/tgsi_sse2.h"
+#include "tgsi/tgsi_sse2.h"
#if 0
diff --git a/src/gallium/drivers/softpipe/sp_fs_sse.c b/src/gallium/drivers/softpipe/sp_fs_sse.c
index 69f7f960aa1..8b7da7c7473 100644
--- a/src/gallium/drivers/softpipe/sp_fs_sse.c
+++ b/src/gallium/drivers/softpipe/sp_fs_sse.c
@@ -36,8 +36,8 @@
#include "pipe/p_defines.h"
#include "pipe/p_util.h"
#include "pipe/p_inlines.h"
-#include "tgsi/exec/tgsi_exec.h"
-#include "tgsi/exec/tgsi_sse2.h"
+#include "tgsi/tgsi_exec.h"
+#include "tgsi/tgsi_sse2.h"
#ifdef PIPE_ARCH_X86
diff --git a/src/gallium/drivers/softpipe/sp_headers.h b/src/gallium/drivers/softpipe/sp_headers.h
index 3d9ede69bbd..ae2ee210fc9 100644
--- a/src/gallium/drivers/softpipe/sp_headers.h
+++ b/src/gallium/drivers/softpipe/sp_headers.h
@@ -32,7 +32,7 @@
#define SP_HEADERS_H
#include "pipe/p_state.h"
-#include "tgsi/exec/tgsi_exec.h"
+#include "tgsi/tgsi_exec.h"
#define PRIM_POINT 1
#define PRIM_LINE 2
diff --git a/src/gallium/drivers/softpipe/sp_screen.c b/src/gallium/drivers/softpipe/sp_screen.c
index 3f9d4b0ed31..ceb5616b5d0 100644
--- a/src/gallium/drivers/softpipe/sp_screen.c
+++ b/src/gallium/drivers/softpipe/sp_screen.c
@@ -72,6 +72,10 @@ softpipe_get_param(struct pipe_screen *screen, int param)
return PIPE_MAX_COLOR_BUFS;
case PIPE_CAP_OCCLUSION_QUERY:
return 1;
+ case PIPE_CAP_TEXTURE_MIRROR_CLAMP:
+ return 1;
+ case PIPE_CAP_TEXTURE_MIRROR_REPEAT:
+ return 1;
case PIPE_CAP_TEXTURE_SHADOW_MAP:
return 1;
case PIPE_CAP_MAX_TEXTURE_2D_LEVELS:
diff --git a/src/gallium/drivers/softpipe/sp_state.h b/src/gallium/drivers/softpipe/sp_state.h
index 701e02b295e..476ef3dc8fb 100644
--- a/src/gallium/drivers/softpipe/sp_state.h
+++ b/src/gallium/drivers/softpipe/sp_state.h
@@ -32,7 +32,7 @@
#define SP_STATE_H
#include "pipe/p_state.h"
-#include "tgsi/util/tgsi_scan.h"
+#include "tgsi/tgsi_scan.h"
#define SP_NEW_VIEWPORT 0x1
diff --git a/src/gallium/drivers/softpipe/sp_state_fs.c b/src/gallium/drivers/softpipe/sp_state_fs.c
index 901c8f83e75..76fe6bfef9f 100644
--- a/src/gallium/drivers/softpipe/sp_state_fs.c
+++ b/src/gallium/drivers/softpipe/sp_state_fs.c
@@ -35,8 +35,8 @@
#include "pipe/p_winsys.h"
#include "pipe/p_shader_tokens.h"
#include "draw/draw_context.h"
-#include "tgsi/util/tgsi_dump.h"
-#include "tgsi/util/tgsi_scan.h"
+#include "tgsi/tgsi_dump.h"
+#include "tgsi/tgsi_scan.h"
void *
diff --git a/src/gallium/drivers/softpipe/sp_tex_sample.c b/src/gallium/drivers/softpipe/sp_tex_sample.c
index be0b57d9fa6..ed150527e2d 100644
--- a/src/gallium/drivers/softpipe/sp_tex_sample.c
+++ b/src/gallium/drivers/softpipe/sp_tex_sample.c
@@ -40,7 +40,7 @@
#include "pipe/p_context.h"
#include "pipe/p_defines.h"
#include "pipe/p_util.h"
-#include "tgsi/exec/tgsi_exec.h"
+#include "tgsi/tgsi_exec.h"
/*
@@ -601,15 +601,25 @@ get_texel(struct tgsi_sampler *sampler,
unsigned face, unsigned level, int x, int y, int z,
float rgba[NUM_CHANNELS][QUAD_SIZE], unsigned j)
{
- const int tx = x % TILE_SIZE;
- const int ty = y % TILE_SIZE;
- const struct softpipe_cached_tile *tile
- = sp_get_cached_tile_tex(sampler->pipe, sampler->cache,
- x, y, z, face, level);
- rgba[0][j] = tile->data.color[ty][tx][0];
- rgba[1][j] = tile->data.color[ty][tx][1];
- rgba[2][j] = tile->data.color[ty][tx][2];
- rgba[3][j] = tile->data.color[ty][tx][3];
+ if (x < 0 || x >= sampler->texture->width[level] ||
+ y < 0 || y >= sampler->texture->height[level] ||
+ z < 0 || z >= sampler->texture->depth[level]) {
+ rgba[0][j] = sampler->state->border_color[0];
+ rgba[1][j] = sampler->state->border_color[1];
+ rgba[2][j] = sampler->state->border_color[2];
+ rgba[3][j] = sampler->state->border_color[3];
+ }
+ else {
+ const int tx = x % TILE_SIZE;
+ const int ty = y % TILE_SIZE;
+ const struct softpipe_cached_tile *tile
+ = sp_get_cached_tile_tex(sampler->pipe, sampler->cache,
+ x, y, z, face, level);
+ rgba[0][j] = tile->data.color[ty][tx][0];
+ rgba[1][j] = tile->data.color[ty][tx][1];
+ rgba[2][j] = tile->data.color[ty][tx][2];
+ rgba[3][j] = tile->data.color[ty][tx][3];
+ }
}
diff --git a/src/gallium/include/pipe/p_defines.h b/src/gallium/include/pipe/p_defines.h
index b1d100ef53c..bdc6d4ef468 100644
--- a/src/gallium/include/pipe/p_defines.h
+++ b/src/gallium/include/pipe/p_defines.h
@@ -281,6 +281,9 @@ enum pipe_texture_target {
#define PIPE_CAP_GUARD_BAND_TOP 21 /*< float */
#define PIPE_CAP_GUARD_BAND_RIGHT 22 /*< float */
#define PIPE_CAP_GUARD_BAND_BOTTOM 23 /*< float */
+#define PIPE_CAP_TEXTURE_MIRROR_CLAMP 24
+#define PIPE_CAP_TEXTURE_MIRROR_REPEAT 25
+
#ifdef __cplusplus
diff --git a/src/gallium/include/pipe/p_util.h b/src/gallium/include/pipe/p_util.h
index 892bd4bf8a8..eec413842fb 100644
--- a/src/gallium/include/pipe/p_util.h
+++ b/src/gallium/include/pipe/p_util.h
@@ -34,7 +34,7 @@
#include "p_format.h"
#include "p_pointer.h"
-#if defined(PIPE_SUBSYSTEM_WINDOWS_MINIPORT) || defined(PIPE_SUBSYSTEM_WINDOWS_CE)
+#if defined(PIPE_SUBSYSTEM_WINDOWS_MINIPORT)
__inline double ceil(double val)
{
double ceil_val;
diff --git a/src/gallium/state_trackers/python/gallium.i b/src/gallium/state_trackers/python/gallium.i
index 8d8b762ea57..284ecb827df 100644
--- a/src/gallium/state_trackers/python/gallium.i
+++ b/src/gallium/state_trackers/python/gallium.i
@@ -47,8 +47,8 @@
#include "cso_cache/cso_context.h"
#include "util/u_draw_quad.h"
#include "util/p_tile.h"
-#include "tgsi/util/tgsi_text.h"
-#include "tgsi/util/tgsi_dump.h"
+#include "tgsi/tgsi_text.h"
+#include "tgsi/tgsi_dump.h"
#include "st_device.h"
#include "st_sample.h"