From 91f69e184df95fee89ffa8589e44f4063255e56d Mon Sep 17 00:00:00 2001 From: Matheus Date: Fri, 29 Mar 2024 13:37:11 -0300 Subject: [PATCH] cpu: byte ordering swapping functions --- kernel-src/include/x86-64/arch/cpu.h | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/kernel-src/include/x86-64/arch/cpu.h b/kernel-src/include/x86-64/arch/cpu.h index 0e4ac5c1..ddf87437 100644 --- a/kernel-src/include/x86-64/arch/cpu.h +++ b/kernel-src/include/x86-64/arch/cpu.h @@ -36,6 +36,14 @@ typedef struct cpu_t { #define CPU_HALT() asm volatile("hlt") #define CPU_PAUSE() asm volatile("pause") +static inline uint32_t cpu_to_be_d(uint32_t d) { + return __builtin_bswap32(d); +} + +static inline uint16_t cpu_to_be_w(uint16_t w) { + return __builtin_bswap16(w); +} + static inline cpu_t *_cpu() { return (cpu_t *)rdmsr(MSR_GSBASE); }