aboutsummaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/lima/ir/pp/node_to_instr.c
diff options
context:
space:
mode:
authorAndreas Baierl <[email protected]>2019-04-26 15:06:13 +0200
committerQiang Yu <[email protected]>2019-04-29 02:46:44 +0000
commitc960323a81456b05570ed9647f19207e7733aa11 (patch)
treee1a5735c8d09c4b52b255584623df04aea49b4fd /src/gallium/drivers/lima/ir/pp/node_to_instr.c
parentb82de2b4d702789620f84c70577aa3e106d6ae4f (diff)
lima/ppir: Add gl_FragCoord handling
Treat gl_FragCoord variable as a system value and lower the w component with a nir pass. Add the necessary bits for correct codegen. Signed-off-by: Andreas Baierl <[email protected]> Reviewed-by: Qiang Yu <[email protected]>
Diffstat (limited to 'src/gallium/drivers/lima/ir/pp/node_to_instr.c')
-rw-r--r--src/gallium/drivers/lima/ir/pp/node_to_instr.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/gallium/drivers/lima/ir/pp/node_to_instr.c b/src/gallium/drivers/lima/ir/pp/node_to_instr.c
index 26d2c9868f6..b38fa3aa733 100644
--- a/src/gallium/drivers/lima/ir/pp/node_to_instr.c
+++ b/src/gallium/drivers/lima/ir/pp/node_to_instr.c
@@ -238,7 +238,8 @@ static bool ppir_do_node_to_instr(ppir_block *block, ppir_node *node)
load->dest.type = ppir_target_pipeline;
load->dest.pipeline = ppir_pipeline_reg_uniform;
}
- else if (node->op == ppir_op_load_varying) {
+ else if (node->op == ppir_op_load_varying ||
+ node->op == ppir_op_load_fragcoord) {
/* delay the load varying dup to scheduler */
if (!create_new_instr(block, node))
return false;