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

--- Comment #20 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Thomas Neumann <tneum...@gcc.gnu.org>:

https://gcc.gnu.org/g:a364148530c28645ce87adbc58a66c9f32a325ab

commit r14-9620-ga364148530c28645ce87adbc58a66c9f32a325ab
Author: Thomas Neumann <tneum...@users.sourceforge.net>
Date:   Mon Mar 11 14:35:20 2024 +0100

    handle unwind tables that are embedded within unwinding code [PR111731]

    Original bug report: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111731

    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.

Reply via email to