File: arm-fix-cortex-a57-aes-1742098.c

package info (click to toggle)
llvm-toolchain-15 1%3A15.0.6-4
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 1,554,644 kB
  • sloc: cpp: 5,922,452; ansic: 1,012,136; asm: 674,362; python: 191,568; objc: 73,855; f90: 42,327; lisp: 31,913; pascal: 11,973; javascript: 10,144; sh: 9,421; perl: 7,447; ml: 5,527; awk: 3,523; makefile: 2,520; xml: 885; cs: 573; fortran: 567
file content (25 lines) | stat: -rw-r--r-- 1,603 bytes parent folder | download | duplicates (14)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
// RUN: %clang -### %s -target arm-none-none-eabi -march=armv8a -mfix-cortex-a57-aes-1742098 2>&1 | FileCheck %s --check-prefix=FIX
// RUN: %clang -### %s -target arm-none-none-eabi -march=armv8a -mno-fix-cortex-a57-aes-1742098 2>&1 | FileCheck %s --check-prefix=NO-FIX

// RUN: %clang -### %s -target arm-none-none-eabi -march=armv8a -mfix-cortex-a72-aes-1655431 2>&1 | FileCheck %s --check-prefix=FIX
// RUN: %clang -### %s -target arm-none-none-eabi -march=armv8a -mno-fix-cortex-a72-aes-1655431 2>&1 | FileCheck %s --check-prefix=NO-FIX

// RUN: %clang -### %s -target arm-none-none-eabi -march=armv8a 2>&1 | FileCheck %s --check-prefix=UNSPEC
// RUN: %clang -### %s -target arm-none-none-eabi -march=armv8a 2>&1 | FileCheck %s --check-prefix=UNSPEC

// This test checks that "-m(no-)fix-cortex-a57-aes-1742098" and
// "-m(no-)fix-cortex-a72-aes-1655431" cause the "fix-cortex-a57-aes-1742098"
// target feature to be passed to `clang -cc1`.
//
// This feature is also enabled in the backend for the two affected CPUs and the
// "generic" cpu (used when only specifying -march), but that won't show up on
// the `clang -cc1` command line.
//
// We do not check whether this option is correctly specified for the CPU: users
// can specify the "-mfix-cortex-a57-aes-1742098" option with "-mcpu=cortex-a72"
// and vice-versa, and will still get the fix, as the target feature and the fix
// is the same in both cases.

// FIX: "-target-feature" "+fix-cortex-a57-aes-1742098"
// NO-FIX: "-target-feature" "-fix-cortex-a57-aes-1742098"
// UNSPEC-NOT: "-target-feature" "{[+-]}fix-cortex-a57-aes-1742098"