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

--- Comment #6 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-11 branch has been updated by Uros Bizjak <u...@gcc.gnu.org>:

https://gcc.gnu.org/g:731f4bf14fc89a595abb780a969d03e82b807763

commit r11-9537-g731f4bf14fc89a595abb780a969d03e82b807763
Author: Uros Bizjak <ubiz...@gmail.com>
Date:   Fri Feb 4 00:21:11 2022 +0100

    i386: Do not use %ecx DRAP for functions that use __builtin_eh_return
[PR104362]

    %ecx can't be used for both DRAP register and eh_return.  Adjust
find_drap_reg
    to choose %edi for functions that uses __builtin_eh_return to avoid the
assert
    in ix86_expand_epilogue that enforces this rule.

    2022-02-03  Uroš Bizjak  <ubiz...@gmail.com>

    gcc/ChangeLog:

            PR target/104362
            * config/i386/i386.c (find_drap_reg): For 32bit targets
            return DI_REG if function uses __builtin_eh_return.

    gcc/testsuite/ChangeLog:

            PR target/104362
            * gcc.target/i386/pr104362.c: New test.

Reply via email to