System
SVM (AMD-V) virtualization instructions
SVM, AMD's virtualization extension (AMD-V), runs a guest with VMRUN from a control block in memory, the VMCB, until an intercepted event returns control to the hypervisor.
AMD's virtualization extension: Intel processors implement VMX instead.
- CPUID
- SVM
CPUID.80000001H:ECX[2] - Instructions
- 8 mnemonics
- Processors
- K10 (Family 10h), Bulldozer, Piledriver, Zen, Zen+, Zen 2, Zen 3, Zen 4, Zen 5, Zen 6
SVM (Secure Virtual Machine), sold as AMD-V, is AMD’s counterpart of Intel’s VMX; the two have nothing in common at the instruction level. The hypervisor describes each guest in a virtual machine control block (VMCB) in memory and enters it with VMRUN, which returns when an event that the VMCB intercepts occurs; VMLOAD and VMSAVE move the state that VMRUN leaves alone. A guest calls its hypervisor with VMMCALL, the counterpart of VMX’s VMCALL. CLGI and STGI hold interrupts off around the switch, and SKINIT starts a measured, trusted loader, as Intel’s GETSEC[SENTER] does. The encrypted guests of SEV-SNP build on SVM; see SEV-SNP.
Instructions
| Mnemonic | Summary | Forms |
|---|---|---|
| CLGI | Clears the global interrupt flag (GIF), which holds off all external interrupts; AMD SVM. | 1 |
| INVLPGA | Invalidates the TLB entry of the page at the address in rAX for the address space ID in ECX; AMD SVM. | 1 |
| SKINIT | Reinitializes the processor securely and starts the secure loader at the physical address in EAX after measuring it; AMD SVM. | 1 |
| STGI | Sets the global interrupt flag (GIF) again, letting external interrupts through; AMD SVM. | 1 |
| VMLOAD | Loads the processor state that VMRUN does not load (segment and system registers) from the VMCB at the address in rAX; AMD SVM. | 1 |
| VMMCALL | Exits from a guest to its hypervisor with a VM exit, for a call whose meaning the hypervisor defines; AMD SVM. | 1 |
| VMRUN | Runs the guest that the virtual machine control block (VMCB) at the physical address in rAX describes; AMD SVM. | 1 |
| VMSAVE | Saves the processor state that VMRUN does not save to the VMCB at the physical address in rAX; AMD SVM. | 1 |
CPUID and processors
XED splits SVM 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.
Sources
- Intel XED v2026.08.23 (commit
0bcb6237345c): forms, encodings, 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.36, March 2024), Wayback Machine copy of AMD's PDF
- AMD64 Architecture Programmer's Manual, Volume 2: System Programming (24593, rev. 3.42, March 2024), Wayback Machine copy of AMD's PDF
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.