On 28/04/2022 10:42, Andrea Corallo via Gcc-patches wrote:
This patch implements target feature macros when PACBTI is enabled
through the -march option or -mbranch-protection.  The target feature
macros __ARM_FEATURE_PAC_DEFAULT and __ARM_FEATURE_BTI_DEFAULT are
specified in ARM ACLE
<https://developer.arm.com/documentation/101028/0012/5--Feature-test-macros?lang=en>
__ARM_FEATURE_PAUTH and __ARM_FEATURE_BTI are specified in the
pull-request <https://github.com/ARM-software/acle/pull/55>.

Approved here
<https://gcc.gnu.org/pipermail/gcc-patches/2021-December/586334.html>.

gcc/ChangeLog:

        * config/arm/arm-c.c (arm_cpu_builtins): Define
        __ARM_FEATURE_BTI_DEFAULT, __ARM_FEATURE_PAC_DEFAULT,
        __ARM_FEATURE_PAUTH and __ARM_FEATURE_BTI.

This bit is OK.


gcc/testsuite/ChangeLog:

        * gcc.target/arm/acle/pacbti-m-predef-2.c: New test.
        * gcc.target/arm/acle/pacbti-m-predef-4.c: New test.
        * gcc.target/arm/acle/pacbti-m-predef-5.c: New test.


These are all execution tests. I think we also need some compile-only tests so that we get better coverage when the target does not directly support PACBTI.

We also need some tests for the defines when targetting armv8-m.main and some tests for checking __ARM_FEATURE_BTI and __ARM_FEATURE_PAC (the tests here check only the '..._DEFAULT' macros.

Co-Authored-By: Tejas Belagod  <tbela...@arm.com>


R.

Reply via email to