On 10/12/2021 16:36, Andrea Corallo via Gcc-patches wrote:
Richard Earnshaw via Gcc-patches <gcc-patches@gcc.gnu.org> writes:
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.
Hi Richard,
agreed. Please find attached the updated version of the patch.
Thanks for reviewing
Andrea
Oh, another one:
diff --git a/gcc/testsuite/gcc.target/arm/acle/pacbti-m-predef-7.c
b/gcc/testsuite/gcc.target/arm/acle/pacbti-m-predef-7.c
new file mode 100644
index 00000000000..bdf9131c142
--- /dev/null
+++ b/gcc/testsuite/gcc.target/arm/acle/pacbti-m-predef-7.c
@@ -0,0 +1,16 @@
+#if defined (__ARM_FEATURE_BTI_DEFAULT)
+#error "Feature test macro __ARM_FEATURE_BTI_DEFAULT should be defined."
+#endif
+
+#if defined (__ARM_FEATURE_PAC_DEFAULT)
+#error "Feature test macro __ARM_FEATURE_PAC_DEFAULT should be undefined."
+#endif
Shouldn't the first error message be 'undefined'?