}
}
- m_bc->cf_last->vpm = fetch_instr.use_vpm();
+ m_bc->cf_last->vpm = (m_bc->type == PIPE_SHADER_FRAGMENT) && fetch_instr.use_vpm();
m_bc->cf_last->barrier = 1;
return true;
int r = r600_bytecode_add_gds(m_bc, &gds);
if (r)
return false;
- m_bc->cf_last->vpm = 1;
+ m_bc->cf_last->vpm = PIPE_SHADER_FRAGMENT == m_bc->type;
m_bc->cf_last->barrier = 1;
return true;
}
instr.data_swz(2) == PIPE_SWIZZLE_MAX) ;
}
- cf->vpm = 1;
+ cf->vpm = m_bc->type == PIPE_SHADER_FRAGMENT;
cf->barrier = 1;
cf->mark = instr.need_ack();
cf->output.elem_size = instr.elm_size();