Refactor the sub-leaf loop for CPUID 0x7 to move the main leaf out of
said loop. The emitted code savings is basically a mirage, as the
handling of the main leaf can easily be split to its own helper to avoid
code bloat.
No functional change intended.
Reviewed-by: Vitaly Kuznetsov <vkuznets@redhat.com>
Signed-off-by: Sean Christopherson <sean.j.christopherson@intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
case 7: {
int i;
- for (i = 0; ; ) {
- do_cpuid_7_mask(&entry[i], i);
- if (i == entry->eax)
- break;
+ do_cpuid_7_mask(entry, 0);
+
+ for (i = 1; i <= entry->eax; i++) {
if (*nent >= maxnent)
goto out;
- ++i;
do_host_cpuid(&entry[i], function, i);
++*nent;
+
+ do_cpuid_7_mask(&entry[i], i);
}
break;
}