1 // Check that -march works for all supported targets.
2 
3 // RUN: not %clang -target s390x -S -emit-llvm -march=z9 %s -o - 2>&1 | FileCheck --check-prefix=CHECK-Z9 %s
4 // RUN: %clang -target s390x -### -S -emit-llvm -march=z10 %s 2>&1 | FileCheck --check-prefix=CHECK-Z10 %s
5 // RUN: %clang -target s390x -### -S -emit-llvm -march=arch8 %s 2>&1 | FileCheck --check-prefix=CHECK-ARCH8 %s
6 // RUN: %clang -target s390x -### -S -emit-llvm -march=z196 %s 2>&1 | FileCheck --check-prefix=CHECK-Z196 %s
7 // RUN: %clang -target s390x -### -S -emit-llvm -march=arch9 %s 2>&1 | FileCheck --check-prefix=CHECK-ARCH9 %s
8 // RUN: %clang -target s390x -### -S -emit-llvm -march=zEC12 %s 2>&1 | FileCheck --check-prefix=CHECK-ZEC12 %s
9 // RUN: %clang -target s390x -### -S -emit-llvm -march=arch10 %s 2>&1 | FileCheck --check-prefix=CHECK-ARCH10 %s
10 // RUN: %clang -target s390x -### -S -emit-llvm -march=z13 %s 2>&1 | FileCheck --check-prefix=CHECK-Z13 %s
11 // RUN: %clang -target s390x -### -S -emit-llvm -march=arch11 %s 2>&1 | FileCheck --check-prefix=CHECK-ARCH11 %s
12 // RUN: %clang -target s390x -### -S -emit-llvm -march=z14 %s 2>&1 | FileCheck --check-prefix=CHECK-Z14 %s
13 // RUN: %clang -target s390x -### -S -emit-llvm -march=arch12 %s 2>&1 | FileCheck --check-prefix=CHECK-ARCH12 %s
14 // RUN: %clang -target s390x -### -S -emit-llvm -march=z15 %s 2>&1 | FileCheck --check-prefix=CHECK-Z15 %s
15 // RUN: %clang -target s390x -### -S -emit-llvm -march=arch13 %s 2>&1 | FileCheck --check-prefix=CHECK-ARCH13 %s
16 
17 // CHECK-Z9: error: unknown target CPU 'z9'
18 // CHECK-Z10: "-target-cpu" "z10"
19 // CHECK-ARCH8: "-target-cpu" "arch8"
20 // CHECK-Z196: "-target-cpu" "z196"
21 // CHECK-ARCH9: "-target-cpu" "arch9"
22 // CHECK-ZEC12: "-target-cpu" "zEC12"
23 // CHECK-ARCH10: "-target-cpu" "arch10"
24 // CHECK-Z13: "-target-cpu" "z13"
25 // CHECK-ARCH11: "-target-cpu" "arch11"
26 // CHECK-Z14: "-target-cpu" "z14"
27 // CHECK-ARCH12: "-target-cpu" "arch12"
28 // CHECK-Z15: "-target-cpu" "z15"
29 // CHECK-ARCH13: "-target-cpu" "arch13"
30 
31 int x;
32