diff --git a/src/compiler/nir/nir_lower_double_ops.c b/src/compiler/nir/nir_lower_double_ops.c index f9c93a9..73226fd 100644 --- a/src/compiler/nir/nir_lower_double_ops.c +++ b/src/compiler/nir/nir_lower_double_ops.c @@ -49,7 +49,9 @@ set_exponent(nir_builder *b, nir_ssa_def *src, nir_ssa_def *exp) /* The exponent is bits 52-62, or 20-30 of the high word, so set the exponent * to 1023 */ - nir_ssa_def *new_hi = nir_bfi(b, nir_imm_int(b, 0x7ff00000), exp, hi); + nir_ssa_def *new_hi = nir_bitfield_insert(b, hi, exp, + nir_imm_int(b, 20), + nir_imm_int(b, 11)); /* recombine */ return nir_pack_64_2x32_split(b, lo, new_hi); }