summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/gallium/drivers/r600/r600_shader.c5
-rw-r--r--src/gallium/drivers/radeon/radeon_llvm.h6
2 files changed, 11 insertions, 0 deletions
diff --git a/src/gallium/drivers/r600/r600_shader.c b/src/gallium/drivers/r600/r600_shader.c
index 20bf79d4116..bf4877ae81d 100644
--- a/src/gallium/drivers/r600/r600_shader.c
+++ b/src/gallium/drivers/r600/r600_shader.c
@@ -1332,6 +1332,11 @@ static int r600_shader_from_tgsi(struct r600_screen *rscreen,
unsigned dump = 0;
memset(&radeon_llvm_ctx, 0, sizeof(radeon_llvm_ctx));
radeon_llvm_ctx.reserved_reg_count = ctx.file_offset[TGSI_FILE_INPUT];
+ radeon_llvm_ctx.type = ctx.type;
+ radeon_llvm_ctx.two_side = shader->two_side;
+ radeon_llvm_ctx.face_input = ctx.face_gpr;
+ radeon_llvm_ctx.r600_inputs = ctx.shader->input;
+ radeon_llvm_ctx.chip_class = ctx.bc->chip_class;
mod = r600_tgsi_llvm(&radeon_llvm_ctx, tokens);
if (debug_get_bool_option("R600_DUMP_SHADERS", FALSE)) {
dump = 1;
diff --git a/src/gallium/drivers/radeon/radeon_llvm.h b/src/gallium/drivers/radeon/radeon_llvm.h
index 7a32bb083b2..6118b118bb8 100644
--- a/src/gallium/drivers/radeon/radeon_llvm.h
+++ b/src/gallium/drivers/radeon/radeon_llvm.h
@@ -54,6 +54,12 @@ struct radeon_llvm_context {
struct lp_build_tgsi_soa_context soa;
+ unsigned chip_class;
+ unsigned type;
+ unsigned face_input;
+ unsigned two_side;
+ struct r600_shader_io * r600_inputs;
+
/*=== Front end configuration ===*/
/* Special Intrinsics */