nir: Stop whacking gl_FrontFacing to a system value
We have a cap bit for gallium and a GLSL compiler flag to control this. Just trust what GLSL gives us and stop forcing it. In order for this to be safe, we have to advertise another cap in some of the gallium drivers. Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com> Reviewed-by: Eric Anholt <eric@anholt.net>
This commit is contained in:
@@ -460,13 +460,8 @@ nir_visitor::visit(ir_variable *ir)
|
||||
break;
|
||||
|
||||
case ir_var_shader_in:
|
||||
if (shader->info.stage == MESA_SHADER_FRAGMENT &&
|
||||
ir->data.location == VARYING_SLOT_FACE) {
|
||||
/* For whatever reason, GLSL IR makes gl_FrontFacing an input */
|
||||
var->data.location = SYSTEM_VALUE_FRONT_FACE;
|
||||
var->data.mode = nir_var_system_value;
|
||||
} else if (shader->info.stage == MESA_SHADER_GEOMETRY &&
|
||||
ir->data.location == VARYING_SLOT_PRIMITIVE_ID) {
|
||||
if (shader->info.stage == MESA_SHADER_GEOMETRY &&
|
||||
ir->data.location == VARYING_SLOT_PRIMITIVE_ID) {
|
||||
/* For whatever reason, GLSL IR makes gl_PrimitiveIDIn an input */
|
||||
var->data.location = SYSTEM_VALUE_PRIMITIVE_ID;
|
||||
var->data.mode = nir_var_system_value;
|
||||
|
||||
Reference in New Issue
Block a user