23 lines
366 B
Rust
23 lines
366 B
Rust
// Copyright (c) 2025 shibedrill
|
|
// SPDX-License-Identifier: MIT
|
|
|
|
use core::arch::asm;
|
|
|
|
use intbits::Bits;
|
|
|
|
pub fn nop() {
|
|
::x86_64::instructions::nop();
|
|
}
|
|
|
|
pub fn long_mode() -> bool {
|
|
let mut output: u32;
|
|
unsafe {
|
|
asm!(
|
|
"mov eax, 0x80000001",
|
|
"cpuid",
|
|
out("edx") output,
|
|
)
|
|
}
|
|
output.bit(29)
|
|
}
|