struct ArmCurrentEl
Defined at line 29 of file ../../zircon/kernel/lib/arch/include/lib/arch/arm64/system.h
[arm/sysreg]/currentel: CurrentEL, Current Exception Level
Public Members
field_el_66
Public Methods
template <typename El1, typename El2, typename El3, typename Call>
decltype(auto) ForThisEl (El1 && el1, El2 && el2, El3 && el3, Call && call)
This returns call(el1) or call(el2) or call(el3) depending on current EL.
It uses perfect forwarding. All three overloads of call must all have the
same return type, which may be void.
Defined at line 34 of file ../../zircon/kernel/lib/arch/include/lib/arch/arm64/system.h
template <typename El1, typename El2, typename El3, typename Call>
void ForEachEl (El1 && el1, El2 && el2, El3 && el3, Call && call)
This does each of call(el3), call(el2), and call(el1) in turn going from
the current EL to each lower EL (with no call for EL0). It uses perfect
forwarding for elx objects.
Defined at line 50 of file ../../zircon/kernel/lib/arch/include/lib/arch/arm64/system.h
template <, >
typename SelfType::ValueType el ()
NOLINTEND(misc-non-private-member-variables-in-classes)
Defined at line 66 of file ../../zircon/kernel/lib/arch/include/lib/arch/arm64/system.h
template <, >
typename SelfType::ValueType el ()
NOLINTEND(misc-non-private-member-variables-in-classes)
Defined at line 66 of file ../../zircon/kernel/lib/arch/include/lib/arch/arm64/system.h
template <, >
SelfType & set_el (typename SelfType::ValueType val)
Defined at line 66 of file ../../zircon/kernel/lib/arch/include/lib/arch/arm64/system.h
template <, >
SelfType & set_el (typename SelfType::ValueType val)
Defined at line 66 of file ../../zircon/kernel/lib/arch/include/lib/arch/arm64/system.h