diff options
-rw-r--r-- | clang/lib/Basic/Targets.cpp | 8 | ||||
-rw-r--r-- | clang/test/CodeGen/systemz-abi-vector.c | 2 | ||||
-rw-r--r-- | clang/test/CodeGen/systemz-abi.c | 2 | ||||
-rw-r--r-- | clang/test/CodeGen/target-data.c | 2 | ||||
-rw-r--r-- | clang/test/Driver/systemz-march.c | 10 | ||||
-rw-r--r-- | clang/test/Preprocessor/predefined-arch-macros.c | 3 |
6 files changed, 25 insertions, 2 deletions
diff --git a/clang/lib/Basic/Targets.cpp b/clang/lib/Basic/Targets.cpp index 9355f3b71b0..64c7dbee3e8 100644 --- a/clang/lib/Basic/Targets.cpp +++ b/clang/lib/Basic/Targets.cpp @@ -6941,9 +6941,13 @@ public: CPU = Name; bool CPUKnown = llvm::StringSwitch<bool>(Name) .Case("z10", true) + .Case("arch8", true) .Case("z196", true) + .Case("arch9", true) .Case("zEC12", true) + .Case("arch10", true) .Case("z13", true) + .Case("arch11", true) .Default(false); return CPUKnown; @@ -6952,9 +6956,9 @@ public: initFeatureMap(llvm::StringMap<bool> &Features, DiagnosticsEngine &Diags, StringRef CPU, const std::vector<std::string> &FeaturesVec) const override { - if (CPU == "zEC12") + if (CPU == "zEC12" || CPU == "arch10") Features["transactional-execution"] = true; - if (CPU == "z13") { + if (CPU == "z13" || CPU == "arch11") { Features["transactional-execution"] = true; Features["vector"] = true; } diff --git a/clang/test/CodeGen/systemz-abi-vector.c b/clang/test/CodeGen/systemz-abi-vector.c index 1d1f302e632..455e3bbcced 100644 --- a/clang/test/CodeGen/systemz-abi-vector.c +++ b/clang/test/CodeGen/systemz-abi-vector.c @@ -4,6 +4,8 @@ // RUN: -emit-llvm -o - %s | FileCheck --check-prefix=CHECK-VECTOR %s // RUN: %clang_cc1 -triple s390x-linux-gnu -target-cpu z13 \ // RUN: -emit-llvm -o - %s | FileCheck --check-prefix=CHECK-VECTOR %s +// RUN: %clang_cc1 -triple s390x-linux-gnu -target-cpu arch11 \ +// RUN: -emit-llvm -o - %s | FileCheck --check-prefix=CHECK-VECTOR %s // Vector types diff --git a/clang/test/CodeGen/systemz-abi.c b/clang/test/CodeGen/systemz-abi.c index 375d02a3588..17fdb9e322c 100644 --- a/clang/test/CodeGen/systemz-abi.c +++ b/clang/test/CodeGen/systemz-abi.c @@ -4,6 +4,8 @@ // RUN: -emit-llvm -o - %s | FileCheck %s // RUN: %clang_cc1 -triple s390x-linux-gnu -target-cpu z13 \ // RUN: -emit-llvm -o - %s | FileCheck %s +// RUN: %clang_cc1 -triple s390x-linux-gnu -target-cpu arch11 \ +// RUN: -emit-llvm -o - %s | FileCheck %s // Scalar types diff --git a/clang/test/CodeGen/target-data.c b/clang/test/CodeGen/target-data.c index c12ad2c1c97..63a85b59417 100644 --- a/clang/test/CodeGen/target-data.c +++ b/clang/test/CodeGen/target-data.c @@ -169,6 +169,8 @@ // RUN: %clang_cc1 -triple s390x-unknown -target-cpu z13 -o - -emit-llvm %s | \ // RUN: FileCheck %s -check-prefix=SYSTEMZ-VECTOR +// RUN: %clang_cc1 -triple s390x-unknown -target-cpu arch11 -o - -emit-llvm %s | \ +// RUN: FileCheck %s -check-prefix=SYSTEMZ-VECTOR // SYSTEMZ-VECTOR: target datalayout = "E-m:e-i1:8:16-i8:8:16-i64:64-f128:64-v128:64-a:8:16-n32:64" // RUN: %clang_cc1 -triple msp430-unknown -o - -emit-llvm %s | \ diff --git a/clang/test/Driver/systemz-march.c b/clang/test/Driver/systemz-march.c index ffc126f14fe..a5df1f482d1 100644 --- a/clang/test/Driver/systemz-march.c +++ b/clang/test/Driver/systemz-march.c @@ -2,12 +2,22 @@ // RUN: not %clang -target s390x -S -emit-llvm -march=z9 %s -o - 2>&1 | FileCheck --check-prefix=CHECK-Z9 %s // RUN: %clang -target s390x -### -S -emit-llvm -march=z10 %s 2>&1 | FileCheck --check-prefix=CHECK-Z10 %s +// RUN: %clang -target s390x -### -S -emit-llvm -march=arch8 %s 2>&1 | FileCheck --check-prefix=CHECK-ARCH8 %s // RUN: %clang -target s390x -### -S -emit-llvm -march=z196 %s 2>&1 | FileCheck --check-prefix=CHECK-Z196 %s +// RUN: %clang -target s390x -### -S -emit-llvm -march=arch9 %s 2>&1 | FileCheck --check-prefix=CHECK-ARCH9 %s // RUN: %clang -target s390x -### -S -emit-llvm -march=zEC12 %s 2>&1 | FileCheck --check-prefix=CHECK-ZEC12 %s +// RUN: %clang -target s390x -### -S -emit-llvm -march=arch10 %s 2>&1 | FileCheck --check-prefix=CHECK-ARCH10 %s +// RUN: %clang -target s390x -### -S -emit-llvm -march=z13 %s 2>&1 | FileCheck --check-prefix=CHECK-Z13 %s +// RUN: %clang -target s390x -### -S -emit-llvm -march=arch11 %s 2>&1 | FileCheck --check-prefix=CHECK-ARCH11 %s // CHECK-Z9: error: unknown target CPU 'z9' // CHECK-Z10: "-target-cpu" "z10" +// CHECK-ARCH8: "-target-cpu" "arch8" // CHECK-Z196: "-target-cpu" "z196" +// CHECK-ARCH9: "-target-cpu" "arch9" // CHECK-ZEC12: "-target-cpu" "zEC12" +// CHECK-ARCH10: "-target-cpu" "arch10" +// CHECK-Z13: "-target-cpu" "z13" +// CHECK-ARCH11: "-target-cpu" "arch11" int x; diff --git a/clang/test/Preprocessor/predefined-arch-macros.c b/clang/test/Preprocessor/predefined-arch-macros.c index dcb03b14d06..51b587e403e 100644 --- a/clang/test/Preprocessor/predefined-arch-macros.c +++ b/clang/test/Preprocessor/predefined-arch-macros.c @@ -1969,6 +1969,9 @@ // RUN: %clang -march=zEC12 -E -dM %s -o - 2>&1 \ // RUN: -target s390x-unknown-linux \ // RUN: | FileCheck -match-full-lines %s -check-prefix=CHECK_SYSTEMZ_ZEC12 +// RUN: %clang -march=arch10 -E -dM %s -o - 2>&1 \ +// RUN: -target s390x-unknown-linux \ +// RUN: | FileCheck -match-full-lines %s -check-prefix=CHECK_SYSTEMZ_ZEC12 // // CHECK_SYSTEMZ_ZEC12: #define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_1 1 // CHECK_SYSTEMZ_ZEC12: #define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_2 1 |