-
Notifications
You must be signed in to change notification settings - Fork 700
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'sycl' into atomic_querries
# Conflicts: # sycl/include/CL/sycl/info/info_desc.hpp
- Loading branch information
Showing
4,516 changed files
with
211,273 additions
and
176,728 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
There are no files selected for viewing
Validating CODEOWNERS rules …
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
name: 'Repo Lockdown' | ||
on: | ||
pull_request_target: | ||
types: opened | ||
|
||
permissions: | ||
pull-requests: write | ||
|
||
jobs: | ||
action: | ||
runs-on: ubuntu-latest | ||
if: github.repository == 'llvm/llvm-project' | ||
steps: | ||
- uses: dessant/repo-lockdown@v2 | ||
with: | ||
process-only: 'prs' | ||
pr-comment: > | ||
This repository does not accept pull requests. | ||
Please follow http://llvm.org/docs/Contributing.html#how-to-submit-a-patch for contribution to LLVM. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,162 @@ | ||
name: Reusable SYCL Linux build and test workflow | ||
|
||
on: | ||
pull_request: | ||
paths: | ||
- '.github/workflows/sycl_linux_build_and_test.yml' | ||
workflow_call: | ||
inputs: | ||
cc: | ||
type: string | ||
required: false | ||
default: "gcc" | ||
cxx: | ||
type: string | ||
required: false | ||
default: "g++" | ||
build_image: | ||
type: string | ||
required: false | ||
default: "ghcr.io/intel/llvm/ubuntu2004_base:latest" | ||
build_runs_on: | ||
type: string | ||
required: false | ||
default: "ubuntu-latest" | ||
build_github_cache: | ||
type: boolean | ||
required: false | ||
default: false | ||
build_cache_root: | ||
type: string | ||
required: true | ||
build_cache_suffix: | ||
type: string | ||
required: false | ||
default: "default" | ||
build_cache_size: | ||
type: string | ||
required: false | ||
default: 2G | ||
build_configure_extra_args: | ||
type: string | ||
required: false | ||
default: "" | ||
build_artifact_suffix: | ||
type: string | ||
required: true | ||
|
||
jobs: | ||
configure: | ||
name: Pre-build configuration | ||
runs-on: ubuntu-latest | ||
outputs: | ||
params: ${{ steps.input-parameters.outputs.params }} | ||
steps: | ||
- id: input-parameters | ||
env: | ||
INPUTS: ${{ toJSON(inputs) }} | ||
run: | | ||
if [[ "$GITHUB_EVENT_NAME" != "workflow_call" ]]; then | ||
INPUTS="{ | ||
\"cc\":\"gcc\", | ||
\"cxx\":\"g++\", | ||
\"build_runs_on\":\"sycl-precommit-linux\", | ||
\"build_image\":\"ghcr.io/intel/llvm/ubuntu2004_base:latest\", | ||
\"build_github_cache\":\"false\", | ||
\"build_cache_root\":\"/__w/\", | ||
\"build_cache_suffix\":\"default\", | ||
\"build_cache_size\":\"2G\", | ||
\"build_configure_extra_args\":\"\", | ||
\"build_artifact_suffix\":\"default\", | ||
\"build_upload_artifact\":\"false\" | ||
}" | ||
fi | ||
INPUTS="${INPUTS//'%'/'%25'}" | ||
INPUTS="${INPUTS//$'\n'/'%0A'}" | ||
INPUTS="${INPUTS//$'\r'/'%0D'}" | ||
echo "::set-output name=params::$INPUTS" | ||
echo "$INPUTS" | ||
build: | ||
name: Build SYCL toolchain | ||
needs: configure | ||
runs-on: ${{ fromJSON(needs.configure.outputs.params).build_runs_on }} | ||
container: | ||
image: ${{ fromJSON(needs.configure.outputs.params).build_image }} | ||
options: -u 1001:1001 | ||
steps: | ||
- uses: actions/checkout@v2 | ||
with: | ||
path: src | ||
- name: Setup Cache | ||
uses: actions/cache@v2 | ||
if: ${{ steps.parameters.build_github_cache }} | ||
id: cache | ||
with: | ||
path: ${{ fromJSON(needs.configure.outputs.params).build_cache_root }}/build_cache_${{ fromJSON(needs.configure.outputs.params).build_cache_suffix }} | ||
key: sycl-build-${{ fromJSON(needs.configure.outputs.params).build_cache_suffix }}-${{ github.sha }} | ||
restore-keys: | | ||
sycl-build-${{ fromJSON(needs.configure.outputs.params).build_cache_suffix }}- | ||
- name: Configure | ||
env: | ||
CC: ${{ fromJSON(needs.configure.outputs.params).cc }} | ||
CXX: ${{ fromJSON(needs.configure.outputs.params).cxx }} | ||
CACHE_ROOT: ${{ fromJSON(needs.configure.outputs.params).build_cache_root }} | ||
CACHE_SUFFIX: ${{ fromJSON(needs.configure.outputs.params).build_cache_suffix }} | ||
CACHE_SIZE: ${{ fromJSON(needs.configure.outputs.params).build_cache_size }} | ||
ARGS: ${{ fromJSON(needs.configure.outputs.params).build_configure_extra_args }} | ||
run: | | ||
mkdir -p $CACHE_ROOT/build_cache_$CACHE_SUFFIX | ||
mkdir -p $GITHUB_WORKSPACE/build | ||
cd $GITHUB_WORKSPACE/build | ||
python3 $GITHUB_WORKSPACE/src/buildbot/configure.py -w $GITHUB_WORKSPACE \ | ||
-s $GITHUB_WORKSPACE/src -o $GITHUB_WORKSPACE/build -t Release \ | ||
--ci-defaults $ARGS --cmake-opt="-DLLVM_CCACHE_BUILD=ON" \ | ||
--cmake-opt="-DLLVM_CCACHE_DIR=$CACHE_ROOT/build_cache_$CACHE_SUFFIX" \ | ||
--cmake-opt="-DLLVM_CCACHE_MAXSIZE=$CACHE_SIZE" | ||
- name: Compile | ||
run: cmake --build $GITHUB_WORKSPACE/build | ||
# TODO allow to optionally disable in-tree checks | ||
- name: check-llvm | ||
if: always() | ||
run: | | ||
cmake --build $GITHUB_WORKSPACE/build --target check-llvm | ||
- name: check-clang | ||
if: always() | ||
run: | | ||
export XDG_CACHE_HOME=$GITHUB_WORKSPACE/os_cache | ||
cmake --build $GITHUB_WORKSPACE/build --target check-clang | ||
- name: check-sycl | ||
if: always() | ||
run: | | ||
cmake --build $GITHUB_WORKSPACE/build --target check-sycl | ||
- name: check-llvm-spirv | ||
if: always() | ||
run: | | ||
cmake --build $GITHUB_WORKSPACE/build --target check-llvm-spirv | ||
- name: check-xptifw | ||
if: always() | ||
run: | | ||
cmake --build $GITHUB_WORKSPACE/build --target check-xptifw | ||
- name: Install | ||
# TODO replace utility installation with a single CMake target | ||
run: | | ||
cmake --build $GITHUB_WORKSPACE/build --target deploy-sycl-toolchain | ||
cmake --build $GITHUB_WORKSPACE/build --target utils/FileCheck/install | ||
cmake --build $GITHUB_WORKSPACE/build --target utils/count/install | ||
cmake --build $GITHUB_WORKSPACE/build --target utils/not/install | ||
cmake --build $GITHUB_WORKSPACE/build --target utils/lit/install | ||
cmake --build $GITHUB_WORKSPACE/build --target utils/llvm-lit/install | ||
cmake --build $GITHUB_WORKSPACE/build --target install-clang-format | ||
cmake --build $GITHUB_WORKSPACE/build --target install-clang-tidy | ||
- name: Pack | ||
run: tar -cJf llvm_sycl.tar.xz -C $GITHUB_WORKSPACE/build/install . | ||
- name: Upload artifacts | ||
uses: actions/upload-artifact@v1 | ||
with: | ||
name: sycl_linux_${{ fromJSON(needs.configure.outputs.params).build_artifact_suffix }} | ||
path: llvm_sycl.tar.xz | ||
- name: Cleanup | ||
if: always() | ||
run: rm -rf $GITHUB_WORKSPACE/* | ||
|
Oops, something went wrong.