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

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 #7 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Created attachment 40942
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=40942&action=edit
gcc7-pr79981.patch

Untested fix.

With this patch the vrp1 difference is:
   _8 = ATOMIC_COMPARE_EXCHANGE (lock_4(D), 0, 1, 260, 2, 0);
-  # RANGE [0, 4294967295]
+  # RANGE [0, 1] NONZERO 1
   _9 = IMAGPART_EXPR <_8>;
   # RANGE [0, 1]
   _1 = (_Bool) _9;
-  if (_1 != 0)
+  if (_9 != 0)

Reply via email to