Intel Atom and E-cores
Goldmont Plus
Intel Goldmont Plus (2017) supports x86-64-v2.
- x86-64 level
- x86-64-v2
- Vendor
- Intel
- First products
- 2017
- Products
- Pentium Silver and Celeron J4000/N4000 (Gemini Lake)
- Segments
- GCC target
-march=goldmont-plus- Optimization
- Optimizing code for Silvermont to Goldmont Plus
Product lines
Why not x86-64-v3?
Goldmont Plus lacks AVX, AVX2, BMI1, BMI2, F16C, FMA and LZCNT, all of which x86-64-v3 requires.
Feature checklist
| Feature | Goldmont Plus | Enumerated by | Linux flag |
|---|---|---|---|
| x86-64-v1 | |||
| CMOV | Yes | CPUID.01H:EDX[15] | cmov |
| CX8 | Yes | CPUID.01H:EDX[8] | cx8 |
| FPU | Yes | CPUID.01H:EDX[0] | fpu |
| FXSR | Yes | CPUID.01H:EDX[24] | fxsr |
| MMX | Yes | CPUID.01H:EDX[23] | mmx |
| OSFXSR via FXSR | Yes | CPUID.01H:EDX[24] | fxsr |
| SCE | Yes | CPUID.80000001H:EDX[11] | syscall |
| SSE | Yes | CPUID.01H:EDX[25] | sse |
| SSE2 | Yes | CPUID.01H:EDX[26] | sse2 |
| x86-64-v2 | |||
| CMPXCHG16B | Yes | CPUID.01H:ECX[13] | cx16 |
| LAHF-SAHF | Yes | CPUID.80000001H:ECX[0] | lahf_lm |
| POPCNT | Yes | CPUID.01H:ECX[23] | popcnt |
| SSE3 | Yes | CPUID.01H:ECX[0] | pni |
| SSE4.1 | Yes | CPUID.01H:ECX[19] | sse4_1 |
| SSE4.2 | Yes | CPUID.01H:ECX[20] | sse4_2 |
| SSSE3 | Yes | CPUID.01H:ECX[9] | ssse3 |
| x86-64-v3 | |||
| AVX | No | CPUID.01H:ECX[28] | avx |
| AVX2 | No | CPUID.(EAX=07H,ECX=0):EBX[5] | avx2 |
| BMI1 | No | CPUID.(EAX=07H,ECX=0):EBX[3] | bmi1 |
| BMI2 | No | CPUID.(EAX=07H,ECX=0):EBX[8] | bmi2 |
| F16C | No | CPUID.01H:ECX[29] | f16c |
| FMA | No | CPUID.01H:ECX[12] | fma |
| LZCNT | No | CPUID.80000001H:ECX[5] | abm |
| MOVBE | Yes | CPUID.01H:ECX[22] | movbe |
| OSXSAVE via XSAVE | Yes | CPUID.01H:ECX[26] | xsave |
| x86-64-v4 | |||
| AVX512F | No | CPUID.(EAX=07H,ECX=0):EBX[16] | avx512f |
| AVX512BW | No | CPUID.(EAX=07H,ECX=0):EBX[30] | avx512bw |
| AVX512CD | No | CPUID.(EAX=07H,ECX=0):EBX[28] | avx512cd |
| AVX512DQ | No | CPUID.(EAX=07H,ECX=0):EBX[17] | avx512dq |
| AVX512VL | No | CPUID.(EAX=07H,ECX=0):EBX[31] | avx512vl |
Other extensions
Notable extensions outside the x86-64 levels. Vendors sometimes disable these on individual models. Linked names lead to the extension's instructions.
Known vulnerabilities
The CVEs that the sources of the vulnerability list name as affecting Goldmont Plus, in all of its models or in some of them.
- CVE-2024-45332 Branch Privilege Injection: Indirect Branch Predictor Delayed Updates
- CVE-2024-43420 Branch Privilege Injection: Shared predictor state: Atom
- CVE-2023-28746 Register File Data Sampling
- CVE-2022-38090 Intel SGX: Stale data read from the legacy xAPIC under SGX
- CVE-2022-21233 Stale Data Read from Legacy xAPIC
- CVE-2022-21151 Optimization Removal of Security-critical Code
- CVE-2022-0004 Intel BIOS, UEFI and SMM: Boot Guard and TXT lock override
- CVE-2022-0002 Spectre variant 2: Intra-mode Branch Target Injection
- CVE-2022-0001 Spectre variant 2: Branch History Injection
- CVE-2021-0089 Speculative Code Store Bypass
- CVE-2021-0086 Floating Point Value Injection
- CVE-2020-24513 Atom Processor Domain Bypass
- CVE-2020-8695 RAPL Energy Reporting: RAPL energy reporting
- CVE-2019-1125 Spectre variant 1: Spectre v1 swapgs
- CVE-2018-3639 Speculative Store Bypass
- CVE-2017-5753 Spectre variant 1: Bounds Check Bypass
- CVE-2017-5715 Spectre variant 2: Branch Target Injection
Other Intel Atom and E-cores microarchitectures
Sources
- GCC -march=goldmont-plus feature set (PTA_GOLDMONT_PLUS)
- Intel 64 and IA-32 Architectures Software Developer's Manual, Volume 4, 335592-093, Table 2-1: Model 06_7AH: Atom processors based on Goldmont Plus.
- Intel ARK: Products formerly Gemini Lake: Launch dates; the earliest is Q4'17 (Pentium Silver N5000).
- Linux 7.3 arch/x86/include/asm/intel-family.h: INTEL_ATOM_GOLDMONT_PLUS (Gemini Lake)