diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index 6497608..9259936 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -2,16 +2,16 @@ name: "CodeQL" on: push: - branches: [ "main" ] + branches: [ "ocl-open-200" ] pull_request: - branches: [ "main" ] + branches: [ "ocl-open-200" ] permissions: contents: read env: LLVM_VERSION: 20 - LLVM_VERSION_MINOR: 0 + LLVM_VERSION_MINOR: 1 jobs: analyze: @@ -39,7 +39,7 @@ jobs: run: | curl -L "https://apt.llvm.org/llvm-snapshot.gpg.key" | sudo apt-key add - curl -L "https://packages.lunarg.com/lunarg-signing-key-pub.asc" | sudo apt-key add - - echo "deb https://apt.llvm.org/jammy/ llvm-toolchain-jammy main" | sudo tee -a /etc/apt/sources.list + echo "deb https://apt.llvm.org/jammy/ llvm-toolchain-jammy-20 main" | sudo tee -a /etc/apt/sources.list echo "deb https://packages.lunarg.com/vulkan jammy main" | sudo tee -a /etc/apt/sources.list sudo apt-get update sudo apt-get -yq --no-install-suggests --no-install-recommends install \ @@ -64,7 +64,7 @@ jobs: with: repository: KhronosGroup/SPIRV-LLVM-Translator path: SPIRV-LLVM-Translator - ref: main + ref: llvm_release_200 - name: Build SPIRV-LLVM-Translator run: | diff --git a/.github/workflows/on-push-verification-in-tree.yml b/.github/workflows/on-push-verification-in-tree.yml index f1ecbc4..b23e42c 100644 --- a/.github/workflows/on-push-verification-in-tree.yml +++ b/.github/workflows/on-push-verification-in-tree.yml @@ -13,12 +13,10 @@ permissions: on: push: branches: - - main - - ocl-open-* + - ocl-open-200 pull_request: branches: - - main - - ocl-open-* + - ocl-open-200 types: - opened - reopened diff --git a/.github/workflows/on-push-verification-out-of-tree.yml b/.github/workflows/on-push-verification-out-of-tree.yml index dd59547..9b3d57c 100644 --- a/.github/workflows/on-push-verification-out-of-tree.yml +++ b/.github/workflows/on-push-verification-out-of-tree.yml @@ -10,15 +10,15 @@ permissions: env: LLVM_VERSION: 20 - LLVM_VERSION_MINOR: 0 + LLVM_VERSION_MINOR: 1 on: push: branches: - - main + - ocl-open-200 pull_request: branches: - - main + - ocl-open-200 types: - opened - reopened @@ -38,7 +38,7 @@ jobs: run: | curl -L "https://apt.llvm.org/llvm-snapshot.gpg.key" | sudo apt-key add - curl -L "https://packages.lunarg.com/lunarg-signing-key-pub.asc" | sudo apt-key add - - echo "deb https://apt.llvm.org/jammy/ llvm-toolchain-jammy main" | sudo tee -a /etc/apt/sources.list + echo "deb https://apt.llvm.org/jammy/ llvm-toolchain-jammy-20 main" | sudo tee -a /etc/apt/sources.list echo "deb https://packages.lunarg.com/vulkan jammy main" | sudo tee -a /etc/apt/sources.list sudo apt-get update sudo apt-get -yq --no-install-suggests --no-install-recommends install \ @@ -58,7 +58,7 @@ jobs: with: repository: KhronosGroup/SPIRV-LLVM-Translator path: SPIRV-LLVM-Translator - ref: main + ref: llvm_release_200 - name: Build SPIRV-LLVM-Translator run: | diff --git a/CMakeLists.txt b/CMakeLists.txt index f887d88..b75a03d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,5 +1,10 @@ cmake_minimum_required(VERSION 3.13.4) +if(NOT DEFINED BASE_LLVM_VERSION) + set(BASE_LLVM_VERSION 20.1) +endif(NOT DEFINED BASE_LLVM_VERSION) +set(OPENCL_CLANG_VERSION ${BASE_LLVM_VERSION}.0) + if(NOT DEFINED OPENCL_CLANG_BUILD_EXTERNAL) # check if we build inside llvm or not if(CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR) @@ -39,7 +44,7 @@ if(CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR) add_definitions(-DUSE_PREBUILT_LLVM) if(NOT PREFERRED_LLVM_VERSION) - set(PREFERRED_LLVM_VERSION "20.0") + set(PREFERRED_LLVM_VERSION "20.1") endif(NOT PREFERRED_LLVM_VERSION) message(STATUS "[OPENCL-CLANG] Looking for LLVM version ${PREFERRED_LLVM_VERSION}") find_package(LLVM ${PREFERRED_LLVM_VERSION} REQUIRED) @@ -152,9 +157,9 @@ if(NOT USE_PREBUILT_LLVM) ) endif() - set(CLANG_BASE_REVISION master) - set(SPIRV_BASE_REVISION master) - set(TARGET_BRANCH "ocl-open-110") + set(CLANG_BASE_REVISION release/20.x) + set(SPIRV_BASE_REVISION llvm_release_200) + set(TARGET_BRANCH "ocl-open-200") apply_patches(${CLANG_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/patches/clang diff --git a/README.md b/README.md index dc2db90..d488477 100644 --- a/README.md +++ b/README.md @@ -26,9 +26,9 @@ Before the build all dependencies must be downloaded and laid out as follows: This can be done using the following commands: ```bash cd -git clone https://github.com/llvm/llvm-project.git . -git clone https://github.com/KhronosGroup/SPIRV-LLVM-Translator.git -git clone https://github.com/intel/opencl-clang.git +git clone https://github.com/llvm/llvm-project.git . -b release/20.x +git clone https://github.com/KhronosGroup/SPIRV-LLVM-Translator.git -b llvm_release_200 +git clone https://github.com/intel/opencl-clang.git -b ocl-open-200 ``` Then we need to create a build directory and run the build: @@ -61,7 +61,7 @@ documented in [Embedding LLVM in your project](https://llvm.org/docs/CMake.html# Commands to checkout sources and build: ```bash cd -git clone https://github.com/intel/opencl-clang.git +git clone https://github.com/intel/opencl-clang.git -b ocl-open-200 mkdir build && cd build cmake ../opencl-clang make all -j`nproc` @@ -71,13 +71,13 @@ make all -j`nproc` ##### Preferred LLVM version -By default, opencl-clang's cmake script is searching for LLVM which is built -based on the latest verion of current branch. You can override target version of -LLVM by using the `PREFERRED_LLVM_VERSION` cmake option: +By default, opencl-clang's cmake script is searching for LLVM 20.1. You can +override target version of LLVM by using the `PREFERRED_LLVM_VERSION` cmake +option: Example: ```bash -cmake -DPREFERRED_LLVM_VERSION="20.0" ../opencl-clang +cmake -DPREFERRED_LLVM_VERSION="20.1" ../opencl-clang ``` ##### Custom LLVM installation