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

--- Comment #15 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-11 branch has been updated by Kewen Lin <li...@gcc.gnu.org>:

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

commit r11-11074-gf0b38334c57a8e92139c22efa82fe96994bb8eb8
Author: Kewen Lin <li...@linux.ibm.com>
Date:   Thu Oct 12 00:05:03 2023 -0500

    rs6000: Make 32 bit stack_protect support prefixed insn [PR111367]

    As PR111367 shows, with prefixed insn supported, some of
    checkings consider it's able to leverage prefixed insn
    for stack protect related load/store, but since we don't
    actually change the emitted assembly for 32 bit, it can
    cause the assembler error as exposed.

    Mike's commit r10-4547-gce6a6c007e5a98 has already handled
    the 64 bit case (DImode), this patch is to treat the 32
    bit case (SImode) by making use of mode iterator P and
    ptrload attribute iterator, also fixes the constraints
    to match the emitted operand formats.

            PR target/111367

    gcc/ChangeLog:

            * config/rs6000/rs6000.md (stack_protect_setsi): Support prefixed
            instruction emission and incorporate to stack_protect_set<mode>.
            (stack_protect_setdi): Rename to ...
            (stack_protect_set<mode>): ... this, adjust constraint.
            (stack_protect_testsi): Support prefixed instruction emission and
            incorporate to stack_protect_test<mode>.
            (stack_protect_testdi): Rename to ...
            (stack_protect_test<mode>): ... this, adjust constraint.

    gcc/testsuite/ChangeLog:

            * g++.target/powerpc/pr111367.C: New test.

    (cherry picked from commit 530babc2058be5f2b06b1541384e7b730c368b93)

Reply via email to