221
|
1 // Ensure we support the -mtune flag.
|
|
2
|
|
3 // Default mtune should be generic.
|
|
4 // RUN: %clang -target x86_64-unknown-unknown -c -### %s 2>&1 \
|
|
5 // RUN: | FileCheck %s -check-prefix=notune
|
|
6 // notune: "-tune-cpu" "generic"
|
|
7
|
|
8 // RUN: %clang -target x86_64-unknown-unknown -c -### %s -mtune=generic 2>&1 \
|
|
9 // RUN: | FileCheck %s -check-prefix=generic
|
|
10 // generic: "-tune-cpu" "generic"
|
|
11
|
|
12 // RUN: %clang -target x86_64-unknown-unknown -c -### %s -mtune=nocona 2>&1 \
|
|
13 // RUN: | FileCheck %s -check-prefix=nocona
|
|
14 // nocona: "-tune-cpu" "nocona"
|
|
15
|
|
16 // Unlike march we allow 32-bit only cpus with mtune.
|
|
17
|
|
18 // RUN: %clang -target x86_64-unknown-unknown -c -### %s -mtune=i686 2>&1 \
|
|
19 // RUN: | FileCheck %s -check-prefix=i686
|
|
20 // i686: "-tune-cpu" "i686"
|
|
21
|
|
22 // RUN: %clang -target x86_64-unknown-unknown -c -### %s -mtune=pentium4 2>&1 \
|
|
23 // RUN: | FileCheck %s -check-prefix=pentium4
|
|
24 // pentium4: "-tune-cpu" "pentium4"
|
|
25
|
|
26 // RUN: %clang -target x86_64-unknown-unknown -c -### %s -mtune=athlon 2>&1 \
|
|
27 // RUN: | FileCheck %s -check-prefix=athlon
|
|
28 // athlon: "-tune-cpu" "athlon"
|
|
29
|
|
30 // Check interaction between march and mtune.
|
|
31
|
|
32 // -march should remove default mtune generic.
|
|
33 // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=core2 2>&1 \
|
|
34 // RUN: | FileCheck %s -check-prefix=marchcore2
|
|
35 // marchcore2: "-target-cpu" "core2"
|
|
36 // marchcore2-NOT: "-tune-cpu"
|
|
37
|
|
38 // -march should remove default mtune generic.
|
|
39 // RUN: %clang -target x86_64-unknown-unknown -c -### %s -march=core2 -mtune=nehalem 2>&1 \
|
|
40 // RUN: | FileCheck %s -check-prefix=marchmtune
|
|
41 // marchmtune: "-target-cpu" "core2"
|
|
42 // mmarchmtune: "-tune-cpu" "nehalem"
|
|
43
|
|
44 // RUN: not %clang %s -target x86_64 -E -mtune=x86-64-v2 2>&1 | FileCheck %s --check-prefix=INVALID
|
|
45 // RUN: not %clang %s -target x86_64 -E -mtune=x86-64-v3 2>&1 | FileCheck %s --check-prefix=INVALID
|
|
46 // RUN: not %clang %s -target x86_64 -E -mtune=x86-64-v4 2>&1 | FileCheck %s --check-prefix=INVALID
|
|
47 // INVALID: error: unknown target CPU '{{.*}}'
|