https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93512
Bug 93512 depends on bug 93505, which changed state.
Bug 93505 Summary: [8 Regression] wrong code or ICE with __builtin_bswap64()
and rotation at -Og
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93505
What|Removed
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93512
--- Comment #4 from Segher Boessenkool ---
I said (or I meant, at least) that as far as I see and know, all rotate
instructions on all machines do this truncation. It is of course possible
for targets to write it in RTL that only works for a lim
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93512
Jakub Jelinek changed:
What|Removed |Added
CC||law at gcc dot gnu.org
--- Comment #3 fr
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93512
--- Comment #2 from Jakub Jelinek ---
Segher said he thinks that ROTATE/ROTATERT on all targets will do the
truncation, so it is just a matter of proving that. Sure, one can add
explictly patterns like
(define_insn "rotl3_cntmask"
[(set (matc
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93512
--- Comment #1 from Richard Biener ---
Please do not introduce ROTATE_COUNT_TRUNCATED. RTL should always be
well-defined and semantics _not_ depend on the recognized instruction (see all
the hassle with SHIFT_COUNT_TRUNCATED and targets having s