Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions libsycl/.clang-format
Original file line number Diff line number Diff line change
@@ -1 +1,4 @@
BasedOnStyle: LLVM

# Preferred indentions of preprocessor statements.
IndentPPDirectives: AfterHash
4 changes: 2 additions & 2 deletions libsycl/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,11 @@ libsycl runtime library and headers require C++17 support or higher.

### How to use libsycl with Clang

TBD
TODO

#### How to build

TBD
TODO

# License

Expand Down
12 changes: 11 additions & 1 deletion libsycl/docs/index.rst
Original file line number Diff line number Diff line change
@@ -1,7 +1,14 @@
=====================
SYCL runtime implementation
=====================

.. contents::
:local:

.. _index:

Current Status
==============
========

The implementation is in the very early stages of upstreaming. The first milestone is to get
support for a simple SYCL application with device code using Unified Shared Memory:
Expand Down Expand Up @@ -46,6 +53,9 @@ This requires at least partial support of the following functionality on the lib
* Unified shared memory allocation/deallocation
* Program manager, an internal component for retrieving and using device images from the multi-architectural binaries

Builds steps
========

To build LLVM with libsycl runtime enabled the following script can be used.

.. code-block:: console
Expand Down
34 changes: 17 additions & 17 deletions libsycl/include/sycl/__detail/config.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -28,31 +28,31 @@

#ifndef __SYCL_DEVICE_ONLY__

#ifndef _LIBSYCL_EXPORT
#ifdef _WIN32
# ifndef _LIBSYCL_EXPORT
# ifdef _WIN32

#define _LIBSYCL_DLL_LOCAL
# define _LIBSYCL_DLL_LOCAL

#if _LIBSYCL_BUILD_SYCL_DLL
#define _LIBSYCL_EXPORT __declspec(dllexport)
#else
#define _LIBSYCL_EXPORT __declspec(dllimport)
#endif //_LIBSYCL_BUILD_SYCL_DLL
# if _LIBSYCL_BUILD_SYCL_DLL
# define _LIBSYCL_EXPORT __declspec(dllexport)
# else
# define _LIBSYCL_EXPORT __declspec(dllimport)
# endif //_LIBSYCL_BUILD_SYCL_DLL

#else // _WIN32
# else // _WIN32

#define _LIBSYCL_DLL_LOCAL __attribute__((visibility("hidden")))
#define _LIBSYCL_EXPORT __attribute__((visibility("default")))
# define _LIBSYCL_DLL_LOCAL [[gnu::visibility("hidden")]]
# define _LIBSYCL_EXPORT [[gnu::visibility("default")]]

#endif // _WIN32
#endif // _LIBSYCL_EXPORT
# endif // _WIN32
# endif // _LIBSYCL_EXPORT

#else // __SYCL_DEVICE_ONLY__

#ifndef _LIBSYCL_EXPORT
#define _LIBSYCL_EXPORT
#define _LIBSYCL_DLL_LOCAL
#endif
# ifndef _LIBSYCL_EXPORT
# define _LIBSYCL_EXPORT
# define _LIBSYCL_DLL_LOCAL
# endif

#endif // __SYCL_DEVICE_ONLY__

Expand Down
5 changes: 5 additions & 0 deletions libsycl/include/sycl/sycl.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,11 @@
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//
///
/// \file
/// This file is a SYCL2020 standard header file.
///
//===----------------------------------------------------------------------===//

#ifndef _LIBSYCL_SYCL_HPP
#define _LIBSYCL_SYCL_HPP
Expand Down
Loading