summaryrefslogtreecommitdiff
path: root/lib/CodeGen/CGOpenMPRuntime.h
diff options
context:
space:
mode:
authorAlexey Bataev <a.bataev@hotmail.com>2016-05-06 09:40:08 +0000
committerAlexey Bataev <a.bataev@hotmail.com>2016-05-06 09:40:08 +0000
commita84538806bedc0bde540ba609a23e0b2c8d4e11a (patch)
tree35337ae82057a99f13c1e30502eee3e9463ea608 /lib/CodeGen/CGOpenMPRuntime.h
parentf7053ec90d0fc56f0837e43c2c759e85b56c21a1 (diff)
downloadclang-a84538806bedc0bde540ba609a23e0b2c8d4e11a.tar.gz
[OPENMP 4.0] Codegen for 'declare simd' directive.
OpenMP 4.0 adds support for elemental functions using declarative directive '#pragma omp declare simd'. Patch adds mangling for simd functions in accordance with https://sourceware.org/glibc/wiki/libmvec?action=AttachFile&do=view&target=VectorABI.txt git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@268721 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/CGOpenMPRuntime.h')
-rw-r--r--lib/CodeGen/CGOpenMPRuntime.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/lib/CodeGen/CGOpenMPRuntime.h b/lib/CodeGen/CGOpenMPRuntime.h
index 881bd6a9c3..e7c3fd7e87 100644
--- a/lib/CodeGen/CGOpenMPRuntime.h
+++ b/lib/CodeGen/CGOpenMPRuntime.h
@@ -1013,6 +1013,13 @@ public:
const OMPExecutableDirective &D,
const Expr *IfCond,
const Expr *Device);
+
+ /// Marks function \a Fn with properly mangled versions of vector functions.
+ /// \param FD Function marked as 'declare simd'.
+ /// \param Fn LLVM function that must be marked with 'declare simd'
+ /// attributes.
+ virtual void emitDeclareSimdFunction(const FunctionDecl *FD,
+ llvm::Function *Fn);
};
} // namespace CodeGen