diff --git a/.cirrus.yml b/.cirrus.yml index 6041cc8702..282f232b5f 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -8,8 +8,8 @@ env: RPCS3_TOKEN: ENCRYPTED[100ebb8e3552bf2021d0ef55dccda3e58d27be5b6cab0b0b92843ef490195d3c4edaefa087e4a3b425caa6392300b9b1] QT_VER_MAIN: '6' QT_VER: '6.8.3' - LLVM_COMPILER_VER: '19' - LLVM_VER: '19.1.7' + LLVM_COMPILER_VER: '20' + LLVM_VER: '20.1.2' # windows_task: # matrix: diff --git a/.github/workflows/rpcs3.yml b/.github/workflows/rpcs3.yml index 683712cf69..87f4ca98e8 100644 --- a/.github/workflows/rpcs3.yml +++ b/.github/workflows/rpcs3.yml @@ -108,7 +108,7 @@ jobs: QT_VER: '6.8.3' QT_VER_MSVC: 'msvc2022' QT_DATE: '202503201308' - LLVM_VER: '19.1.7' + LLVM_VER: '20.1.2' VULKAN_VER: '1.3.268.0' VULKAN_SDK_SHA: '8459ef49bd06b697115ddd3d97c9aec729e849cd775f5be70897718a9b3b9db5' CCACHE_SHA: '1f39f3ad5aae3fe915e99ad1302633bc8f6718e58fa7c0de2b0ba7e080f0f08c' diff --git a/3rdparty/llvm/CMakeLists.txt b/3rdparty/llvm/CMakeLists.txt index 8723728f4a..2552c89dbd 100644 --- a/3rdparty/llvm/CMakeLists.txt +++ b/3rdparty/llvm/CMakeLists.txt @@ -51,7 +51,7 @@ if(WITH_LLVM) set(STATIC_LINK_LLVM ON CACHE BOOL "Link against LLVM statically. This will get set to ON if you build LLVM from the submodule." FORCE) - find_package(LLVM 19.1 CONFIG) + find_package(LLVM 20.1 CONFIG) if(NOT LLVM_FOUND) message(FATAL_ERROR "Couldn't build LLVM from the submodule. You might need to run `git submodule update --init`") endif() diff --git a/3rdparty/llvm/llvm b/3rdparty/llvm/llvm index cd708029e0..58df0ef89d 160000 --- a/3rdparty/llvm/llvm +++ b/3rdparty/llvm/llvm @@ -1 +1 @@ -Subproject commit cd708029e0b2869e80abe31ddb175f7c35361f90 +Subproject commit 58df0ef89dd64126512e4ee27b4ac3fd8ddf6247 diff --git a/BUILDING.md b/BUILDING.md index 83693b0f44..cdaa21c3e7 100644 --- a/BUILDING.md +++ b/BUILDING.md @@ -130,7 +130,7 @@ Start **Visual Studio**, click on `Open a project or solution` and select the `r **NOTE:** The recommended build configuration is `Release`. (On older revisions: `Release - LLVM`) To speed up the compilation time, you may want to download and extract to `\build\lib_ext\<$(Configuration)>-x64` (e.g. `c:\rpcs3\build\lib_ext\Release-x64`; the path needs to be created) some of the following precompiled libs: -- [LLVM libs](https://github.com/RPCS3/llvm-mirror/releases/download/custom-build-win-19.1.7/llvmlibs_mt.7z) +- [LLVM libs](https://github.com/RPCS3/llvm-mirror/releases/download/custom-build-win-20.1.2/llvmlibs_mt.7z) - [additional libs](https://github.com/RPCS3/glslang/releases/latest/download/glslanglibs_mt.7z) **NOTES:** diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 5e442bd01b..d1f00542b8 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -75,7 +75,7 @@ jobs: # QT_VER_MSVC: 'msvc2022' # QT_DATE: '202503201308' # QTDIR: C:\Qt\$(QT_VER)\$(QT_VER_MSVC)_64 -# LLVM_VER: '19.1.7' +# LLVM_VER: '20.1.2' # VULKAN_VER: '1.3.268.0' # VULKAN_SDK_SHA: '8459ef49bd06b697115ddd3d97c9aec729e849cd775f5be70897718a9b3b9db5' # VULKAN_SDK: C:\VulkanSDK\$(VULKAN_VER) @@ -149,7 +149,7 @@ jobs: ARTDIR: $(Build.ArtifactStagingDirectory) QT_VER: '6.7.3' QT_VER_MAIN: '6' - LLVM_COMPILER_VER: '19' + LLVM_COMPILER_VER: '20' pool: vmImage: "macOS-14" @@ -210,7 +210,7 @@ jobs: ARTDIR: $(Build.ArtifactStagingDirectory) QT_VER: '6.7.3' QT_VER_MAIN: '6' - LLVM_COMPILER_VER: '19' + LLVM_COMPILER_VER: '20' pool: vmImage: "macOS-14" diff --git a/buildfiles/msvc/rpcs3_default.props b/buildfiles/msvc/rpcs3_default.props index ad2ac1ee2f..8d4b5245ce 100644 --- a/buildfiles/msvc/rpcs3_default.props +++ b/buildfiles/msvc/rpcs3_default.props @@ -41,8 +41,8 @@ LLVMBitstreamReader.lib; LLVMBitWriter.lib; LLVMCFGuard.lib; + LLVMCGData.lib; LLVMCodeGen.lib; - LLVMCodeGenData.lib; LLVMCodeGenTypes.lib; LLVMCore.lib; LLVMCoroutines.lib; @@ -64,6 +64,7 @@ LLVMExecutionEngine.lib; LLVMExtensions.lib; LLVMFileCheck.lib; + LLVMFrontendAtomic.lib; LLVMFrontendDriver.lib; LLVMFrontendHLSL.lib; LLVMFrontendOffloading.lib; @@ -116,6 +117,7 @@ LLVMTableGenCommon.lib; LLVMTarget.lib; LLVMTargetParser.lib; + LLVMTelemetry.lib; LLVMTextAPI.lib; LLVMTextAPIBinaryReader.lib; LLVMTransformUtils.lib;