https://gcc.gnu.org/bugzilla/show_bug.cgi?id=127965

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED
           Assignee|unassigned at gcc dot gnu.org      |jakub at gcc dot gnu.org

--- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
r13-3756 and r13-3760 before fab1 are identical, after that it is:
-  _1 = __atomic_fetch_or_4 (&x, 2147483648, 5);
-  _2 = (signed char) _1;
-  if (_2 >= 0)
+  _9 = .ATOMIC_BIT_TEST_AND_SET (&x, 31, 1, 5, __atomic_fetch_or_4);
+  if (_9 == 0)
Guess we lack a check that the cast if any has the same precision.

Reply via email to