From: Aldy Hernandez Date: Fri, 11 Nov 2022 09:11:03 +0000 (+0100) Subject: [range-ops] Avoid unnecessary intersection in update_known_bitmask. X-Git-Tag: basepoints/gcc-14~3305 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=c0662c74969820fb576c8a2f35e946581c2c6f9d;p=thirdparty%2Fgcc.git [range-ops] Avoid unnecessary intersection in update_known_bitmask. All the work for keeping the maybe nonzero masks up to date is being done by the bit-CCP code now. Any bitmask inherent in the range that range-ops may have calculated has no extra information, so the intersection is unnecessary. gcc/ChangeLog: * range-op.cc (update_known_bitmask): Avoid unnecessary intersection. --- diff --git a/gcc/range-op.cc b/gcc/range-op.cc index 9eec46441a38..0b01cf48fdfe 100644 --- a/gcc/range-op.cc +++ b/gcc/range-op.cc @@ -89,10 +89,7 @@ update_known_bitmask (irange &r, tree_code code, bit_value_binop (code, sign, prec, &value, &mask, lh_sign, lh_prec, lh_value, lh_mask, rh_sign, rh_prec, rh_value, rh_mask); - - int_range<2> tmp (type); - tmp.set_nonzero_bits (value | mask); - r.intersect (tmp); + r.set_nonzero_bits (value | mask); } // Return the upper limit for a type.