summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Stellard <thomas.stellard@amd.com>2012-04-16 19:29:25 -0400
committerTom Stellard <thomas.stellard@amd.com>2012-04-16 20:08:20 -0400
commit9471b88febb3215ee2c30456af05ddd48d1549b3 (patch)
treea6a70c3c7d2d52e45b282ac2626c7f5b5ac6cbce
parentc81f7315316f2546a2a615079fcbbabfd7ba625a (diff)
r600g: XXX: Some compute fixes after rebaser600-llvm-rc
-rw-r--r--src/gallium/drivers/r600/evergreen_compute.c8
-rw-r--r--src/gallium/drivers/r600/evergreen_compute_internal.c34
-rw-r--r--src/gallium/drivers/r600/r600_shader.c3
3 files changed, 4 insertions, 41 deletions
diff --git a/src/gallium/drivers/r600/evergreen_compute.c b/src/gallium/drivers/r600/evergreen_compute.c
index 4d98ceaa821..1b6811ae112 100644
--- a/src/gallium/drivers/r600/evergreen_compute.c
+++ b/src/gallium/drivers/r600/evergreen_compute.c
@@ -367,11 +367,9 @@ static void compute_emit_cs(struct r600_context *ctx)
{
struct radeon_winsys_cs *cs = ctx->cs;
// struct radeon_drm_cs *drm = (struct radeon_drm_cs *)(ctx->cs);
-
- r600_init_cs(ctx);
-
int i;
-
+
+ r600_emit_atom(ctx, &ctx->start_cs_cmd.atom);
struct r600_resource *onebo = NULL;
@@ -437,7 +435,7 @@ static void compute_emit_cs(struct r600_context *ctx)
COMPUTE_DBG("...\n");
- r600_init_cs(ctx);
+ r600_emit_atom(ctx, &ctx->start_cs_cmd.atom);
ctx->streamout_start = TRUE;
ctx->streamout_append_bitmask = ~0;
diff --git a/src/gallium/drivers/r600/evergreen_compute_internal.c b/src/gallium/drivers/r600/evergreen_compute_internal.c
index 1875ecef9d6..f669b9efc63 100644
--- a/src/gallium/drivers/r600/evergreen_compute_internal.c
+++ b/src/gallium/drivers/r600/evergreen_compute_internal.c
@@ -749,40 +749,6 @@ void evergreen_set_tex_resource(struct r600_pipe_compute *pipe, struct r600_pipe
evergreen_emit_force_reloc(res);
}
-static unsigned r600_tex_wrap(unsigned wrap)
-{
- switch (wrap) {
- default:
- case PIPE_TEX_WRAP_REPEAT:
- return V_03C000_SQ_TEX_WRAP;
- case PIPE_TEX_WRAP_CLAMP:
- return V_03C000_SQ_TEX_CLAMP_HALF_BORDER;
- case PIPE_TEX_WRAP_CLAMP_TO_EDGE:
- return V_03C000_SQ_TEX_CLAMP_LAST_TEXEL;
- case PIPE_TEX_WRAP_CLAMP_TO_BORDER:
- return V_03C000_SQ_TEX_CLAMP_BORDER;
- case PIPE_TEX_WRAP_MIRROR_REPEAT:
- return V_03C000_SQ_TEX_MIRROR;
- case PIPE_TEX_WRAP_MIRROR_CLAMP:
- return V_03C000_SQ_TEX_MIRROR_ONCE_HALF_BORDER;
- case PIPE_TEX_WRAP_MIRROR_CLAMP_TO_EDGE:
- return V_03C000_SQ_TEX_MIRROR_ONCE_LAST_TEXEL;
- case PIPE_TEX_WRAP_MIRROR_CLAMP_TO_BORDER:
- return V_03C000_SQ_TEX_MIRROR_ONCE_BORDER;
- }
-}
-
-static unsigned r600_tex_filter(unsigned filter)
-{
- switch (filter) {
- default:
- case PIPE_TEX_FILTER_NEAREST:
- return V_03C000_SQ_TEX_XY_FILTER_POINT;
- case PIPE_TEX_FILTER_LINEAR:
- return V_03C000_SQ_TEX_XY_FILTER_BILINEAR;
- }
-}
-
void evergreen_set_sampler_resource(struct r600_pipe_compute *pipe, struct compute_sampler_state *sampler, int id)
{
struct evergreen_compute_resource* res = get_empty_res(pipe, COMPUTE_RESOURCE_SAMPLER, id);
diff --git a/src/gallium/drivers/r600/r600_shader.c b/src/gallium/drivers/r600/r600_shader.c
index 87cc71616ac..e6bd2ea0bc6 100644
--- a/src/gallium/drivers/r600/r600_shader.c
+++ b/src/gallium/drivers/r600/r600_shader.c
@@ -233,14 +233,13 @@ int r600_compute_shader_create(struct pipe_context * ctx,
unsigned char * bytes;
unsigned byte_count;
struct r600_shader_ctx shader_ctx;
- const char * gpu_family = r600_llvm_gpu_string(r600_ctx->family);
unsigned dump = 0;
if (debug_get_bool_option("R600_DUMP_SHADERS", FALSE)) {
dump = 1;
}
- radeon_llvm_compile(mod, &bytes, &byte_count, gpu_family , dump);
+ r600_llvm_compile(mod, &bytes, &byte_count, r600_ctx->family , dump);
shader_ctx.bc = bytecode;
r600_bytecode_init(shader_ctx.bc, r600_ctx->chip_class, r600_ctx->family);
shader_ctx.bc->type = TGSI_PROCESSOR_COMPUTE;