1 /* { dg-do assemble } */
2 /* { dg-options "-O2 -march=armv8-a+crc+crypto" } */
3 
4 #include "arm_acle.h"
5 
6 /* Make sure that 'crypto' is not required to compile an intrinsic
7    from arm_acle.h in a non-crypto function.  Tests that arm_acle.h
8    properly clears the architectural features in its initial target
9    pragma.  */
10 
11 __attribute__ ((target ("+crc+nocrypto")))
12 int
foo(uint32_t a,uint8_t b)13 foo (uint32_t a, uint8_t b)
14 {
15   return __crc32b (a, b);
16 }
17