OpenMPKinds.def revision 263508
1//===--- OpenMPKinds.def - OpenMP directives and clauses list ---*- C++ -*-===// 2// 3// The LLVM Compiler Infrastructure 4// 5// This file is distributed under the University of Illinois Open Source 6// License. See LICENSE.TXT for details. 7// 8//===----------------------------------------------------------------------===// 9/// \file 10/// \brief This file defines the list of supported OpenMP directives and 11/// clauses. 12/// 13//===----------------------------------------------------------------------===// 14 15#ifndef OPENMP_DIRECTIVE 16# define OPENMP_DIRECTIVE(Name) 17#endif 18#ifndef OPENMP_CLAUSE 19# define OPENMP_CLAUSE(Name, Class) 20#endif 21#ifndef OPENMP_PARALLEL_CLAUSE 22# define OPENMP_PARALLEL_CLAUSE(Name) 23#endif 24#ifndef OPENMP_DEFAULT_KIND 25# define OPENMP_DEFAULT_KIND(Name) 26#endif 27 28// OpenMP directives. 29OPENMP_DIRECTIVE(threadprivate) 30OPENMP_DIRECTIVE(parallel) 31OPENMP_DIRECTIVE(task) 32 33// OpenMP clauses. 34OPENMP_CLAUSE(default, OMPDefaultClause) 35OPENMP_CLAUSE(private, OMPPrivateClause) 36OPENMP_CLAUSE(firstprivate, OMPFirstprivateClause) 37OPENMP_CLAUSE(shared, OMPSharedClause) 38 39// Clauses allowed for OpenMP directives. 40OPENMP_PARALLEL_CLAUSE(default) 41OPENMP_PARALLEL_CLAUSE(private) 42OPENMP_PARALLEL_CLAUSE(firstprivate) 43OPENMP_PARALLEL_CLAUSE(shared) 44 45// Static attributes for 'default' clause. 46OPENMP_DEFAULT_KIND(none) 47OPENMP_DEFAULT_KIND(shared) 48 49#undef OPENMP_DEFAULT_KIND 50#undef OPENMP_DIRECTIVE 51#undef OPENMP_CLAUSE 52#undef OPENMP_PARALLEL_CLAUSE 53