summaryrefslogtreecommitdiffstats
path: root/clang/test/Driver
diff options
context:
space:
mode:
authorNemanja Ivanovic <nemanja.i.ibm@gmail.com>2019-06-05 01:57:57 +0000
committerNemanja Ivanovic <nemanja.i.ibm@gmail.com>2019-06-05 01:57:57 +0000
commit6321c680659118220e954511d2aec3770d3c8154 (patch)
tree65e910a04e47ccdf0ea47960573448ea1fa95a2d /clang/test/Driver
parentff918fb487e3f3a161217bd855889d3ea7a9a6e8 (diff)
downloadbcm5719-llvm-6321c680659118220e954511d2aec3770d3c8154.tar.gz
bcm5719-llvm-6321c680659118220e954511d2aec3770d3c8154.zip
Initial support for vectorization using MASSV (IBM MASS vector library)
Part 2 (the Clang portion) of D59881. This patch (first of two patches) enables the vectorizer to recognize the IBM MASS vector library routines. This patch specifically adds support for recognizing the -vector-library=MASSV option, and defines mappings from IEEE standard scalar math functions to generic PowerPC MASS vector counterparts. For instance, the generic PowerPC MASS vector entry for double-precision cbrt function is __cbrtd2_massv. The second patch will further lower the generic PowerPC vector entries to PowerPC subtarget-specific entries. For instance, the PowerPC generic entry cbrtd2_massv is lowered to cbrtd2_P9 for Power9 subtarget. The overall support for MASS vector library is presented as such in two patches for ease of review. Patch by Jeeva Paudel. Differential revision: https://reviews.llvm.org/D59881 llvm-svn: 362571
Diffstat (limited to 'clang/test/Driver')
-rw-r--r--clang/test/Driver/autocomplete.c1
-rw-r--r--clang/test/Driver/fveclib.c2
2 files changed, 3 insertions, 0 deletions
diff --git a/clang/test/Driver/autocomplete.c b/clang/test/Driver/autocomplete.c
index f8271770d06..7805c3bc789 100644
--- a/clang/test/Driver/autocomplete.c
+++ b/clang/test/Driver/autocomplete.c
@@ -68,6 +68,7 @@
// FLTOALL-NEXT: thin
// RUN: %clang --autocomplete=-fveclib= | FileCheck %s -check-prefix=FVECLIBALL
// FVECLIBALL: Accelerate
+// FVECLIBALL-NEXT: MASSV
// FVECLIBALL-NEXT: none
// FVECLIBALL-NEXT: SVML
// RUN: %clang --autocomplete=-fshow-overloads= | FileCheck %s -check-prefix=FSOVERALL
diff --git a/clang/test/Driver/fveclib.c b/clang/test/Driver/fveclib.c
index 3bd4bf630f0..2ec35280d55 100644
--- a/clang/test/Driver/fveclib.c
+++ b/clang/test/Driver/fveclib.c
@@ -1,9 +1,11 @@
// RUN: %clang -### -c -fveclib=none %s 2>&1 | FileCheck -check-prefix CHECK-NOLIB %s
// RUN: %clang -### -c -fveclib=Accelerate %s 2>&1 | FileCheck -check-prefix CHECK-ACCELERATE %s
+// RUN: %clang -### -c -fveclib=MASSV %s 2>&1 | FileCheck -check-prefix CHECK-MASSV %s
// RUN: not %clang -c -fveclib=something %s 2>&1 | FileCheck -check-prefix CHECK-INVALID %s
// CHECK-NOLIB: "-fveclib=none"
// CHECK-ACCELERATE: "-fveclib=Accelerate"
+// CHECK-MASSV: "-fveclib=MASSV"
// CHECK-INVALID: error: invalid value 'something' in '-fveclib=something'
OpenPOWER on IntegriCloud