1 // -*- C++ -*- 2 //===-- parallel_backend.h ------------------------------------------------===// 3 // 4 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 5 // See https://llvm.org/LICENSE.txt for license information. 6 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 7 // 8 //===----------------------------------------------------------------------===// 9 10 #ifndef _PSTL_PARALLEL_BACKEND_H 11 #define _PSTL_PARALLEL_BACKEND_H 12 13 #if defined(_PSTL_PAR_BACKEND_SERIAL) 14 # include "parallel_backend_serial.h" 15 namespace __pstl 16 { 17 namespace __par_backend = __serial_backend; 18 } 19 #elif defined(_PSTL_PAR_BACKEND_TBB) 20 # include "parallel_backend_tbb.h" 21 namespace __pstl 22 { 23 namespace __par_backend = __tbb_backend; 24 } 25 #elif defined(_PSTL_PAR_BACKEND_OPENMP) 26 # include "parallel_backend_omp.h" 27 namespace __pstl 28 { 29 namespace __par_backend = __omp_backend; 30 } 31 #else 32 _PSTL_PRAGMA_MESSAGE("Parallel backend was not specified"); 33 #endif 34 35 #endif /* _PSTL_PARALLEL_BACKEND_H */ 36