nir: Add a src_get_parent_instr function

Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
This commit is contained in:
Jason Ekstrand 2015-04-02 11:07:48 -07:00
parent cb966fb2be
commit 7bdba4a245
2 changed files with 12 additions and 14 deletions

View file

@ -529,6 +529,16 @@ nir_src_for_reg(nir_register *reg)
return src;
}
static inline nir_instr *
nir_src_get_parent_instr(const nir_src *src)
{
if (src->is_ssa) {
return src->ssa->parent_instr;
} else {
return src->reg.reg->parent_instr;
}
}
static inline nir_dest
nir_dest_for_reg(nir_register *reg)
{

View file

@ -43,13 +43,7 @@
static uint8_t
get_resolve_status_for_src(nir_src *src)
{
nir_instr *src_instr;
if (src->is_ssa) {
src_instr = src->ssa->parent_instr;
} else {
src_instr = src->reg.reg->parent_instr;
}
nir_instr *src_instr = nir_src_get_parent_instr(src);
if (src_instr) {
uint8_t resolve_status = src_instr->pass_flags & BRW_NIR_BOOLEAN_MASK;
@ -72,13 +66,7 @@ get_resolve_status_for_src(nir_src *src)
static bool
src_mark_needs_resolve(nir_src *src, void *void_state)
{
nir_instr *src_instr;
if (src->is_ssa) {
src_instr = src->ssa->parent_instr;
} else {
src_instr = src->reg.reg->parent_instr;
}
nir_instr *src_instr = nir_src_get_parent_instr(src);
if (src_instr) {
uint8_t resolve_status = src_instr->pass_flags & BRW_NIR_BOOLEAN_MASK;