Memory, caches and atomics
CLFLUSH
CLFLUSH writes a cache line back to memory and removes it from every cache in the system.
- CPUID
- CLFSH
CPUID.01H:EDX[19] - Instructions
- 1 mnemonic
- Processors
- Every x86-64 processor in XED’s model
CLFLUSH writes the cache line holding its memory operand back to memory if it was modified and removes it from every cache in the coherence domain. Drivers use it for memory that devices access without snooping the caches, and code for persistent memory to push stores out of the caches.
CLFLUSH is ordered with writes, locked instructions, fences and other CLFLUSHes, which makes flushing many lines slow; CLFLUSHOPT and CLWB relax that. The line size is in CPUID.01H:EBX[15:8], in units of 8 bytes, and the feature bit is called CLFSH.
Instructions
| Mnemonic | Summary | Forms |
|---|---|---|
| CLFLUSH | Writes back and invalidates the cache line holding a byte of memory in every cache of the coherence domain, ordered with writes and other CLFLUSHes. | 1 |
CPUID and processors
XED splits CLFLUSH into 1 ISA set. Software can use a form when the processor reports every CPUID bit of one alternative of the form's ISA set.
| ISA set | CPUID | Processors in XED |
|---|---|---|
CLFSH | CLFSH | Every x86-64 processor in XED’s model |
Sources
- Intel XED v2026.08.23 (commit
0bcb6237345c): forms, encodings, ISA sets, CPUID bits and chip model. - Intel 64 and IA-32 Architectures Software Developer's Manual, Volume 2 (325383-092, June 2026)
The tables are derived from Intel XED, Copyright Intel Corporation, licensed under the Apache License 2.0; x86-64.net converted and reformatted them. The text is our own.