nir: Add a tex_instr_is_query helper

Reviewed-by: Connor Abbott <cwabbott0@gmail.com>
This commit is contained in:
Jason Ekstrand 2015-11-11 18:30:09 -08:00
parent 7e83fd85aa
commit 6921b17107

View file

@ -1043,6 +1043,31 @@ nir_tex_instr_dest_size(nir_tex_instr *instr)
}
}
/* Returns true if this texture operation queries something about the texture
* rather than actually sampling it.
*/
static inline bool
nir_tex_instr_is_query(nir_tex_instr *instr)
{
switch (instr->op) {
case nir_texop_txs:
case nir_texop_lod:
case nir_texop_texture_samples:
case nir_texop_query_levels:
return true;
case nir_texop_tex:
case nir_texop_txb:
case nir_texop_txl:
case nir_texop_txd:
case nir_texop_txf:
case nir_texop_txf_ms:
case nir_texop_tg4:
return false;
default:
unreachable("Invalid texture opcode");
}
}
static inline unsigned
nir_tex_instr_src_size(nir_tex_instr *instr, unsigned src)
{