File: ppc-cpus.c

package info (click to toggle)
swiftlang 6.0.3-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 2,519,992 kB
  • sloc: cpp: 9,107,863; ansic: 2,040,022; asm: 1,135,751; python: 296,500; objc: 82,456; f90: 60,502; lisp: 34,951; pascal: 19,946; sh: 18,133; perl: 7,482; ml: 4,937; javascript: 4,117; makefile: 3,840; awk: 3,535; xml: 914; fortran: 619; cs: 573; ruby: 573
file content (44 lines) | stat: -rw-r--r-- 2,682 bytes parent folder | download | duplicates (2)
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
// RUN: %clang -### -c --target=powerpc64 %s -mcpu=ppc64 2>&1 | FileCheck --check-prefix=MCPU_PPC64 %s
// MCPU_PPC64: "-target-cpu" "ppc64"

/// We cannot check much for -mcpu=native, but it should be replaced by a CPU name.
// RUN: %clang -### -c --target=powerpc64 %s -mcpu=native 2>&1 | FileCheck --check-prefix=MCPU_NATIVE %s
// MCPU_NATIVE-NOT: "-target-cpu" "native"

/// Check that we are passing unknown mcpu options to the backend so an error
/// can be triggered.
// RUN: %clang -### -c --target=powerpc64 %s -mcpu=asdf1234 2>&1 | FileCheck --check-prefix=MCPU_UNKNOWN %s
// MCPU_UNKNOWN: "-target-cpu" "asdf1234"

/// Check for the unknown target error if an unknown mcpu option is used.
// RUN: not %clang -c --target=powerpc64 %s -mcpu=asdf1234 2>&1 | FileCheck --check-prefix=MCPU_ERR %s
// MCPU_ERR: unknown target CPU 'asdf1234'

// RUN: %clang -### -c --target=powerpc64 %s -mcpu=7400 2>&1 | FileCheck --check-prefix=MCPU_7400 %s
// MCPU_7400: "-target-cpu" "7400"

/// The following -mcpu= have their own -target-cpu values.
// RUN: %clang -### -c --target=powerpc64 %s -mcpu=G4 2>&1 | FileCheck %s --check-prefix=NO_PPC64
// RUN: %clang -### -c --target=powerpc64 %s -mcpu=7450 2>&1 | FileCheck %s --check-prefix=NO_PPC64
// RUN: %clang -### -c --target=powerpc64 %s -mcpu=G4+ 2>&1 | FileCheck %s --check-prefix=NO_PPC64
// RUN: %clang -### -c --target=powerpc64 %s -mcpu=970 2>&1 | FileCheck %s --check-prefix=NO_PPC64
// RUN: %clang -### -c --target=powerpc64 %s -mcpu=G5 2>&1 | FileCheck %s --check-prefix=NO_PPC64
// RUN: %clang -### -c --target=powerpc64 %s -mcpu=pwr6 2>&1 | FileCheck %s --check-prefix=NO_PPC64
// RUN: %clang -### -c --target=powerpc64 %s -mcpu=pwr7 2>&1 | FileCheck %s --check-prefix=NO_PPC64
// RUN: %clang -### -c --target=powerpc64 %s -mcpu=pwr8 2>&1 | FileCheck %s --check-prefix=NO_PPC64

// NO_PPC64-NOT: "-target-cpu" "ppc64"

// RUN: %clang -### -c --target=powerpc64 %s -mcpu=generic -mtune=pwr9 2>&1 | FileCheck %s --check-prefix=TUNE
// TUNE: "-target-cpu" "ppc64" "-tune-cpu" "pwr9"
// RUN: %clang -### -c --target=powerpc64le %s -mcpu=power9 -mtune=power10 2>&1 | FileCheck %s --check-prefix=TUNE-LONG
// TUNE-LONG: "-target-cpu" "pwr9" "-tune-cpu" "pwr10"

/// Test mcpu options that are equivalent to "generic"
// RUN: %clang -### -c --target=powerpc64 %s -mcpu=generic 2>&1 | FileCheck %s --check-prefix=GENERIC
// RUN: %clang -### -c --target=powerpc64 %s -mcpu=405     2>&1 | FileCheck %s --check-prefix=GENERIC
//
// GENERIC: "-target-cpu" "ppc64"

// RUN: %clang -### -c --target=powerpc64 %s -march=generic 2>&1 | FileCheck --check-prefix=MARCH %s
// MARCH: error: unsupported option '-march=' for target 'powerpc64'