mirror of
https://github.com/Atmosphere-NX/Atmosphere
synced 2024-12-22 12:21:18 +00:00
thermosphere: static inline -> inline
This commit is contained in:
parent
0126a6417f
commit
d4bbb78a27
4 changed files with 16 additions and 16 deletions
|
@ -21,13 +21,13 @@
|
|||
|
||||
namespace ams::hvisor::cpu {
|
||||
|
||||
static inline u32 GetInstructionCachePolicy(void)
|
||||
inline u32 GetInstructionCachePolicy(void)
|
||||
{
|
||||
u32 ctr = static_cast<u32>(THERMOSPHERE_GET_SYSREG(ctr_el0));
|
||||
return (ctr >> 14) & 3;
|
||||
}
|
||||
|
||||
static inline u32 GetSmallestInstructionCacheLineSize(void)
|
||||
inline u32 GetSmallestInstructionCacheLineSize(void)
|
||||
{
|
||||
u32 ctr = static_cast<u32>(THERMOSPHERE_GET_SYSREG(ctr_el0));
|
||||
u32 shift = ctr & 0xF;
|
||||
|
@ -35,7 +35,7 @@ namespace ams::hvisor::cpu {
|
|||
return 4 << shift;
|
||||
}
|
||||
|
||||
static inline u32 GetSmallestDataCacheLineSize(void)
|
||||
inline u32 GetSmallestDataCacheLineSize(void)
|
||||
{
|
||||
u32 ctr = static_cast<u32>(THERMOSPHERE_GET_SYSREG(ctr_el0));
|
||||
u32 shift = (ctr >> 16) & 0xF;
|
||||
|
@ -43,13 +43,13 @@ namespace ams::hvisor::cpu {
|
|||
return 4 << shift;
|
||||
}
|
||||
|
||||
static inline void InvalidateInstructionCache(void)
|
||||
ALWAYS_INLINE void InvalidateInstructionCache(void)
|
||||
{
|
||||
__asm__ __volatile__ ("ic ialluis" ::: "memory");
|
||||
cpu::isb();
|
||||
}
|
||||
|
||||
static inline void InvalidateInstructionCacheLocal(void)
|
||||
ALWAYS_INLINE void InvalidateInstructionCacheLocal(void)
|
||||
{
|
||||
__asm__ __volatile__ ("ic iallu" ::: "memory");
|
||||
cpu::isb();
|
||||
|
|
|
@ -24,8 +24,8 @@
|
|||
res;\
|
||||
})
|
||||
|
||||
#define DECLARE_SINGLE_ASM_INSN2(name, what) static inline void name() { __asm__ __volatile__ (what ::: "memory"); }
|
||||
#define DECLARE_SINGLE_ASM_INSN(name) static inline void name() { __asm__ __volatile__ (STRINGIZE(name) ::: "memory"); }
|
||||
#define DECLARE_SINGLE_ASM_INSN2(name, what) ALWAYS_INLINE void name() { __asm__ __volatile__ (what ::: "memory"); }
|
||||
#define DECLARE_SINGLE_ASM_INSN(name) ALWAYS_INLINE void name() { __asm__ __volatile__ (STRINGIZE(name) ::: "memory"); }
|
||||
|
||||
namespace ams::hvisor::cpu {
|
||||
|
||||
|
@ -55,7 +55,7 @@ namespace ams::hvisor::cpu {
|
|||
DECLARE_SINGLE_ASM_INSN2(TlbInvalidateEl1, "tlbi vmalle1is")
|
||||
DECLARE_SINGLE_ASM_INSN2(TlbInvalidateEl1Stage12, "tlbi alle1is")
|
||||
|
||||
ALWAYS_INLINE static void TlbInvalidateEl2Page(uintptr_t addr)
|
||||
ALWAYS_INLINE void TlbInvalidateEl2Page(uintptr_t addr)
|
||||
{
|
||||
__asm__ __volatile__ ("tlbi vae2is, %0" :: "r"(addr) : "memory");
|
||||
}
|
||||
|
|
|
@ -20,21 +20,21 @@
|
|||
|
||||
namespace ams::hvisor::cpu {
|
||||
|
||||
static inline u64 MaskIrq()
|
||||
ALWAYS_INLINE u64 MaskIrq()
|
||||
{
|
||||
u64 daif = THERMOSPHERE_GET_SYSREG(daif);
|
||||
THERMOSPHERE_SET_SYSREG_IMM(daifset, BIT(1));
|
||||
return daif;
|
||||
}
|
||||
|
||||
static inline u64 UnmaskIrq()
|
||||
ALWAYS_INLINE u64 UnmaskIrq()
|
||||
{
|
||||
u64 daif = THERMOSPHERE_GET_SYSREG(daif);
|
||||
THERMOSPHERE_SET_SYSREG_IMM(daifclr, BIT(1));
|
||||
return daif;
|
||||
}
|
||||
|
||||
static inline void RestoreInterruptFlags(u64 flags)
|
||||
ALWAYS_INLINE void RestoreInterruptFlags(u64 flags)
|
||||
{
|
||||
THERMOSPHERE_SET_SYSREG(daif, flags);
|
||||
}
|
||||
|
|
|
@ -22,12 +22,12 @@
|
|||
|
||||
namespace ams::hvisor {
|
||||
|
||||
static inline u64 ComputeCntvct(const ExceptionStackFrame *frame)
|
||||
inline u64 ComputeCntvct(const ExceptionStackFrame *frame)
|
||||
{
|
||||
return frame->cntpct_el0 - currentCoreCtx->GetTotalTimeInHypervisor();
|
||||
}
|
||||
|
||||
static inline void WriteEmulatedPhysicalCompareValue(ExceptionStackFrame *frame, u64 val)
|
||||
inline void WriteEmulatedPhysicalCompareValue(ExceptionStackFrame *frame, u64 val)
|
||||
{
|
||||
// We lied about the value of cntpct, so we need to compute the time delta
|
||||
// the guest actually intended to use...
|
||||
|
@ -36,7 +36,7 @@ namespace ams::hvisor {
|
|||
THERMOSPHERE_SET_SYSREG(cntp_cval_el0, frame->cntpct_el0 + (val - vct));
|
||||
}
|
||||
|
||||
static inline bool CheckRescheduleEmulatedPtimer(ExceptionStackFrame *frame)
|
||||
inline bool CheckRescheduleEmulatedPtimer(ExceptionStackFrame *frame)
|
||||
{
|
||||
// Evaluate if the timer has really expired in the PoV of the guest kernel.
|
||||
// If not, reschedule (add missed time delta) it & exit early
|
||||
|
@ -53,14 +53,14 @@ namespace ams::hvisor {
|
|||
return true;
|
||||
}
|
||||
|
||||
static inline void EnableGuestTimerTraps(void)
|
||||
ALWAYS_INLINE void EnableGuestTimerTraps(void)
|
||||
{
|
||||
// Disable event streams, trap everything
|
||||
u64 cnthctl = 0;
|
||||
THERMOSPHERE_SET_SYSREG(cnthctl_el2, cnthctl);
|
||||
}
|
||||
|
||||
static inline void UpdateVirtualOffsetSysreg(void)
|
||||
ALWAYS_INLINE void UpdateVirtualOffsetSysreg(void)
|
||||
{
|
||||
THERMOSPHERE_SET_SYSREG(cntvoff_el2, currentCoreCtx->GetTotalTimeInHypervisor());
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue