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

--- Comment #5 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Alexandre Oliva <aol...@gcc.gnu.org>:

https://gcc.gnu.org/g:9fa35dbb901b11d31a897cc88c9258e7cd35b899

commit r14-6736-g9fa35dbb901b11d31a897cc88c9258e7cd35b899
Author: Alexandre Oliva <ol...@adacore.com>
Date:   Thu Dec 14 03:21:37 2023 -0300

    strub: sparc: omit frame in strub_leave [PR112917]

    If we allow __strub_leave to allocate a frame on sparc, it will
    overlap with a lot of the stack range we're supposed to scrub, because
    of the large fixed-size outgoing args and register save area.
    Unfortunately, setting up the PIC register seems to prevent the frame
    pointer from being omitted.

    Since the strub runtime doesn't issue calls or use global variables,
    at least on sparc, disabling PIC to compile strub.c seems to do the
    right thing.


    for  libgcc/ChangeLog

            PR middle-end/112917
            * config.host (sparc, sparc64): Enable...
            * config/sparc/t-sparc: ... this new fragment.

Reply via email to