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

            Bug ID: 95810
           Summary: Spurious UBSan warning when computing the opposite of
                    the absolute value of INT_MIN
           Product: gcc
           Version: 11.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: tree-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: felix.von.s at posteo dot de
  Target Milestone: ---

When the expression (x <= 0 ? x : -x) with x having type int is compiled with
-fsanitize=undefined -O3, setting (x = INT_MIN) triggers a spurious UBSan
warning about INT_MIN being negated.

Not sure if I should file this against tree-ssa or the frontend(s), because the
expression apparently becomes (-ABS_EXPR <x>) very early, even at -O0. I
checked this with C, C++ and D frontends.

Reply via email to