nir: Add members for the explicit XFB properties to nir_variable
These are copied from the from the corresponding values in ir_variable. The intention is to eventually use them in a pure-NIR linker. Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com>
This commit is contained in:

committed by
Alejandro Piñeiro

parent
e1d4882d05
commit
3fd5b4c7aa
@@ -440,6 +440,10 @@ nir_visitor::visit(ir_variable *ir)
|
|||||||
var->data.image.restrict_flag = ir->data.memory_restrict;
|
var->data.image.restrict_flag = ir->data.memory_restrict;
|
||||||
var->data.image.format = ir->data.image_format;
|
var->data.image.format = ir->data.image_format;
|
||||||
var->data.fb_fetch_output = ir->data.fb_fetch_output;
|
var->data.fb_fetch_output = ir->data.fb_fetch_output;
|
||||||
|
var->data.explicit_xfb_buffer = ir->data.explicit_xfb_buffer;
|
||||||
|
var->data.explicit_xfb_stride = ir->data.explicit_xfb_stride;
|
||||||
|
var->data.xfb_buffer = ir->data.xfb_buffer;
|
||||||
|
var->data.xfb_stride = ir->data.xfb_stride;
|
||||||
|
|
||||||
var->num_state_slots = ir->get_num_state_slots();
|
var->num_state_slots = ir->get_num_state_slots();
|
||||||
if (var->num_state_slots > 0) {
|
if (var->num_state_slots > 0) {
|
||||||
|
@@ -259,6 +259,21 @@ typedef struct nir_variable {
|
|||||||
*/
|
*/
|
||||||
unsigned explicit_binding:1;
|
unsigned explicit_binding:1;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Was a transfer feedback buffer set in the shader?
|
||||||
|
*/
|
||||||
|
unsigned explicit_xfb_buffer:1;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Was a transfer feedback stride set in the shader?
|
||||||
|
*/
|
||||||
|
unsigned explicit_xfb_stride:1;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Was an explicit offset set in the shader?
|
||||||
|
*/
|
||||||
|
unsigned explicit_offset:1;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* \brief Layout qualifier for gl_FragDepth.
|
* \brief Layout qualifier for gl_FragDepth.
|
||||||
*
|
*
|
||||||
@@ -320,10 +335,20 @@ typedef struct nir_variable {
|
|||||||
int binding;
|
int binding;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Location an atomic counter is stored at.
|
* Location an atomic counter or transform feedback is stored at.
|
||||||
*/
|
*/
|
||||||
unsigned offset;
|
unsigned offset;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Transform feedback buffer.
|
||||||
|
*/
|
||||||
|
unsigned xfb_buffer;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Transform feedback stride.
|
||||||
|
*/
|
||||||
|
unsigned xfb_stride;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* ARB_shader_image_load_store qualifiers.
|
* ARB_shader_image_load_store qualifiers.
|
||||||
*/
|
*/
|
||||||
|
Reference in New Issue
Block a user