The Pedigree Project
0.1
src
system
include
pedigree
kernel
processor
arm64
arm64/Processor.h
1
#ifndef KERNEL_PROCESSOR_ARM64_PROCESSOR_H
2
#define KERNEL_PROCESSOR_ARM64_PROCESSOR_H
3
4
#include "pedigree/kernel/processor/Processor.h"
5
6
class
Arm64Processor
:
public
ProcessorBase
{};
7
8
#if ARM64
9
ALWAYS_INLINE
inline
ProcessorInformation&
ProcessorBase::information
() {
10
ProcessorInformation* info;
11
asm
volatile
(
"mrs %0, tpidr_el1"
:
"=r"
(info));
12
return
info ? *info :
m_SafeBspProcessorInformation
;
13
}
14
15
ALWAYS_INLINE
inline
size_t
ProcessorBase::index
() {
16
return
information
().processorId();
17
}
18
#endif
19
20
#endif
Arm64Processor
Definition
arm64/Processor.h:6
ProcessorBase
Definition
Processor.h:128
ProcessorBase::information
static ProcessorInformation & information()
Definition
x64/Processor.h:30
ProcessorBase::m_SafeBspProcessorInformation
static ProcessorInformation m_SafeBspProcessorInformation
Definition
Processor.h:508
ProcessorBase::index
static size_t index()
Definition
x64/Processor.h:36
ALWAYS_INLINE
#define ALWAYS_INLINE
Definition
system/include/pedigree/kernel/compiler.h:42
Generated on Thu Sep 24 2026 06:24:02 for The Pedigree Project by
1.9.8