DPC++ Runtime
Runtime libraries for oneAPI DPC++
esimd.hpp
Go to the documentation of this file.
1 //==------------ esimd.hpp - DPC++ Explicit SIMD API -----------------------==//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 // The main header of the Explicit SIMD API.
9 //===----------------------------------------------------------------------===//
10 
11 #pragma once
12 
13 // clang-format off
43 
44 // clang-format on
45 
48 
51 
55 
58 
60 
64 
69 
71 
73 
74 // TODO Disable "changes ABI" warnings emitted by host compiler, because ESIMD
75 // code is supposed to be compiled by clang++ only for now anyway, plus ESIMD
76 // code performance on host is not an issue yet.
77 #if !defined(__SYCL_DEVICE_ONLY__) && defined(__clang__)
78 #pragma clang diagnostic push
79 #pragma clang diagnostic ignored "-Wpsabi"
80 #endif // !defined(__SYCL_DEVICE_ONLY__) && defined(__clang__)
81 
94 
95 #if !defined(__SYCL_DEVICE_ONLY__) && defined(__clang__)
96 #pragma clang diagnostics pop
97 #endif // !defined(__SYCL_DEVICE_ONLY__) && defined(__clang__)