1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-26 05:27:46 +00:00

Kernel: Add PMCCNTR_EL0, Performance Monitors Cycle Count Register

This commit is contained in:
konrad 2022-12-24 01:23:30 +01:00 committed by Andreas Kling
parent e1c3bf0ec0
commit 88d0d0d90d

View file

@ -762,4 +762,19 @@ struct alignas(u64) NZCV {
};
static_assert(sizeof(NZCV) == 8);
// https://developer.arm.com/documentation/ddi0595/2021-03/AArch64-Registers/PMCCNTR-EL0--Performance-Monitors-Cycle-Count-Register
// PMCCNTR_EL0, Performance Monitors Cycle Count Register
struct alignas(u64) PMCCNTR_EL0 {
u64 CCNT : 64;
static inline PMCCNTR_EL0 read()
{
PMCCNTR_EL0 pmccntr_el0;
asm volatile("mrs %[value], pmccntr_el0"
: [value] "=r"(pmccntr_el0));
return pmccntr_el0;
}
};
static_assert(sizeof(PMCCNTR_EL0) == 8);
}