/* Writes and returns a new value to CR4. This function is only available on IA-32 and X64. This writes a 32-bit value on IA-32 and a 64-bit value on X64. */
UINTN EFIAPI AsmWriteCr4(UINTN Cr4)
/* Writes and returns a new value to CR4. This function is only available on IA-32 and X64. This writes a 32-bit value on IA-32 and a 64-bit value on X64. */
UINTN EFIAPI AsmWriteCr4(UINTN Cr4)
{
  __asm__ __volatile__ (
    "mov  %0, %%cr4"
    :
    : "r" (Cr4)
  );
  return Cr4;
}