From b53781ce1e49fcaa18c2b7c0d4602c6ed780a9e9 Mon Sep 17 00:00:00 2001 From: Andrew Carlotti Date: Thu, 9 Jan 2025 19:33:25 +0000 Subject: aarch64: Make AARCH64_FL_CRYPTO always unset This feature flag bit only exists to support the +crypto alias. Outside of option processing this bit needs to be set or unset consistently. This patch goes with the latter option. gcc/ChangeLog: * common/config/aarch64/aarch64-common.cc: Assert that CRYPTO bit is not set. * config/aarch64/aarch64-feature-deps.h (info.explicit_on): Unset CRYPTO bit. (cpu_##CORE_IDENT): Ditto. gcc/testsuite/ChangeLog: * gcc.target/aarch64/crypto-alias-1.c: New test. --- gcc/testsuite/gcc.target/aarch64/crypto-alias-1.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 gcc/testsuite/gcc.target/aarch64/crypto-alias-1.c (limited to 'gcc/testsuite/gcc.target/aarch64') diff --git a/gcc/testsuite/gcc.target/aarch64/crypto-alias-1.c b/gcc/testsuite/gcc.target/aarch64/crypto-alias-1.c new file mode 100644 index 0000000..e2662b4 --- /dev/null +++ b/gcc/testsuite/gcc.target/aarch64/crypto-alias-1.c @@ -0,0 +1,14 @@ +/* { dg-do compile } */ +/* { dg-options "-mcpu=ampere1" } */ + +__attribute__ ((__always_inline__)) +__attribute__ ((target ("arch=armv8-a+crypto"))) +inline int bar() +{ + return 5; +} + +int foo() +{ + return bar(); +} -- cgit v1.1