On Dec 11, 2023, Richard Biener <richard.guent...@gmail.com> wrote: > On Sat, Dec 9, 2023 at 8:05 AM Alexandre Oliva <ol...@adacore.com> wrote: >> PR target/112778 >> * builtins.cc (can_store_by_multiple_pieces): New. >> (try_store_by_multiple_pieces): Call it.
>> +/* Check that store_by_pieces allows BITS + LEN (so that we don't >> + expand something too unreasonably long), and every power of 2 in >> + BITS. It is assumed that LEN has already been tested by >> + itself. */ >> +static bool >> +can_store_by_multiple_pieces (unsigned HOST_WIDE_INT bits, When fixing the PR, I failed to remove the comment that raised the very concern that the PR confirmed, and that the earlier patch for the PR fixed. I'm checking this in as obvious. for gcc/ChangeLog PR target/112778 * builtins.cc (try_store_by_multiple_pieces): Drop obsolete comment. --- gcc/builtins.cc | 4 ---- 1 file changed, 4 deletions(-) diff --git a/gcc/builtins.cc b/gcc/builtins.cc index 0f64feeedbad6..125ea158ebfad 100644 --- a/gcc/builtins.cc +++ b/gcc/builtins.cc @@ -4491,10 +4491,6 @@ try_store_by_multiple_pieces (rtx to, rtx len, unsigned int ctz_len, if (max_len >> max_bits > min_len >> max_bits) tst_bits = max_bits; } - /* ??? Do we have to check that all powers of two lengths from - max_bits down to ctz_len pass can_store_by_pieces? As in, could - it possibly be that xlenest passes while smaller power-of-two - sizes don't? */ by_pieces_constfn constfun; void *constfundata; -- Alexandre Oliva, happy hacker https://FSFLA.org/blogs/lxo/ Free Software Activist GNU Toolchain Engineer More tolerance and less prejudice are key for inclusion and diversity Excluding neuro-others for not behaving ""normal"" is *not* inclusive