[Bug target/85025] New: libgcc/config/i386/shadow-stack-unwind.h is wrong

hjl.tools at gmail dot com gcc-bugzilla@gcc.gnu.org
Thu Mar 22 03:13:00 GMT 2018


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

            Bug ID: 85025
           Summary: libgcc/config/i386/shadow-stack-unwind.h is wrong
           Product: gcc
           Version: 8.0.1
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: hjl.tools at gmail dot com
                CC: igor.v.tsimbalist at intel dot com
  Target Milestone: ---

libgcc/config/i386/shadow-stack-unwind.h has

/* Unwind the shadow stack for EH.  */
#undef _Unwind_Frames_Extra
#define _Unwind_Frames_Extra(x)                 \
  do                                            \
    {                                           \
      _Unwind_Word ssp = _get_ssp ();           \
      if (ssp != 0)                             \
        {                                       \
          _Unwind_Word tmp = (x);               \
          while (tmp > 255)                     \
            {                                   \
              _inc_ssp (tmp);                   \
                        ^^^ This should be 255.
              tmp -= 255;                       \
            }                                   \
          _inc_ssp (tmp);                       \
        }                                       \
    }                                           \
    while (0)


More information about the Gcc-bugs mailing list