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

Kernel: Add Syscalls/execve.cpp to aarch64 build

This commit is contained in:
Timon Kruiper 2023-01-25 17:13:12 +01:00 committed by Linus Groh
parent 1fbf562e7e
commit b941bd55d9
3 changed files with 13 additions and 7 deletions

View file

@ -7,6 +7,7 @@
#include <AK/ScopeGuard.h>
#include <AK/TemporaryChange.h>
#include <Kernel/Arch/CPU.h>
#include <Kernel/Debug.h>
#include <Kernel/FileSystem/Custody.h>
#include <Kernel/FileSystem/OpenFileDescription.h>
@ -152,6 +153,10 @@ static ErrorOr<FlatPtr> make_userspace_context_for_main_thread([[maybe_unused]]
regs.rdi = argv_entries.size();
regs.rsi = argv;
regs.rdx = envp;
#elif ARCH(AARCH64)
regs.x[0] = argv_entries.size();
regs.x[1] = argv;
regs.x[2] = envp;
#else
# error Unknown architecture
#endif
@ -717,8 +722,14 @@ static Array<ELF::AuxiliaryValue, auxiliary_vector_size> generate_auxiliary_vect
{ ELF::AuxiliaryValue::EGid, (long)egid.value() },
{ ELF::AuxiliaryValue::Platform, Processor::platform_string() },
// FIXME: This is platform specific
// FIXME: This is platform specific
#if ARCH(X86_64)
{ ELF::AuxiliaryValue::HwCap, (long)CPUID(1).edx() },
#elif ARCH(AARCH64)
{ ELF::AuxiliaryValue::HwCap, (long)0 },
#else
# error "Unknown architecture"
#endif
{ ELF::AuxiliaryValue::ClockTick, (long)TimeManagement::the().ticks_per_second() },