From d87f54f2254344a02a8f1b2e141c9894b3b74864 Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Mon, 30 Nov 2015 15:10:51 +1000 Subject: [PATCH] r600/shader: move get_temp and last_instruction helpers up These are required for tess to be used earlier. Signed-off-by: Dave Airlie --- src/gallium/drivers/r600/r600_shader.c | 36 ++++++++++++-------------- 1 file changed, 17 insertions(+), 19 deletions(-) diff --git a/src/gallium/drivers/r600/r600_shader.c b/src/gallium/drivers/r600/r600_shader.c index 4d59af224d1..284eeead3e4 100644 --- a/src/gallium/drivers/r600/r600_shader.c +++ b/src/gallium/drivers/r600/r600_shader.c @@ -354,6 +354,18 @@ static void r600_bytecode_src(struct r600_bytecode_alu_src *bc_src, const struct r600_shader_src *shader_src, unsigned chan); +static int tgsi_last_instruction(unsigned writemask) +{ + int i, lasti = 0; + + for (i = 0; i < 4; i++) { + if (writemask & (1 << i)) { + lasti = i; + } + } + return lasti; +} + static int tgsi_is_supported(struct r600_shader_ctx *ctx) { struct tgsi_full_instruction *i = &ctx->parse.FullToken.FullInstruction; @@ -659,6 +671,11 @@ static inline int get_address_file_reg(struct r600_shader_ctx *ctx, int index) return index > 0 ? ctx->bc->index_reg[index - 1] : ctx->bc->ar_reg; } +static int r600_get_temp(struct r600_shader_ctx *ctx) +{ + return ctx->temp_reg + ctx->max_driver_temp_used++; +} + static int vs_add_primid_output(struct r600_shader_ctx *ctx, int prim_id_sid) { int i; @@ -826,11 +843,6 @@ static int tgsi_declaration(struct r600_shader_ctx *ctx) return 0; } -static int r600_get_temp(struct r600_shader_ctx *ctx) -{ - return ctx->temp_reg + ctx->max_driver_temp_used++; -} - static int allocate_system_value_inputs(struct r600_shader_ctx *ctx, int gpr_offset) { struct tgsi_parse_context parse; @@ -2767,20 +2779,6 @@ static void tgsi_dst(struct r600_shader_ctx *ctx, } } -static int tgsi_last_instruction(unsigned writemask) -{ - int i, lasti = 0; - - for (i = 0; i < 4; i++) { - if (writemask & (1 << i)) { - lasti = i; - } - } - return lasti; -} - - - static int tgsi_op2_64_params(struct r600_shader_ctx *ctx, bool singledest, bool swap) { struct tgsi_full_instruction *inst = &ctx->parse.FullToken.FullInstruction; -- 2.30.2