#![cfg(target_arch = "aarch64")]
#[test]
fn test_mpidr_value_construction() {
let mpidr_cpu0: u64 = 0x80000000; assert_eq!(mpidr_cpu0 & 0x80000000, 0x80000000); assert_eq!(mpidr_cpu0 & 0x00FFFFFF, 0);
let mpidr_cpu1: u64 = 0x80000001; assert_eq!(mpidr_cpu1 & 0x80000000, 0x80000000); assert_eq!(mpidr_cpu1 & 0x00FFFFFF, 1);
let mpidr_cluster1_cpu0: u64 = 0x80000100; assert_eq!(mpidr_cluster1_cpu0 & 0x80000000, 0x80000000);
assert_eq!((mpidr_cluster1_cpu0 >> 8) & 0xFF, 1); assert_eq!(mpidr_cluster1_cpu0 & 0xFF, 0); }
#[test]
fn test_affinity_levels() {
let mpidr: u64 = 0x80010203;
let aff0 = mpidr & 0xFF;
let aff1 = (mpidr >> 8) & 0xFF;
let aff2 = (mpidr >> 16) & 0xFF;
let aff3 = (mpidr >> 32) & 0xFF;
assert_eq!(aff0, 3);
assert_eq!(aff1, 2);
assert_eq!(aff2, 1);
assert_eq!(aff3, 0);
}