Skip to content

intel/llvm

sycl
Switch branches/tags
Code

Latest commit

…6386)

C++17 usage of if constexpr etc was added to experimental/builtins.hpp as requested in #5964, but I did not remove this header from sycl.hpp since there were no failing tests and I didn't notice it was included in sycl.hpp. Apparently sycl.hpp should not include any usage of C++17. This may be related to some of the failing tests that appear only on the CI: intel/llvm-test-suite#975 (comment). Necessary changes to the tests are added here : intel/llvm-test-suite#1072

Signed-off-by: JackAKirk jack.kirk@codeplay.com
2e1c36f

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
lld
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Intel Project for LLVM* technology

This is the Intel staging area for llvm.org contributions and the home for Intel LLVM-based projects:

oneAPI DPC++ compiler

SYCL Post Commit Generate Doxygen documentation

The DPC++ is a LLVM-based compiler project that implements compiler and runtime support for the SYCL* language. The project is hosted in the sycl branch and is synced with the tip of the LLVM upstream main branch on a regular basis (revisions delay is usually not more than 1-2 weeks). DPC++ compiler takes everything from LLVM upstream as is, however some modules of LLVM might be not included in the default project build configuration. Additional modules can be enabled by modifying build framework settings.

The DPC++ goal is to support the latest SYCL* standard and work on that is in progress. DPC++ also implements a number of extensions to the SYCL* standard, which can be found in the sycl/doc/extensions directory.

The main purpose of this project is open source collaboration on the DPC++ compiler implementation in LLVM across a variety of architectures, prototyping compiler and runtime library solutions, designing future extensions, and conducting experiments. As the implementation becomes more mature, we try to upstream as much DPC++ support to LLVM main branch as possible. See SYCL upstreaming working group notes for more details.

Note that this project can be used as a technical foundation for some proprietary compiler products, which may leverage implementations from this open source project. One of the examples is Intel(R) oneAPI DPC++ Compiler Features parity between this project and downstream projects is not guaranteed.

Project documentation is available at: DPC++ Documentation.

How to use DPC++

Docker containers

See available containers with pre-built/pre-installed DPC++ compiler at: Containers

Releases

Daily builds of the sycl branch on Linux are available at releases. A few times a year, we publish Release Notes to highlight all important changes made in the project: features implemented and issues addressed. The corresponding builds can be found using search in daily releases. None of the branches in the project are stable or rigorously tested for production quality control, so the quality of these releases is expected to be similar to the daily releases.

Build from sources

See Get Started Guide.

Report a problem

Submit an issue or initiate a discussion.

How to contribute to DPC++

See ContributeToDPCPP.

Late-outline OpenMP* and OpenMP* Offload

See openmp branch.

License

See LICENSE for details.

*Other names and brands may be claimed as the property of others.