[clang] Adjust MSVC version range for ARM64 build performance regression (PR #90731)

Alexander Smarus via cfe-commits cfe-commits at lists.llvm.org
Wed May 1 06:51:54 PDT 2024


https://github.com/lxbndr created https://github.com/llvm/llvm-project/pull/90731

This is follow up for #65215

Mentioned regression was fixed in MSVC 19.39 (VS 17.9.0), so it makes sense to not apply fix for that (and newer) compiler versions.

Same as original change, this patch is narrowly scoped to not affect any other compiler.

>From ff8c63595aca6aca603deb109c3684e7df59e61b Mon Sep 17 00:00:00 2001
From: Alexander Smarus <bender at readdle.com>
Date: Wed, 1 May 2024 16:43:04 +0300
Subject: [PATCH] Adjust MSVC version range for ARM64 build performance
 regression

---
 clang/lib/CodeGen/CMakeLists.txt                   | 1 +
 clang/lib/Tooling/Inclusions/Stdlib/CMakeLists.txt | 1 +
 2 files changed, 2 insertions(+)

diff --git a/clang/lib/CodeGen/CMakeLists.txt b/clang/lib/CodeGen/CMakeLists.txt
index 52216d93a302bb..760fc540f7fa8e 100644
--- a/clang/lib/CodeGen/CMakeLists.txt
+++ b/clang/lib/CodeGen/CMakeLists.txt
@@ -39,6 +39,7 @@ set(LLVM_LINK_COMPONENTS
 # our goal is to disable the /Og flag while retaining the other optimizations from the /O1|/O2 set
 if(MSVC AND NOT CMAKE_CXX_COMPILER_ID MATCHES Clang
     AND MSVC_VERSION VERSION_GREATER_EQUAL 1932
+    AND MSVC_VERSION VERSION_LESS 1939
     AND CMAKE_SYSTEM_PROCESSOR MATCHES "ARM64")
 
   string(TOUPPER "${CMAKE_BUILD_TYPE}" uppercase_CMAKE_BUILD_TYPE)
diff --git a/clang/lib/Tooling/Inclusions/Stdlib/CMakeLists.txt b/clang/lib/Tooling/Inclusions/Stdlib/CMakeLists.txt
index ed323ab3528b10..4d01a0850a074b 100644
--- a/clang/lib/Tooling/Inclusions/Stdlib/CMakeLists.txt
+++ b/clang/lib/Tooling/Inclusions/Stdlib/CMakeLists.txt
@@ -4,6 +4,7 @@
 # our goal is to disable the /Og flag while retaining the other optimizations from the /O1|/O2 set
 if(MSVC AND NOT CMAKE_CXX_COMPILER_ID MATCHES Clang
     AND MSVC_VERSION VERSION_GREATER_EQUAL 1932
+    AND MSVC_VERSION VERSION_LESS 1939
     AND CMAKE_SYSTEM_PROCESSOR MATCHES "ARM64")
 
   string(TOUPPER "${CMAKE_BUILD_TYPE}" uppercase_CMAKE_BUILD_TYPE)



More information about the cfe-commits mailing list