nir: Add a helper to determine if an intrinsic can be reordered

This is simple now, but we're going to be adding a few more conditions
to this later.

Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com>
This commit is contained in:
Connor Abbott
2019-06-04 13:02:31 +02:00
parent 6fc83c253f
commit a1c737927c
3 changed files with 13 additions and 11 deletions

View File

@@ -1455,6 +1455,16 @@ nir_intrinsic_align(const nir_intrinsic_instr *intrin)
void nir_rewrite_image_intrinsic(nir_intrinsic_instr *instr,
nir_ssa_def *handle, bool bindless);
/* Determine if an intrinsic can be arbitrarily reordered and eliminated. */
static inline bool
nir_intrinsic_can_reorder(nir_intrinsic_instr *instr)
{
const nir_intrinsic_info *info =
&nir_intrinsic_infos[instr->intrinsic];
return (info->flags & NIR_INTRINSIC_CAN_ELIMINATE) &&
(info->flags & NIR_INTRINSIC_CAN_REORDER);
}
/**
* \group texture information
*