diff --git a/src/coreclr/vm/arm64/asmhelpers.asm b/src/coreclr/vm/arm64/asmhelpers.asm index d5a49cd200eaa..b602b2cf9fc94 100644 --- a/src/coreclr/vm/arm64/asmhelpers.asm +++ b/src/coreclr/vm/arm64/asmhelpers.asm @@ -80,9 +80,7 @@ ;; uint64_t GetSveLengthFromOS(void); LEAF_ENTRY GetSveLengthFromOS - ;; TODO-SVE: Remove the hardcoded value 128 and uncomment once CI machines are updated to use MASM 14.4 or later - ;; rdvl x0, 1 - mov x0, #128 + rdvl x0, 1 ret lr LEAF_END diff --git a/src/coreclr/vm/codeman.cpp b/src/coreclr/vm/codeman.cpp index 1010f21d59aaa..d93e43ea48e0e 100644 --- a/src/coreclr/vm/codeman.cpp +++ b/src/coreclr/vm/codeman.cpp @@ -1514,8 +1514,10 @@ void EEJitManager::SetCpuInfo() uint32_t maxVectorTLength = (maxVectorTBitWidth / 8); uint64_t sveLengthFromOS = GetSveLengthFromOS(); - // Do not enable SVE when the user specified vector length is smaller than the one offered by underlying OS. - if ((maxVectorTLength >= sveLengthFromOS) || (maxVectorTBitWidth == 0)) + // For now, enable SVE only when the system vector length is 128-bits + // TODO: https://github.com/dotnet/runtime/issues/101477 + if (sveLengthFromOS == 128) + // if ((maxVectorTLength >= sveLengthFromOS) || (maxVectorTBitWidth == 0)) { CPUCompileFlags.Set(InstructionSet_Sve); }