From 7e42d515650d9d07eeefbf8f4b8149ac0dc98139 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mos=C3=A8=20Giordano?= Date: Tue, 27 Oct 2020 23:51:37 +0000 Subject: [PATCH] [BinaryPlatforms] More accurate `pentium4` name for base `i686` arch (#38186) --- base/binaryplatforms.jl | 2 +- base/cpuid.jl | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/base/binaryplatforms.jl b/base/binaryplatforms.jl index ee0188697a03b..dd9af9ac0b812 100644 --- a/base/binaryplatforms.jl +++ b/base/binaryplatforms.jl @@ -591,7 +591,7 @@ const arch_march_isa_mapping = let end Dict( "i686" => [ - "i686" => get_set("i686", "i686"), + "pentium4" => get_set("i686", "pentium4"), "prescott" => get_set("i686", "prescott"), ], "x86_64" => [ diff --git a/base/cpuid.jl b/base/cpuid.jl index d32780e7e171e..b1fb82cf86dae 100644 --- a/base/cpuid.jl +++ b/base/cpuid.jl @@ -26,13 +26,14 @@ include(string(length(Core.ARGS) >= 2 ? Core.ARGS[2] : "", "features_h.jl")) # # Keep in sync with `arch_march_isa_mapping`. const ISAs_by_family = Dict( "i686" => [ - # Implicit in all sets, because always required: mmx, sse, sse2 - "i686" => ISA(Set{UInt32}()), + # Source: https://gcc.gnu.org/onlinedocs/gcc/x86-Options.html. + # Implicit in all sets, because always required by Julia: mmx, sse, sse2 + "pentium4" => ISA(Set{UInt32}()), "prescott" => ISA(Set((JL_X86_sse3,))), ], "x86_64" => [ # Source: https://gcc.gnu.org/onlinedocs/gcc/x86-Options.html. - # Implicit in all sets, because always required: mmx, sse, sse2 + # Implicit in all sets, because always required by x86-64 architecture: mmx, sse, sse2 "x86_64" => ISA(Set{UInt32}()), "core2" => ISA(Set((JL_X86_sse3, JL_X86_ssse3))), "nehalem" => ISA(Set((JL_X86_sse3, JL_X86_ssse3, JL_X86_sse41, JL_X86_sse42, JL_X86_popcnt))),