Module: Mesa Branch: master Commit: 1f29f4db1e867357a119c0c7c34fb54dc27fb682 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=1f29f4db1e867357a119c0c7c34fb54dc27fb682
Author: Jason Ekstrand <[email protected]> Date: Mon Nov 12 16:02:23 2018 -0600 nir/builder: Assert that intN_t immediates fit This assert won't catch all mistakes with this helper but it will at least ensure that the top bits are all zero or all one which should help catch bugs. Reviewed-by: Samuel Iglesias Gonsálvez <[email protected]> --- src/compiler/nir/nir_builder.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/compiler/nir/nir_builder.h b/src/compiler/nir/nir_builder.h index 3271a48052..3be630ab3d 100644 --- a/src/compiler/nir/nir_builder.h +++ b/src/compiler/nir/nir_builder.h @@ -330,6 +330,10 @@ nir_imm_intN_t(nir_builder *build, uint64_t x, unsigned bit_size) { nir_const_value v; + assert(bit_size == 64 || + (int64_t)x >> bit_size == 0 || + (int64_t)x >> bit_size == -1); + memset(&v, 0, sizeof(v)); assert(bit_size <= 64); v.i64[0] = x & (~0ull >> (64 - bit_size)); _______________________________________________ mesa-commit mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-commit
