diff --git a/src/compiler/nir/nir.h b/src/compiler/nir/nir.h index 4ac6f38dbd5..57dc5228761 100644 --- a/src/compiler/nir/nir.h +++ b/src/compiler/nir/nir.h @@ -1625,6 +1625,30 @@ typedef struct nir_alu_instr { nir_alu_src src[]; } nir_alu_instr; +static inline bool +nir_alu_instr_is_signed_zero_preserve(nir_alu_instr *alu) +{ + return nir_is_float_control_signed_zero_preserve(alu->fp_fast_math, alu->def.bit_size); +} + +static inline bool +nir_alu_instr_is_inf_preserve(nir_alu_instr *alu) +{ + return nir_is_float_control_inf_preserve(alu->fp_fast_math, alu->def.bit_size); +} + +static inline bool +nir_alu_instr_is_nan_preserve(nir_alu_instr *alu) +{ + return nir_is_float_control_nan_preserve(alu->fp_fast_math, alu->def.bit_size); +} + +static inline bool +nir_alu_instr_is_signed_zero_inf_nan_preserve(nir_alu_instr *alu) +{ + return nir_is_float_control_signed_zero_inf_nan_preserve(alu->fp_fast_math, alu->def.bit_size); +} + void nir_alu_src_copy(nir_alu_src *dest, const nir_alu_src *src); nir_component_mask_t