}
fs_reg *
-fs_visitor::emit_samplepos_setup(ir_variable *ir)
+fs_visitor::emit_samplepos_setup()
{
assert(brw->gen >= 6);
- assert(ir->type == glsl_type::vec2_type);
this->current_annotation = "compute sample position";
- fs_reg *reg = new(this->mem_ctx) fs_reg(this, ir->type);
+ fs_reg *reg = new(this->mem_ctx) fs_reg(this, glsl_type::vec2_type);
fs_reg pos = *reg;
fs_reg int_sample_x = fs_reg(this, glsl_type::int_type);
fs_reg int_sample_y = fs_reg(this, glsl_type::int_type);
glsl_interp_qualifier interpolation_mode,
bool is_centroid, bool is_sample);
fs_reg *emit_frontfacing_interpolation();
- fs_reg *emit_samplepos_setup(ir_variable *ir);
+ fs_reg *emit_samplepos_setup();
fs_reg *emit_sampleid_setup(ir_variable *ir);
fs_reg *emit_general_interpolation(ir_variable *ir);
void emit_interpolation_setup_gen4();
} else if (ir->data.mode == ir_var_system_value) {
if (ir->data.location == SYSTEM_VALUE_SAMPLE_POS) {
- reg = emit_samplepos_setup(ir);
+ reg = emit_samplepos_setup();
} else if (ir->data.location == SYSTEM_VALUE_SAMPLE_ID) {
reg = emit_sampleid_setup(ir);
} else if (ir->data.location == SYSTEM_VALUE_SAMPLE_MASK_IN) {