https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94344
--- Comment #6 from CVS Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by Jakub Jelinek <ja...@gcc.gnu.org>: https://gcc.gnu.org/g:56f0b32476c0c261c8e08525f9e47fe87492447a commit r10-7469-g56f0b32476c0c261c8e08525f9e47fe87492447a Author: Jakub Jelinek <ja...@redhat.com> Date: Tue Mar 31 11:02:47 2020 +0200 forwprop: Pattern recognize more rotates [PR94344] The following patch adjusts simplify_rotate to recognize more rotates, basically we allow even some same precision integral -> integral conversions, with the requirement that the RSHIFT_EXPR operand has to be done in unsigned type (i.e. logical right shift), so that we compensate for the combiner no longer being able to simplify those into rotates on some targets. 2020-03-31 Jakub Jelinek <ja...@redhat.com> PR rtl-optimization/94344 * tree-ssa-forwprop.c (simplify_rotate): Handle also same precision conversions, either on both operands of |^+ or just one. Handle also extra same precision conversion on RSHIFT_EXPR first operand provided RSHIFT_EXPR is performed in unsigned type. * gcc.dg/pr94344.c: New test.