Skip to content

Commit 3f9f6d8

Browse files
author
Alexander Batashev
committed
Merge remote-tracking branch 'origin/sycl' into private/abatashe/basic_abi_checks
* origin/sycl: (6966 commits) [NFC][SYCL] Do not add `sycl_device` attribute to OpenCL kernel (intel#1439) [SYCL][NFC] Move SYCL pipe metadata call to be inside the null check for D (intel#1436) [SYCL][NFC] Move template function definition to .h file (intel#1433) [SYCL] Don't expose vector of booleans as storage format (intel#1419) [SYCL] Don't throw exceptions from destructors (intel#1378) [BuildBot] Add support for multiple CMake options (intel#1434) [SYCL][NFC] Fix warning inline namespace reopened as no-inline (intel#1435) [SYCL] Check if loadPlugin returns a nullptr (intel#1411) [SYCL] Release notes for February'20 SYCL implementation update (intel#1400) [SYCL][Doc] Improve contribution guidelines (intel#1422) [BuildBot] Add --cmake-opts option to configure.py script (intel#1430) [SYCL] Enable non-read-write memory object mapping in scheduler (intel#1390) [SYCL][Driver] Do not store AOT-specific options in the image descriptor (intel#1428) [Driver][NFC] Fix string problem used for tracking duplicate triples (intel#1424) [SYCL][NFC] Use the non-deprecated setAlignment() in LowerWGScope (intel#1420) [SYCL][NFC] Fix formatting in GetStartedGuide (intel#1417) [NFC] Move CODEOWNERS file to enable GitHub automation (intel#1418) [SYCL] Add test for private array init by zeroes (intel#1402) [Driver][SYCL][FPGA] Adjust device and AOCX link order for FPGA (intel#1389) [SYCL] Change runtime check to assert in program_manager.cpp (intel#1413) ...
2 parents a5f4978 + 0c3e012 commit 3f9f6d8

File tree

24,028 files changed

+1058475
-1085090
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

24,028 files changed

+1058475
-1085090
lines changed

.arcconfig

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
11
{
2+
"phabricator.uri" : "https://reviews.llvm.org/",
23
"repository.callsign" : "G",
3-
"conduit_uri" : "https://reviews.llvm.org/"
4+
"conduit_uri" : "https://reviews.llvm.org/",
5+
"base": "git:HEAD^"
46
}

.clang-tidy

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,4 +14,6 @@ CheckOptions:
1414
value: CamelCase
1515
- key: readability-identifier-naming.VariableCase
1616
value: CamelCase
17+
- key: readability-identifier-naming.IgnoreMainLikeFunctions
18+
value: 1
1719

.git-blame-ignore-revs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,3 +16,9 @@
1616

1717
# r280751: [Coding style change][lldb] Moved LLDB code base to use LLVM style
1818
b9c1b51e45b845debb76d8658edabca70ca56079
19+
20+
# r302421: That change incorrectly changed line endings in some libc++ files
21+
9669df28d4fd3c52d09f451186bd217cdc3322c0
22+
23+
# r302496: That is the revert of r302421
24+
ff63090b0e1072bd398b8efef8ae2291613a6ec9

.github/CODEOWNERS

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
clang/ @erichkeane, @Fznamznon
2+
3+
clang/**/Driver @mdtoguchi @AGindinson
4+
5+
llvm-spirv/ @AlexeySotkin, @AlexeySachkov
6+
7+
opencl-aot/ @dm-vodopyanov, @AlexeySachkov, @romanovvlad
8+
9+
libdevice/ @asavonic, @vzakhari
10+
11+
sycl/doc/extensions/ @mkinsner, @jbrodman
12+
13+
sycl/doc/ @pvchupin, @kbobrovs
14+
15+
sycl/ @romanovvlad, @bader
16+
17+
xpti/ @tovinkere, @andykaylor
18+
19+
* @bader

.github/workflows/clang-format.yml

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
name: clang-format-check
2+
3+
on:
4+
pull_request:
5+
branches:
6+
- sycl
7+
8+
jobs:
9+
build:
10+
runs-on: ubuntu-latest
11+
steps:
12+
- uses: actions/checkout@v2
13+
with:
14+
fetch-depth: 2
15+
16+
- name: Get clang-format first
17+
run: sudo apt-get install -yqq clang-format-9
18+
19+
- name: Run clang-format for the patch
20+
run: |
21+
git diff -U0 --no-color ${GITHUB_SHA}^1 ${GITHUB_SHA} -- | ./clang/tools/clang-format/clang-format-diff.py -p1 -binary clang-format-9 > ./clang-format.patch
22+
23+
# Add patch with formatting fixes to CI job artifacts
24+
- uses: actions/upload-artifact@v1
25+
with:
26+
name: clang-format-patch
27+
path: ./clang-format.patch
28+
29+
- name: Check if clang-format patch is empty
30+
run: bash -c "if [ -s ./clang-format.patch ]; then cat ./clang-format.patch; exit 1; fi"

.github/workflows/gh_pages.yml

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
name: Generate Doxygen documentation
2+
3+
on:
4+
schedule:
5+
- cron: 0 1 * * *
6+
7+
jobs:
8+
build:
9+
runs-on: ubuntu-latest
10+
steps:
11+
- uses: actions/checkout@v2
12+
with:
13+
ref: sycl
14+
path: repo
15+
- name: Install deps
16+
run: |
17+
sudo apt-get install -y doxygen graphviz ssh ninja-build
18+
sudo pip3 install sphinx recommonmark sphinx_markdown_tables
19+
- name: Build Docs
20+
run: |
21+
mkdir -p $GITHUB_WORKSPACE/build
22+
cd $GITHUB_WORKSPACE/build
23+
python $GITHUB_WORKSPACE/repo/buildbot/configure.py -w $GITHUB_WORKSPACE \
24+
-s $GITHUB_WORKSPACE/repo -o $GITHUB_WORKSPACE/build -t Release --docs
25+
cmake --build . --target doxygen-sycl
26+
cmake --build . --target docs-sycl-html
27+
- name: Deploy
28+
env:
29+
SSH_KEY: ${{secrets.ACTIONS_DEPLOY_KEY}}
30+
run: |
31+
mkdir -p ~/.ssh
32+
echo "$SSH_KEY" > ~/.ssh/id_rsa
33+
chmod 600 ~/.ssh/id_rsa
34+
eval "$(ssh-agent -s)"
35+
ssh-add -k ~/.ssh/id_rsa
36+
git clone [email protected]:intel/llvm-docs.git docs
37+
cd $GITHUB_WORKSPACE/docs
38+
git rm -rf .
39+
touch .nojekyll
40+
yes | \cp -rf $GITHUB_WORKSPACE/build/tools/sycl/doc/html/* .
41+
mkdir doxygen
42+
yes | \cp -rf $GITHUB_WORKSPACE/build/tools/sycl/doc/doxygen/html/* doxygen/
43+
git config --global user.name "iclsrc"
44+
git config --global user.email "[email protected]"
45+
git add .
46+
git diff-index --quiet HEAD || git commit -m "Update docs" -s
47+
git push
Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
name: Linux Post Commit Checks
2+
3+
on:
4+
push:
5+
branches:
6+
- sycl
7+
jobs:
8+
check:
9+
runs-on: ubuntu-latest
10+
strategy:
11+
fail-fast: false
12+
matrix:
13+
config: ["Default", "SharedLibs", "Assertions"]
14+
15+
steps:
16+
- uses: actions/checkout@v2
17+
with:
18+
path: src
19+
- name: Install Ubuntu deps
20+
run: sudo apt install -y ninja-build
21+
- name: Configure
22+
run: |
23+
CONFIG=${{ matrix.config }}
24+
case $CONFIG in
25+
Default)
26+
export ARGS=""
27+
;;
28+
SharedLibs)
29+
export ARGS="--shared-libs"
30+
;;
31+
Assertiosn)
32+
export ARGS="--assertions"
33+
;;
34+
esac
35+
mkdir -p $GITHUB_WORKSPACE/build
36+
cd $GITHUB_WORKSPACE/build
37+
python3 $GITHUB_WORKSPACE/src/buildbot/configure.py -w $GITHUB_WORKSPACE \
38+
-s $GITHUB_WORKSPACE/src -o $GITHUB_WORKSPACE/build -t Release --no-ocl $ARGS
39+
- name: Compile
40+
run: |
41+
python3 $GITHUB_WORKSPACE/src/buildbot/compile.py -w $GITHUB_WORKSPACE \
42+
-s $GITHUB_WORKSPACE/src -o $GITHUB_WORKSPACE/build
43+
- name: check-llvm
44+
if: always()
45+
run: |
46+
python3 $GITHUB_WORKSPACE/src/buildbot/check.py -w $GITHUB_WORKSPACE \
47+
-s $GITHUB_WORKSPACE/src -o $GITHUB_WORKSPACE/build -t check-llvm
48+
- name: check-clang
49+
if: always()
50+
run: |
51+
python3 $GITHUB_WORKSPACE/src/buildbot/check.py -w $GITHUB_WORKSPACE \
52+
-s $GITHUB_WORKSPACE/src -o $GITHUB_WORKSPACE/build -t check-clang
53+
- name: check-sycl
54+
if: always()
55+
run: |
56+
python3 $GITHUB_WORKSPACE/src/buildbot/check.py -w $GITHUB_WORKSPACE \
57+
-s $GITHUB_WORKSPACE/src -o $GITHUB_WORKSPACE/build -t check-sycl
58+
- name: check-llvm-spirv
59+
if: always()
60+
run: |
61+
python3 $GITHUB_WORKSPACE/src/buildbot/check.py -w $GITHUB_WORKSPACE \
62+
-s $GITHUB_WORKSPACE/src -o $GITHUB_WORKSPACE/build -t check-llvm-spirv
63+
- name: Pack
64+
run: tar -czvf llvm_sycl.tar.gz -C $GITHUB_WORKSPACE/build/install .
65+
- name: Upload artifacts
66+
uses: actions/upload-artifact@v1
67+
with:
68+
name: sycl_linux_${{ matrix.config }}
69+
path: llvm_sycl.tar.gz
70+

CONTRIBUTING.md

Lines changed: 45 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
# Contributing
22

33
## License
4-
Intel Project for LLVM* technology is licensed under the terms of the
5-
Apache-2.0 with LLVM-exception license (
6-
[LICENSE.txt](https://github.com/intel/llvm/blob/intel/llvm/LICENSE.TXT))
4+
Intel Project for LLVM\* technology is licensed under the terms of the
5+
Apache-2.0 with LLVM-exception license ([LICENSE.txt](llvm/LICENSE.TXT))
76
to ensure our ability to contribute this project to the LLVM project
87
under the same license.
98

@@ -63,32 +62,57 @@ Then you just add a line to every git commit message:
6362

6463
Use your real name (sorry, no pseudonyms or anonymous contributions.)
6564

66-
If you set your `user.name` and `user.email` git configs, you can sign your commit automatically with `git commit -s`.
65+
If you set your `user.name` and `user.email` git configs, you can sign your
66+
commit automatically with `git commit -s`.
6767

6868
## Contribution process
6969

7070
### Development
7171

72-
- Create a personal fork of the project on GitHub.
73-
- Use **sycl** branch as baseline for your changes.
74-
- Prepare your patch (follow [LLVM coding standards](https://llvm.org/docs/CodingStandards.html)).
75-
- Build the project and run all tests (see [GetStartedWithSYCLCompiler.md](https://github.com/intel/llvm/blob/sycl/sycl/doc/GetStartedWithSYCLCompiler.md))
72+
**NB**: For any changes not related to DPC++, but rather to LLVM in general, it
73+
is strongly encouraged that you submit the patch to https://llvm.org/ directly.
74+
See [LLVM contribution guidelines](https://llvm.org/docs/Contributing.html)
75+
for more information.
76+
77+
- Create a personal fork of the project on GitHub
78+
- For the DPC++ Compiler project, use **sycl** branch as baseline for your
79+
changes. See [Get Started Guide](sycl/doc/GetStartedGuide.md).
80+
- Prepare your patch (follow
81+
[LLVM coding standards](https://llvm.org/docs/CodingStandards.html)).
82+
[clang-format](https://clang.llvm.org/docs/ClangFormat.html) and [clang-tidy](
83+
https://clang.llvm.org/extra/clang-tidy/) tools can be integrated into your
84+
workflow to ensure formatting and stylistic compliance of your changes.
85+
- Build the project and run all tests.
86+
87+
### Commit message
88+
89+
- When writing your commit message, please make sure to follow
90+
[LLVM developer policies](
91+
https://llvm.org/docs/DeveloperPolicy.html#commit-messages) on the subject.
92+
- For any DPC++-related commit, the `[SYCL]` tag should be present in the
93+
commit message title. To a reasonable extent, additional tags can be used
94+
to signify the component changed, e.g.: `[PI]`, `[CUDA]`, `[Doc]`.
7695

7796
### Review and acceptance testing
7897

79-
- Create a pull request for your changes following [Creating a pull request instructions](https://help.github.com/articles/creating-a-pull-request/).
80-
- When the pull request is created signed-off check is done.
81-
- **check_pr** - verifies that the signed-off mark is added to each commit message.
82-
- Once the pull request is approved by an Intel representative, build and functional testing are started.
83-
- **sycl-ubu-x64-pr** - runs all LIT tests on machine with OpenCL runtimes for CPU and GPU.
84-
- Approval is lost once the PR branch is updated. New approval and checks rerun are required.
85-
- Once approval is received and all checks pass, the pull request is ready to be merged.
98+
- Create a pull request for your changes following [Creating a pull request
99+
instructions](https://help.github.com/articles/creating-a-pull-request/).
100+
- CI will run a signed-off check as soon as your PR is created - see the
101+
**check_pr** CI action results.
102+
- CI will run several build and functional testing checks as soon as the PR is
103+
approved by an Intel representative.
104+
- A new approval is needed if the PR was updated (e.g. during code review).
105+
- Once the PR is approved and all checks have passed, the pull request is
106+
ready for merge.
86107

87108
### Merge
88109

89-
Merge of pull request is done only by project maintainers. There are three options:
90-
- [Rebase and merge] The preferable choice for PRs containing a single commit.
91-
- [Squash and merge] Used when there are multiple commits in the PR.
92-
Squashing is done to shorten history and make sure that the project is buildable on any commit.
93-
- [Create a merge commit] Used for pull down PRs to avoid duplication of
94-
LLVM commits.
110+
Project maintainers merge pull requests using one of the following options:
111+
- [Rebase and merge] The preferable choice for PRs containing a single commit
112+
- [Squash and merge] Used when there are multiple commits in the PR
113+
- Squashing is done to make sure that the project is buildable on any commit
114+
- [Create a merge commit] Used for LLVM pull-down PRs to preserve hashes of the
115+
commits pulled from the LLVM community repository
116+
117+
118+
*Other names and brands may be claimed as the property of others.

README.md

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,28 @@
1-
# Intel Project for LLVM* technology
1+
# Intel Project for LLVM\* technology
22

33
## Introduction
44

55
Intel staging area for llvm.org contribution.
66
Home for Intel LLVM-based projects:
7-
- SYCL* Compiler and Runtimes - compiler and runtime libraries for SYCL ([https://www.khronos.org/sycl/](https://www.khronos.org/sycl/)). See **sycl** branch.
7+
- oneAPI Data Parallel C++ compiler - see **sycl** branch. More information on
8+
oneAPI and DPC++ is available at
9+
([https://www.oneapi.com/](https://www.oneapi.com/))
810

911
## License
1012
See [LICENSE.txt](sycl/LICENSE.TXT) for details.
1113

12-
1314
## Contributing
1415
See [CONTRIBUTING.md](CONTRIBUTING.md) for details.
1516

1617
## Sub-projects Documentation
17-
- SYCL Compiler and Runtimes - See [GetStartedWithSYCLCompiler.md](sycl/doc/GetStartedWithSYCLCompiler.md)
18+
- oneAPI Data Parallel C++ compiler - See
19+
[GetStartedGuide.md](sycl/doc/GetStartedGuide.md)
20+
21+
## DPC++ extensions
1822

19-
*Other names and brands may be claimed as the property of others.
23+
DPC++ is an open, cross-architecture language built upon the ISO C++ and Khronos
24+
SYCL\* standards. DPC++ extends these standards with a number of extensions,
25+
which can be found in [sycl/doc/extensions](sycl/doc/extensions) directory.
2026

21-
## SYCL Extension Proposal Documents
27+
\*Other names and brands may be claimed as the property of others.
2228

23-
See [sycl/doc/extensions](sycl/doc/extensions)

0 commit comments

Comments
 (0)