On 28/10/2021 12:43, Tejas Belagod via Gcc-patches wrote:


-----Original Message-----
From: Gcc-patches <gcc-patches-
bounces+belagod=gcc.gnu....@gcc.gnu.org> On Behalf Of Tejas Belagod via
Gcc-patches
Sent: Friday, October 8, 2021 1:19 PM
To: gcc-patches@gcc.gnu.org
Subject: [Patch 6/7, Arm, GCC] Emit build attributes for PACBTI target
feature.

Hi,

This patch emits assembler directives for PACBTI build attributes as defined
by the ABI. (https://github.com/ARM-software/abi-
aa/releases/download/2021Q1/addenda32.pdf)

Tested on arm-none-eabi.

2021-10-04  Tejas Belagod  <tbela...@arm.com>

gcc/ChangeLog:

        * config/arm/arm.c (arm_file_start): Emit EABI attributes for
        Tag_PAC_extension, Tag_BTI_extension, TAG_BTI_use,
TAG_PACRET_use.

gcc/testsuite/ChangeLog:

        * gcc.target/arm/acle/pacbti-m-predef-1.c: New test.
        * gcc.target/arm/acle/pacbti-m-predef-3: New test.
        * gcc.target/arm/acle/pacbti-m-predef-6.c: New test.


This patch emits assembler directives for PACBTI build attributes
as defined by the ABI.
https://github.com/ARM-software/abi-aa/releases/download/2021Q1/addenda32.pdf

2021-10-25  Tejas Belagod  <tbela...@arm.com>

gcc/ChangeLog:

        * config/arm/arm.c (arm_file_start): Emit EABI attributes for
        Tag_PAC_extension, Tag_BTI_extension, TAG_BTI_use, TAG_PACRET_use.

gcc/testsuite/ChangeLog:

        * gcc.target/arm/acle/pacbti-m-predef-1.c: New test.
        * gcc.target/arm/acle/pacbti-m-predef-3: New test.
        * gcc.target/arm/acle/pacbti-m-predef-6.c: New test.

I'm not sure what the value of making these executable tests is. It means that they can only be used when the test model has PAC/BTI available. But they don't really test the PAC/BTI generation, so that seems rather pointless.

Better, IMO to make them simple compile/scan-assembler tests that check the build attributes are correct.

R.


Tested the following configurations, OK for trunk?

-mthumb/-march=armv8.1-m.main+pacbti/-mfloat-abi=soft
-marm/-march=armv7-a/-mfpu=vfpv3-d16/-mfloat-abi=softfp
mcmodel=small and tiny
aarch64-none-linux-gnu native test and bootstrap

Thanks,
Tejas.

Reply via email to