compiler: add SYSTEM_VALUE_VARYING_COORD
Used internally in freedreno/ir3 for the vec2 value that hw passes to shader to use as coordinate for bary.f (varying fetch) instruction. This is not the same as SYSTEM_VALUE_FRAG_COORD. Signed-off-by: Rob Clark <robdclark@gmail.com>
This commit is contained in:
@@ -244,6 +244,7 @@ gl_system_value_name(gl_system_value sysval)
|
|||||||
ENUM(SYSTEM_VALUE_DEVICE_INDEX),
|
ENUM(SYSTEM_VALUE_DEVICE_INDEX),
|
||||||
ENUM(SYSTEM_VALUE_VIEW_INDEX),
|
ENUM(SYSTEM_VALUE_VIEW_INDEX),
|
||||||
ENUM(SYSTEM_VALUE_VERTEX_CNT),
|
ENUM(SYSTEM_VALUE_VERTEX_CNT),
|
||||||
|
ENUM(SYSTEM_VALUE_VARYING_COORD),
|
||||||
};
|
};
|
||||||
STATIC_ASSERT(ARRAY_SIZE(names) == SYSTEM_VALUE_MAX);
|
STATIC_ASSERT(ARRAY_SIZE(names) == SYSTEM_VALUE_MAX);
|
||||||
return NAME(sysval);
|
return NAME(sysval);
|
||||||
|
@@ -601,6 +601,12 @@ typedef enum
|
|||||||
*/
|
*/
|
||||||
SYSTEM_VALUE_VERTEX_CNT,
|
SYSTEM_VALUE_VERTEX_CNT,
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Driver internal varying-coord, used for varying-fetch instructions.
|
||||||
|
* Not externally visible.
|
||||||
|
*/
|
||||||
|
SYSTEM_VALUE_VARYING_COORD,
|
||||||
|
|
||||||
SYSTEM_VALUE_MAX /**< Number of values */
|
SYSTEM_VALUE_MAX /**< Number of values */
|
||||||
} gl_system_value;
|
} gl_system_value;
|
||||||
|
|
||||||
|
@@ -5792,6 +5792,7 @@ _mesa_sysval_to_semantic(unsigned sysval)
|
|||||||
case SYSTEM_VALUE_LOCAL_INVOCATION_INDEX:
|
case SYSTEM_VALUE_LOCAL_INVOCATION_INDEX:
|
||||||
case SYSTEM_VALUE_GLOBAL_INVOCATION_ID:
|
case SYSTEM_VALUE_GLOBAL_INVOCATION_ID:
|
||||||
case SYSTEM_VALUE_VERTEX_CNT:
|
case SYSTEM_VALUE_VERTEX_CNT:
|
||||||
|
case SYSTEM_VALUE_VARYING_COORD:
|
||||||
default:
|
default:
|
||||||
assert(!"Unexpected SYSTEM_VALUE_ enum");
|
assert(!"Unexpected SYSTEM_VALUE_ enum");
|
||||||
return TGSI_SEMANTIC_COUNT;
|
return TGSI_SEMANTIC_COUNT;
|
||||||
|
Reference in New Issue
Block a user