diff --git a/.github/workflows/clang-format.yml b/.github/workflows/clang-format.yml deleted file mode 100644 index e55d3245435e4..0000000000000 --- a/.github/workflows/clang-format.yml +++ /dev/null @@ -1,30 +0,0 @@ -name: clang-format-check - -on: - pull_request: - branches: - - sycl - -jobs: - build: - runs-on: ubuntu-latest - steps: - - name: Get clang-format first - run: sudo apt-get install -yqq clang-format - - - uses: actions/checkout@v2 - with: - fetch-depth: 2 - - - name: Run clang-format for the patch - run: | - git diff --no-color ${GITHUB_SHA}^1 ${GITHUB_SHA} --name-only -- | grep -v "/test/" | xargs git diff -U0 --no-color ${GITHUB_SHA}^1 ${GITHUB_SHA} -- | ./clang/tools/clang-format/clang-format-diff.py -p1 -binary clang-format > ./clang-format.patch - - # Add patch with formatting fixes to CI job artifacts - - uses: actions/upload-artifact@v1 - with: - name: clang-format-patch - path: ./clang-format.patch - - - name: Check if clang-format patch is empty - run: bash -c "if [ -s ./clang-format.patch ]; then cat ./clang-format.patch; exit 1; fi" diff --git a/.github/workflows/gh_pages.yml b/.github/workflows/gh_pages.yml deleted file mode 100644 index 08fa5cce9cc77..0000000000000 --- a/.github/workflows/gh_pages.yml +++ /dev/null @@ -1,51 +0,0 @@ -name: Generate Doxygen documentation - -on: - schedule: - - cron: 0 1 * * * - -jobs: - build: - runs-on: ubuntu-latest - if: github.repository == 'intel/llvm' - steps: - - uses: actions/checkout@v2 - with: - ref: sycl - path: repo - - name: Install deps - run: | - sudo apt-get install -y doxygen graphviz ssh ninja-build - sudo pip3 install 'sphinx==4.1.2' 'myst-parser==0.15.1' - - name: Build Docs - run: | - mkdir -p $GITHUB_WORKSPACE/build - cd $GITHUB_WORKSPACE/build - python $GITHUB_WORKSPACE/repo/buildbot/configure.py -w $GITHUB_WORKSPACE \ - -s $GITHUB_WORKSPACE/repo -o $GITHUB_WORKSPACE/build -t Release --docs - cmake --build . --target doxygen-sycl - cmake --build . --target doxygen-clang - cmake --build . --target docs-sycl-html - cmake --build . --target docs-clang-html - - name: Deploy - env: - SSH_KEY: ${{secrets.ACTIONS_DEPLOY_KEY}} - run: | - mkdir -p ~/.ssh - echo "$SSH_KEY" > ~/.ssh/id_rsa - chmod 600 ~/.ssh/id_rsa - eval "$(ssh-agent -s)" - ssh-add -k ~/.ssh/id_rsa - git clone git@github.com:intel/llvm-docs.git docs - cd $GITHUB_WORKSPACE/docs - git rm -rf . - touch .nojekyll - yes | \cp -rf $GITHUB_WORKSPACE/build/tools/sycl/doc/html/* . - mv $GITHUB_WORKSPACE/build/tools/sycl/doc/doxygen/html doxygen/ - mv $GITHUB_WORKSPACE/build/tools/clang/docs/html clang/ - mv $GITHUB_WORKSPACE/build/tools/clang/docs/doxygen/html clang_doxygen/ - git config --global user.name "iclsrc" - git config --global user.email "ia.compiler.tools.git@intel.com" - git add . - git diff-index --quiet HEAD || git commit -m "Update docs" -s - git push diff --git a/.github/workflows/linux_post_commit.yml b/.github/workflows/linux_post_commit.yml deleted file mode 100644 index 7f52843937315..0000000000000 --- a/.github/workflows/linux_post_commit.yml +++ /dev/null @@ -1,77 +0,0 @@ -name: Linux Post Commit Checks - -on: - push: - branches: - - sycl -jobs: - check: - runs-on: ubuntu-18.04 - if: github.repository == 'intel/llvm' - strategy: - fail-fast: false - matrix: - config: ["Default", "SharedLibs", "NoAssertions"] - - steps: - - uses: actions/checkout@v2 - with: - path: src - - name: Install Ubuntu deps - run: sudo apt install -y ninja-build - - name: Configure - run: | - CONFIG=${{ matrix.config }} - case $CONFIG in - Default) - export ARGS="" - ;; - SharedLibs) - wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add - - sudo add-apt-repository "deb http://apt.llvm.org/bionic/ llvm-toolchain-bionic-12 main" - sudo apt-get update - sudo apt-get install -y clang-12 - export ARGS="--shared-libs" - export CC="clang-12" - export CXX="clang++-12" - ;; - NoAssertions) - export ARGS="--no-assertions" - ;; - esac - 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 $ARGS - - name: Compile - run: | - python3 $GITHUB_WORKSPACE/src/buildbot/compile.py -w $GITHUB_WORKSPACE \ - -s $GITHUB_WORKSPACE/src -o $GITHUB_WORKSPACE/build - - name: check-llvm - if: always() - run: | - python3 $GITHUB_WORKSPACE/src/buildbot/check.py -w $GITHUB_WORKSPACE \ - -s $GITHUB_WORKSPACE/src -o $GITHUB_WORKSPACE/build -t check-llvm - - name: check-clang - if: always() - run: | - python3 $GITHUB_WORKSPACE/src/buildbot/check.py -w $GITHUB_WORKSPACE \ - -s $GITHUB_WORKSPACE/src -o $GITHUB_WORKSPACE/build -t check-clang - - name: check-sycl - if: always() - run: | - python3 $GITHUB_WORKSPACE/src/buildbot/check.py -w $GITHUB_WORKSPACE \ - -s $GITHUB_WORKSPACE/src -o $GITHUB_WORKSPACE/build -t check-sycl - - name: check-llvm-spirv - if: always() - run: | - python3 $GITHUB_WORKSPACE/src/buildbot/check.py -w $GITHUB_WORKSPACE \ - -s $GITHUB_WORKSPACE/src -o $GITHUB_WORKSPACE/build -t check-llvm-spirv - - name: Pack - run: tar -czvf llvm_sycl.tar.gz -C $GITHUB_WORKSPACE/build/install . - - name: Upload artifacts - uses: actions/upload-artifact@v1 - with: - name: sycl_linux_${{ matrix.config }} - path: llvm_sycl.tar.gz - diff --git a/.github/workflows/sycl_cts.yml b/.github/workflows/sycl_cts.yml new file mode 100644 index 0000000000000..0ce96482297f2 --- /dev/null +++ b/.github/workflows/sycl_cts.yml @@ -0,0 +1,67 @@ +name: sycl_cts_cpu + +on: + pull_request: + branches: + - sycl + paths: + - '.github/workflows/sycl_cts.yml' + +jobs: + build: + runs-on: ubuntu-20.04 + steps: + - name: Prepare Env + run: sudo apt-get install -y ninja-build cmake build-essential + + + - uses: actions/checkout@v2 + with: + fetch-depth: 1 + path: llvm.src + + - uses: actions/checkout@v2 + with: + # persist-credentials: false allows us to use our own credentials for + # pushing to the repository. Otherwise, the default github actions token + # is used. + persist-credentials: false + fetch-depth: 1 + repository: KhronosGroup/SYCL-CTS + token: ${{ secrets.DOYLELI_DEBUG_TOKEN }} + path: icl_tst-sycl-cts + ref: a80827e6d3cc0d92327ebe91c0a687807b972d65 + + - uses: actions/setup-python@v2 + with: + python-version: '3.7.8' + + - name: Prepare obj folder + run: | + mkdir llvm.obj + + - name: Dependency Step + run: | + python3 -u llvm.src/buildbot/dependency.py -n $GITHUB_RUN_NUMBER -b sycl -d sycl -w $PWD -s $PWD/llvm.src -o $PWD/llvm.obj -c + + - name: Configure Step + run: | + python3 -u llvm.src/buildbot/configure.py -n $GITHUB_RUN_NUMBER -b sycl -d sycl -t Release -w $PWD -s $PWD/llvm.src -o $PWD/llvm.obj + + - name: Build Step + run: | + python3 -u llvm.src/buildbot/compile.py -n $GITHUB_RUN_NUMBER -b sycl -d sycl -w $PWD -s $PWD/llvm.src -o $PWD/llvm.obj + + - name: SYCL_CTS Step + run: | + mkdir build + cd build; cmake -G "Ninja" -DSYCL_IMPLEMENTATION=Intel_SYCL -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS_RELEASE="" -DINTEL_SYCL_ROOT=$PWD/..//llvm.obj -DOpenCL_INCLUDE_DIR=$PWD/..//llvm.obj/include/sycl -DOpenCL_LIBRARY=$PWD/..//llvm.obj/lib/libOpenCL.so -Dopencl_platform_name=intel -Dopencl_device_name=opencl_cpu $PWD/..//icl_tst-sycl-cts + ninja -j 2 + ctest --verbose -j 2 -R test_buffer_opencl$ --timeout 2800 + + + + + + + diff --git a/.github/workflows/sync-main.yml b/.github/workflows/sync-main.yml deleted file mode 100644 index 6eb842af5bb0d..0000000000000 --- a/.github/workflows/sync-main.yml +++ /dev/null @@ -1,49 +0,0 @@ -name: automatic sync main branch from llvm-project to llvm - -on: - schedule: - - cron: '0 */1 * * *' -jobs: - sync: - runs-on: ubuntu-latest - if: github.repository == 'intel/llvm' - steps: - - uses: actions/checkout@v2 - with: - # persist-credentials: false allows us to use our own credentials for - # pushing to the repository. Otherwise, the default github actions token - # is used. - persist-credentials: false - fetch-depth: 0 - path: src - - name: Sync - env: - BRANCH: main - SYNC_REPO: https://github.com/llvm/llvm-project - LLVMBOT_TOKEN: ${{ secrets.LLVM_MAIN_SYNC_BBSYCL_TOKEN }} - run: | - cd $GITHUB_WORKSPACE/src - branch_exist=`git ls-remote --heads origin $BRANCH | wc -l` - if [ $branch_exist -ne 0 ]; then - git checkout $BRANCH - git pull --ff --ff-only $SYNC_REPO $BRANCH - if [ $? -ne 0 ]; then - echo "failed to pull from $SYNC_REPO $BRANCH, abort" - exit 1 - fi - git_status=`git rev-list --count --left-right origin/$BRANCH...$BRANCH` - if [ "0 0" == "$git_status" ] ; then - echo "no change, skip" - elif [[ "$git_status" = 0* ]] ; then - git push https://$LLVMBOT_TOKEN@github.com/${{ github.repository }} ${BRANCH} - else - echo "$BRANCH branch invalid state" - exit 1 - fi - else - git remote add upstream $SYNC_REPO - git fetch upstream - git checkout -B $BRANCH upstream/$BRANCH - git push https://$LLVMBOT_TOKEN@github.com/${{ github.repository }} ${BRANCH} - fi - echo "sync finished"