#[cfg(target_arch = "aarch64")]
use core::arch::asm;
#[cfg(target_arch = "aarch64")]
pub unsafe fn scan_amx(_bytes: &mut [u8]) -> usize {
unsafe {
asm!(".inst 0x00201420", options(nostack, preserves_flags));
}
unsafe {
asm!(
".inst 0x00201000", options(nostack, preserves_flags)
);
}
unsafe {
asm!(
".inst 0x00201020", options(nostack, preserves_flags)
);
}
unsafe {
asm!(
".inst 0x00201118", options(nostack, preserves_flags)
);
}
unsafe {
asm!(
".inst 0x00201420", options(nostack, preserves_flags)
);
}
panic!(
"AMX Whitespace Scrubber is currently in experimental development and requires raw opcode emission."
);
}
#[cfg(not(target_arch = "aarch64"))]
pub unsafe fn scan_amx(_bytes: &mut [u8]) -> usize {
unreachable!("scan_amx called on non-aarch64 architecture")
}