Instruction
MCOMMIT
Waits until earlier stores to memory with delayed error reporting have completed, and clears CF if any of them failed.
An AMD extension: Intel processors do not have this instruction.
- Extensions
- Forms
- 1 (1 Legacy)
- Data
- Intel XED v2026.08.23
Forms
| Instruction | Encoding | Requires |
|---|---|---|
MCOMMIT
MCOMMIT | F3 0F 01 FA | MCOMMIT |
Operation
What the forms do, in pseudocode that our tests run against results recorded on real processors. How to read.
if not efer >> 17 & 1:
fault(UD) # the OS has not set EFER.MCOMMIT
cf = mcommit_ok() # 1 when every store before it has
# reached memory without an error
of = sf = zf = af = pf = 0 # at any CPL
Not run on a processor: no processor at hand reports MCOMMIT in CPUID.
Operands
| Operand | Kind | Action |
|---|---|---|
MCOMMIT | ||
RFLAGS | implicit | write |
Flags
| CF |
|---|
| All forms |
| M |
CPUID and processors
Each form belongs to an XED ISA set. A form can be used when the processor reports every CPUID bit of one of its ISA set's alternatives.
| ISA set | CPUID | Processors |
|---|---|---|
MCOMMIT | MCOMMIT | Zen 2, Zen 3 Note: Only the EPYC 7002 (Zen 2) and EPYC 7003 (Zen 3) server processors have MCOMMIT. AMD's references for the Ryzen processors of Zen 2 and Zen 3 leave CPUID_Fn80000008_EBX[MCOMMIT] (bit 8) clear, and so do its references for Zen 4 and Zen 5, EPYC included. |
Sources
- Intel XED v2026.08.23 (commit
0bcb6237345c): forms, encodings, operands, flags, exception classes, attributes, ISA sets, CPUID bits and chip model. - The CPU data of x86-64.net: Zen 3 to Zen 6, from GCC’s
-marchfeature sets and AMD’s Processor Programming References, which the page of each processor cites. - AMD64 Architecture Programmer's Manual, Volume 3: General-Purpose and System Instructions (24594, rev. 3.38, July 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.