https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119325
--- Comment #8 from Richard Biener <rguenth at gcc dot gnu.org> --- Can you attach preprocessed source of the libm function? The rev in question had some followup fixes for other corner-cases, but given it only changes + /* When the access is fully outside of the underlying object + expand the offset as zero. This avoids out-of-bound + BIT_FIELD_REFs and generates smaller code for these cases + with UB. */ + type_size = tree_to_poly_uint64 (TYPE_SIZE_UNIT (type)); + if (!ranges_maybe_overlap_p (offset, type_size, 0, + GET_MODE_SIZE (DECL_MODE (base)))) + offset = 0; I wonder what out-of-object access we have here?