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

--- Comment #2 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Szabolcs Nagy <n...@gcc.gnu.org>:

https://gcc.gnu.org/g:6ac83d350604c3e934d5e8a455ba7ec1c1c0240b

commit r10-8069-g6ac83d350604c3e934d5e8a455ba7ec1c1c0240b
Author: Szabolcs Nagy <szabolcs.n...@arm.com>
Date:   Fri Apr 24 17:36:02 2020 +0100

    aarch64: don't emit bti j after NOTE_INSN_DELETED_LABEL [PR94748]

    It was previously discussed that indirect branches cannot go to
    NOTE_INSN_DELETED_LABEL so inserting a landing pad is unnecessary.
    See https://gcc.gnu.org/pipermail/gcc-patches/2019-May/522625.html

    Before the patch a bti j was inserted after the label in

      __attribute__((target("branch-protection=bti")))
      int foo (void)
      {
      label:
        return 0;
      }

    This is not necessary and weakens the security protection.

    gcc/ChangeLog:

            PR target/94748
            * config/aarch64/aarch64-bti-insert.c (rest_of_insert_bti): Remove
            the check for NOTE_INSN_DELETED_LABEL.

    gcc/testsuite/ChangeLog:

            PR target/94748
            * gcc.target/aarch64/pr94748.c: New test.

Reply via email to