Correction: usermode is only supported by zen4 (or newer) and intel Ivy Bridge (or newer).
The reason is pretty simple: only from those generations onwards a new instruction was added (cpuid faulting) which is executed in the hardware itself, old generations simply lacks the silicon for it.
cpu faulting is used to trap usermode cpuid calls and can be used to return spoofed values, without needing an hypervisor.