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

--- Comment #5 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Jiu Fu Guo <guoji...@gcc.gnu.org>:

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

commit r10-6664-ga8532e9927ad6e4bbedbb957b02ca413aedf9098
Author: Jiufu Guo <guoji...@linux.ibm.com>
Date:   Mon Feb 17 10:48:39 2020 +0800

    rs6000: mark clobber for registers changed by untpyed_call

    As PR93047 said, __builtin_apply/__builtin_return does not work well with
    -frename-registers.  This is caused by return register(e.g. r3) is used to
    rename another register, before return register is stored to stack.
    This patch fix this issue by emitting clobber for those egisters which
    maybe changed by untyped call.

    gcc/
    2020-02-17  Jiufu Guo  <guoji...@linux.ibm.com>

        PR target/93047
        * config/rs6000/rs6000.md (untyped_call): Add emit_clobber.

    gcc/testsuite
    2020-02-17  Jiufu Guo  <guoji...@linux.ibm.com>

        PR target/93047
        * gcc.dg/torture/stackalign/builtin-return-2.c: New test case.

Reply via email to