diff --git a/src/compiler/nir/nir_builder.h b/src/compiler/nir/nir_builder.h index b5b0ba365bf..602ab502c5e 100644 --- a/src/compiler/nir/nir_builder.h +++ b/src/compiler/nir/nir_builder.h @@ -932,6 +932,27 @@ nir_udiv_imm(nir_builder *build, nir_ssa_def *x, uint64_t y) } } +static inline nir_ssa_def * +nir_fclamp(nir_builder *b, + nir_ssa_def *x, nir_ssa_def *min_val, nir_ssa_def *max_val) +{ + return nir_fmin(b, nir_fmax(b, x, min_val), max_val); +} + +static inline nir_ssa_def * +nir_iclamp(nir_builder *b, + nir_ssa_def *x, nir_ssa_def *min_val, nir_ssa_def *max_val) +{ + return nir_imin(b, nir_imax(b, x, min_val), max_val); +} + +static inline nir_ssa_def * +nir_uclamp(nir_builder *b, + nir_ssa_def *x, nir_ssa_def *min_val, nir_ssa_def *max_val) +{ + return nir_umin(b, nir_umax(b, x, min_val), max_val); +} + static inline nir_ssa_def * nir_pack_bits(nir_builder *b, nir_ssa_def *src, unsigned dest_bit_size) { diff --git a/src/compiler/nir/nir_builtin_builder.h b/src/compiler/nir/nir_builtin_builder.h index a9fc9a5f991..40983a26456 100644 --- a/src/compiler/nir/nir_builtin_builder.h +++ b/src/compiler/nir/nir_builtin_builder.h @@ -125,27 +125,6 @@ nir_bitselect(nir_builder *b, nir_ssa_def *x, nir_ssa_def *y, nir_ssa_def *s) return nir_ior(b, nir_iand(b, nir_inot(b, s), x), nir_iand(b, s, y)); } -static inline nir_ssa_def * -nir_fclamp(nir_builder *b, - nir_ssa_def *x, nir_ssa_def *min_val, nir_ssa_def *max_val) -{ - return nir_fmin(b, nir_fmax(b, x, min_val), max_val); -} - -static inline nir_ssa_def * -nir_iclamp(nir_builder *b, - nir_ssa_def *x, nir_ssa_def *min_val, nir_ssa_def *max_val) -{ - return nir_imin(b, nir_imax(b, x, min_val), max_val); -} - -static inline nir_ssa_def * -nir_uclamp(nir_builder *b, - nir_ssa_def *x, nir_ssa_def *min_val, nir_ssa_def *max_val) -{ - return nir_umin(b, nir_umax(b, x, min_val), max_val); -} - static inline nir_ssa_def * nir_copysign(nir_builder *b, nir_ssa_def *x, nir_ssa_def *y) {