Skip to content

Commit 2b0bef9

Browse files
committed
Merge remote-tracking branch 'upstream/sycl' into gmlueck/device-global-design
2 parents 2c5de3f + 61f1ae6 commit 2b0bef9

File tree

12,076 files changed

+625804
-413021
lines changed

Some content is hidden

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

12,076 files changed

+625804
-413021
lines changed

.github/CODEOWNERS

Lines changed: 15 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
* @bader
22

33
# Front-end compiler
4-
clang/ @premanandrao @elizabethandrews
4+
clang/ @premanandrao @elizabethandrews @smanna12
55

66
# Driver
77
clang/**/Driver @mdtoguchi @AGindinson @hchilama
@@ -25,6 +25,7 @@ sycl/ @intel/llvm-reviewers-runtime
2525
sycl/ReleaseNotes.md @pvchupin @tfzhu
2626
sycl/doc/ @pvchupin @bader
2727
sycl/doc/extensions/ @intel/dpcpp-specification-reviewers
28+
sycl/doc/extensions/SPIRV/ @AlexeySotkin @bashbaug @mbelicki
2829

2930
# Sub-groups
3031
sycl/include/CL/sycl/detail/spirv.hpp @Pennycook @AlexeySachkov
@@ -33,15 +34,15 @@ sycl/include/sycl/ext/intel/sub_group.hpp @Pennycook @AlexeySachkov
3334
sycl/include/sycl/ext/intel/sub_group_host.hpp @Pennycook @AlexeySachkov
3435

3536
# PI API
36-
sycl/include/CL/sycl/detail/pi.def @smaslov-intel
37-
sycl/include/CL/sycl/detail/pi.h @smaslov-intel
38-
sycl/include/CL/sycl/detail/pi.hpp @smaslov-intel
39-
sycl/include/CL/sycl/detail/pi* @smaslov-intel
40-
sycl/plugins/ @smaslov-intel
41-
sycl/source/detail/pi.cpp @smaslov-intel
42-
sycl/source/detail/plugin.hpp @smaslov-intel
43-
sycl/source/detail/posix_pi.cpp @smaslov-intel
44-
sycl/source/detail/windows_pi.cpp @smaslov-intel
37+
sycl/include/CL/sycl/detail/pi.def @smaslov-intel @againull
38+
sycl/include/CL/sycl/detail/pi.h @smaslov-intel @againull
39+
sycl/include/CL/sycl/detail/pi.hpp @smaslov-intel @againull
40+
sycl/include/CL/sycl/detail/pi* @smaslov-intel @againull
41+
sycl/plugins/ @smaslov-intel @againull
42+
sycl/source/detail/pi.cpp @smaslov-intel @againull
43+
sycl/source/detail/plugin.hpp @smaslov-intel @againull
44+
sycl/source/detail/posix_pi.cpp @smaslov-intel @againull
45+
sycl/source/detail/windows_pi.cpp @smaslov-intel @againull
4546

4647
# ESIMD CPU emulator plug-in
4748
sycl/plugins/esimd_cpu/ @kbobrovs @smaslov-intel
@@ -98,10 +99,10 @@ clang/tools/clang-offload-deps/ @sndmitriev @mlychkov @AlexeySachkov
9899
clang/tools/clang-offload-extract/ @sndmitriev @mlychkov @AlexeySachkov
99100

100101
# Explicit SIMD
101-
SYCLLowerIR/ @kbobrovs @DenisBakhvalov @kychendev
102-
esimd/ @kbobrovs @DenisBakhvalov @kychendev
103-
sycl/include/sycl/ext/intel/experimental/esimd.hpp @kbobrovs @DenisBakhvalov @kychendev
104-
sycl/doc/extensions/ExplicitSIMD/ @kbobrovs @DenisBakhvalov @kychendev
102+
SYCLLowerIR/ @kbobrovs @sndmitriev @kychendev @v-klochkov
103+
esimd/ @kbobrovs @v-klochkov @kychendev
104+
sycl/include/sycl/ext/intel/experimental/esimd.hpp @kbobrovs @v-klochkov @kychendev
105+
sycl/doc/extensions/ExplicitSIMD/ @kbobrovs @v-klochkov @kychendev
105106

106107
# ITT annotations
107108
llvm/lib/Transforms/Instrumentation/SPIRITTAnnotations.cpp @MrSidims @vzakhari

.github/lockdown.yml

Lines changed: 0 additions & 8 deletions
This file was deleted.

.github/workflows/clang-format.yml

Lines changed: 0 additions & 30 deletions
This file was deleted.

.github/workflows/repo-lockdown.yml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
name: 'Repo Lockdown'
2+
on:
3+
pull_request_target:
4+
types: opened
5+
6+
permissions:
7+
pull-requests: write
8+
9+
jobs:
10+
action:
11+
runs-on: ubuntu-latest
12+
if: github.repository == 'llvm/llvm-project'
13+
steps:
14+
- uses: dessant/repo-lockdown@v2
15+
with:
16+
process-only: 'prs'
17+
pr-comment: >
18+
This repository does not accept pull requests.
19+
Please follow http://llvm.org/docs/Contributing.html#how-to-submit-a-patch for contribution to LLVM.
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
name: CI Containers
2+
on:
3+
workflow_dispatch:
4+
schedule:
5+
# Every 1st and 15th day of month
6+
- cron: '0 0 1,15 * *'
7+
8+
jobs:
9+
base_image_ubuntu2004:
10+
if: github.repository == 'intel/llvm'
11+
name: Base Ubuntu 20.04 Docker image
12+
runs-on: ubuntu-latest
13+
steps:
14+
- name: Checkout
15+
uses: actions/checkout@v2
16+
with:
17+
fetch-depth: 1
18+
- name: Login to GitHub Container Registry
19+
uses: docker/login-action@v1
20+
with:
21+
registry: ghcr.io
22+
username: ${{ github.repository_owner }}
23+
password: ${{ secrets.GITHUB_TOKEN }}
24+
- name: Build and Push Container
25+
uses: docker/build-push-action@v2
26+
with:
27+
push: true
28+
tags: |
29+
ghcr.io/${{ github.repository }}/ubuntu2004_base:${{ github.sha }}
30+
ghcr.io/${{ github.repository }}/ubuntu2004_base:latest
31+
context: ${{ github.workspace }}/devops
32+
file: ${{ github.workspace }}/devops/containers/ubuntu2004_base.Dockerfile
Lines changed: 159 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,159 @@
1+
name: Reusable SYCL Linux build and test workflow
2+
3+
on:
4+
pull_request:
5+
paths:
6+
- '.github/workflows/sycl_linux_build_and_test.yml'
7+
workflow_call:
8+
inputs:
9+
cc:
10+
type: string
11+
required: false
12+
default: "gcc"
13+
cxx:
14+
type: string
15+
required: false
16+
default: "g++"
17+
build_image:
18+
type: string
19+
required: false
20+
default: "ghcr.io/intel/llvm/ubuntu2004_base:latest"
21+
build_runs_on:
22+
type: string
23+
required: false
24+
default: "ubuntu-latest"
25+
build_github_cache:
26+
type: boolean
27+
required: false
28+
default: false
29+
build_cache_root:
30+
type: string
31+
required: true
32+
build_cache_suffix:
33+
type: string
34+
required: false
35+
default: "default"
36+
build_cache_size:
37+
type: string
38+
required: false
39+
default: 2G
40+
build_configure_extra_args:
41+
type: string
42+
required: false
43+
default: ""
44+
build_artifact_suffix:
45+
type: string
46+
required: true
47+
build_upload_artifact:
48+
type: boolean
49+
required: false
50+
default: false
51+
52+
jobs:
53+
configure:
54+
name: Pre-build configuration
55+
runs-on: ubuntu-latest
56+
outputs:
57+
params: ${{ steps.input-parameters.outputs.params }}
58+
steps:
59+
- id: input-parameters
60+
env:
61+
INPUTS: ${{ toJSON(inputs) }}
62+
run: |
63+
if [[ "$GITHUB_EVENT_NAME" != "workflow_call" ]]; then
64+
INPUTS="{
65+
\"cc\":\"gcc\",
66+
\"cxx\":\"g++\",
67+
\"build_runs_on\":\"sycl-precommit-linux\",
68+
\"build_image\":\"ghcr.io/intel/llvm/ubuntu2004_base:latest\",
69+
\"build_github_cache\":\"false\",
70+
\"build_cache_root\":\"/__w/\",
71+
\"build_cache_suffix\":\"default\",
72+
\"build_cache_size\":\"2G\",
73+
\"build_configure_extra_args\":\"\",
74+
\"build_artifact_suffix\":\"default\",
75+
\"build_upload_artifact\":\"false\"
76+
}"
77+
fi
78+
INPUTS="${INPUTS//'%'/'%25'}"
79+
INPUTS="${INPUTS//$'\n'/'%0A'}"
80+
INPUTS="${INPUTS//$'\r'/'%0D'}"
81+
echo "::set-output name=params::$INPUTS"
82+
echo "$INPUTS"
83+
build:
84+
name: Build SYCL toolchain
85+
needs: configure
86+
runs-on: ${{ fromJSON(needs.configure.outputs.params).build_runs_on }}
87+
container:
88+
image: ${{ fromJSON(needs.configure.outputs.params).build_image }}
89+
options: -u 1001:1001
90+
steps:
91+
- uses: actions/checkout@v2
92+
with:
93+
path: src
94+
- name: Setup Cache
95+
uses: actions/cache@v2
96+
if: ${{ steps.parameters.build_github_cache }}
97+
id: cache
98+
with:
99+
path: ${{ fromJSON(needs.configure.outputs.params).build_cache_root }}/build_cache_${{ fromJSON(needs.configure.outputs.params).build_cache_suffix }}
100+
key: sycl-build-${{ fromJSON(needs.configure.outputs.params).build_cache_suffix }}-${{ github.sha }}
101+
restore-keys: |
102+
sycl-build-${{ fromJSON(needs.configure.outputs.params).build_cache_suffix }}-
103+
- name: Configure
104+
env:
105+
CC: ${{ fromJSON(needs.configure.outputs.params).cc }}
106+
CXX: ${{ fromJSON(needs.configure.outputs.params).cxx }}
107+
CACHE_ROOT: ${{ fromJSON(needs.configure.outputs.params).build_cache_root }}
108+
CACHE_SUFFIX: ${{ fromJSON(needs.configure.outputs.params).build_cache_suffix }}
109+
CACHE_SIZE: ${{ fromJSON(needs.configure.outputs.params).build_cache_size }}
110+
ARGS: ${{ fromJSON(needs.configure.outputs.params).build_configure_extra_args }}
111+
run: |
112+
mkdir -p $CACHE_ROOT/build_cache_$CACHE_SUFFIX
113+
mkdir -p $GITHUB_WORKSPACE/build
114+
cd $GITHUB_WORKSPACE/build
115+
python3 $GITHUB_WORKSPACE/src/buildbot/configure.py -w $GITHUB_WORKSPACE \
116+
-s $GITHUB_WORKSPACE/src -o $GITHUB_WORKSPACE/build -t Release \
117+
--ci-defaults $ARGS --cmake-opt="-DLLVM_CCACHE_BUILD=ON" \
118+
--cmake-opt="-DLLVM_CCACHE_DIR=$CACHE_ROOT/build_cache_$CACHE_SUFFIX" \
119+
--cmake-opt="-DLLVM_CCACHE_MAXSIZE=$CACHE_SIZE"
120+
- name: Compile
121+
run: cmake --build $GITHUB_WORKSPACE/build
122+
# TODO allow to optionally disable in-tree checks
123+
- name: check-llvm
124+
if: always()
125+
run: |
126+
cmake --build $GITHUB_WORKSPACE/build --target check-llvm
127+
- name: check-clang
128+
if: always()
129+
run: |
130+
export XDG_CACHE_HOME=$GITHUB_WORKSPACE/os_cache
131+
cmake --build $GITHUB_WORKSPACE/build --target check-clang
132+
- name: check-sycl
133+
if: always()
134+
run: |
135+
cmake --build $GITHUB_WORKSPACE/build --target check-sycl
136+
- name: check-llvm-spirv
137+
if: always()
138+
run: |
139+
cmake --build $GITHUB_WORKSPACE/build --target check-llvm-spirv
140+
- name: check-xptifw
141+
if: always()
142+
run: |
143+
cmake --build $GITHUB_WORKSPACE/build --target check-xptifw
144+
- name: Install
145+
if: ${{ steps.parameters.build_upload_artifact }}
146+
run: cmake --build $GITHUB_WORKSPACE/build --target install
147+
- name: Pack
148+
if: ${{ steps.parameters.build_upload_artifact }}
149+
run: tar -czf llvm_sycl.tar.gz -C $GITHUB_WORKSPACE/build/install .
150+
- name: Upload artifacts
151+
uses: actions/upload-artifact@v1
152+
if: ${{ steps.parameters.build_upload_artifact }}
153+
with:
154+
name: sycl_linux_${{ fromJSON(needs.configure.outputs.params).build_artifact_suffix }}
155+
path: llvm_sycl.tar.gz
156+
- name: Cleanup
157+
if: always()
158+
run: rm -rf $GITHUB_WORKSPACE/*
159+

.github/workflows/sycl_precommit.yml

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
name: SYCL
2+
3+
on:
4+
pull_request:
5+
branches:
6+
- sycl
7+
8+
jobs:
9+
lint:
10+
# TODO use nightly builds of SYCL to get clang-format
11+
runs-on: ubuntu-latest
12+
steps:
13+
- name: Get clang-format first
14+
run: sudo apt-get install -yqq clang-format
15+
16+
- uses: actions/checkout@v2
17+
with:
18+
fetch-depth: 2
19+
20+
- name: Run clang-format
21+
uses: ./devops/actions/clang-format
22+
23+
linux_default:
24+
name: Default Linux
25+
# Only build and test patches, that have passed all linter checks, because
26+
# the next commit is likely to be a follow-up on that job.
27+
needs: lint
28+
if: always() && (success() || contains(github.event.pull_request.labels.*.name, 'ignore-lint'))
29+
uses: intel/llvm/.github/workflows/sycl_linux_build_and_test.yml@sycl
30+
with:
31+
build_runs_on: "sycl-precommit-linux"
32+
build_cache_root: "/__w/"
33+
build_cache_size: "8G"
34+
build_artifact_suffix: "default"
35+
build_cache_suffix: "default"
36+

.mailmap

Lines changed: 2 additions & 0 deletions

0 commit comments

Comments
 (0)