On 3/15/24 4:29 AM, Thomas Neumann wrote:
Original bug report: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111731
Given that this is a regression, is this okay for gcc 13 and mainline?

The unwinding mechanism registers both the code range and the unwind
table itself within a b-tree lookup structure. That data structure
assumes that is consists of non-overlappping intervals. This
becomes a problem if the unwinding table is embedded within the
code itself, as now the intervals do overlap.

To fix this problem we now keep the unwind tables in a separate
b-tree, which prevents the overlap.

libgcc/ChangeLog:
     PR libgcc/111731
     * unwind-dw2-fde.c: Split unwind ranges if they contain the
     unwind table.
I'll go ahead and give the final OK here :-)

Jeff

Reply via email to