From a5db26dc69a72a38c52aa18ce9d9a43a6c8d215b Mon Sep 17 00:00:00 2001 From: Milos Kotlar Date: Thu, 17 Jul 2025 17:47:26 +0200 Subject: [PATCH 1/2] Enable SIMD feature for callstubgenerator.cpp on supported architectures --- src/coreclr/vm/wks/CMakeLists.txt | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/coreclr/vm/wks/CMakeLists.txt b/src/coreclr/vm/wks/CMakeLists.txt index 280665e8b47d17..e23703d1b685b2 100644 --- a/src/coreclr/vm/wks/CMakeLists.txt +++ b/src/coreclr/vm/wks/CMakeLists.txt @@ -11,6 +11,12 @@ add_library_clr(cee_wks_core OBJECT ${VM_SOURCES_WKS} ${VM_SOURCES_WKS_ARCH_ASM} add_library_clr(cee_wks OBJECT ${VM_SOURCES_WKS_SPECIAL}) add_library_clr(cee_wks_mergeable OBJECT ${VM_SOURCES_WKS_SPECIAL}) +if(CLR_CMAKE_TARGET_ARCH_AMD64 OR CLR_CMAKE_TARGET_ARCH_ARM64 OR CLR_CMAKE_TARGET_ARCH_I386) + target_compile_definitions(cee_wks_core PRIVATE FEATURE_SIMD) + target_compile_definitions(cee_wks PRIVATE FEATURE_SIMD) + target_compile_definitions(cee_wks_mergeable PRIVATE FEATURE_SIMD) +endif() + target_precompile_headers(cee_wks_core PRIVATE [["common.h"]]) target_precompile_headers(cee_wks PRIVATE [["common.h"]]) target_precompile_headers(cee_wks_mergeable PRIVATE [["common.h"]]) From 5cbef2b54cdebea3c330adb8691ec7323244b838 Mon Sep 17 00:00:00 2001 From: Milos Kotlar Date: Fri, 18 Jul 2025 09:48:38 +0200 Subject: [PATCH 2/2] Remove FEATURE_SIMD condition --- src/coreclr/vm/callstubgenerator.cpp | 2 -- src/coreclr/vm/wks/CMakeLists.txt | 6 ------ 2 files changed, 8 deletions(-) diff --git a/src/coreclr/vm/callstubgenerator.cpp b/src/coreclr/vm/callstubgenerator.cpp index be815aaf7e63d6..901c102b33dd77 100644 --- a/src/coreclr/vm/callstubgenerator.cpp +++ b/src/coreclr/vm/callstubgenerator.cpp @@ -1839,7 +1839,6 @@ CallStubGenerator::ReturnType CallStubGenerator::GetReturnType(ArgIterator *pArg break; } break; -#ifdef FEATURE_SIMD case CORINFO_HFA_ELEM_VECTOR64: switch (thReturnValueType.GetSize()) { @@ -1860,7 +1859,6 @@ CallStubGenerator::ReturnType CallStubGenerator::GetReturnType(ArgIterator *pArg break; } break; -#endif default: _ASSERTE(!"HFA type is not supported"); break; diff --git a/src/coreclr/vm/wks/CMakeLists.txt b/src/coreclr/vm/wks/CMakeLists.txt index e23703d1b685b2..280665e8b47d17 100644 --- a/src/coreclr/vm/wks/CMakeLists.txt +++ b/src/coreclr/vm/wks/CMakeLists.txt @@ -11,12 +11,6 @@ add_library_clr(cee_wks_core OBJECT ${VM_SOURCES_WKS} ${VM_SOURCES_WKS_ARCH_ASM} add_library_clr(cee_wks OBJECT ${VM_SOURCES_WKS_SPECIAL}) add_library_clr(cee_wks_mergeable OBJECT ${VM_SOURCES_WKS_SPECIAL}) -if(CLR_CMAKE_TARGET_ARCH_AMD64 OR CLR_CMAKE_TARGET_ARCH_ARM64 OR CLR_CMAKE_TARGET_ARCH_I386) - target_compile_definitions(cee_wks_core PRIVATE FEATURE_SIMD) - target_compile_definitions(cee_wks PRIVATE FEATURE_SIMD) - target_compile_definitions(cee_wks_mergeable PRIVATE FEATURE_SIMD) -endif() - target_precompile_headers(cee_wks_core PRIVATE [["common.h"]]) target_precompile_headers(cee_wks PRIVATE [["common.h"]]) target_precompile_headers(cee_wks_mergeable PRIVATE [["common.h"]])