summaryrefslogtreecommitdiff
path: root/Userland
diff options
context:
space:
mode:
authorBrian Gianforcaro <bgianf@serenityos.org>2021-12-21 16:30:13 -0800
committerBrian Gianforcaro <b.gianfo@gmail.com>2021-12-29 03:17:41 -0800
commit1210ee9ba9b9a20346cb90e9e1baa92ee1f240d0 (patch)
tree5dfc798fde30d8660fdec5fc563026e2ca574609 /Userland
parent9f2e8683de43bde183e7c617c5822900bd42e68d (diff)
downloadserenity-1210ee9ba9b9a20346cb90e9e1baa92ee1f240d0.zip
LibC: Make regs.h work with compilers without concepts
This allows the gdb port to compile with our `regs.h`.
Diffstat (limited to 'Userland')
-rw-r--r--Userland/Libraries/LibC/sys/arch/i386/regs.h78
1 files changed, 42 insertions, 36 deletions
diff --git a/Userland/Libraries/LibC/sys/arch/i386/regs.h b/Userland/Libraries/LibC/sys/arch/i386/regs.h
index 44289a4428..098feb99dc 100644
--- a/Userland/Libraries/LibC/sys/arch/i386/regs.h
+++ b/Userland/Libraries/LibC/sys/arch/i386/regs.h
@@ -6,48 +6,54 @@
#pragma once
-#include <AK/Types.h>
+#include <AK/Platform.h>
+
+#if defined(__cplusplus) && defined(__cpp_concepts)
+# include <AK/Types.h>
+#else
+# include <sys/types.h>
+#endif
struct [[gnu::packed]] PtraceRegisters {
#if ARCH(I386)
- u32 eax;
- u32 ecx;
- u32 edx;
- u32 ebx;
- u32 esp;
- u32 ebp;
- u32 esi;
- u32 edi;
- u32 eip;
- u32 eflags;
+ uint32_t eax;
+ uint32_t ecx;
+ uint32_t edx;
+ uint32_t ebx;
+ uint32_t esp;
+ uint32_t ebp;
+ uint32_t esi;
+ uint32_t edi;
+ uint32_t eip;
+ uint32_t eflags;
#else
- u64 rax;
- u64 rcx;
- u64 rdx;
- u64 rbx;
- u64 rsp;
- u64 rbp;
- u64 rsi;
- u64 rdi;
- u64 rip;
- u64 r8;
- u64 r9;
- u64 r10;
- u64 r11;
- u64 r12;
- u64 r13;
- u64 r14;
- u64 r15;
- u64 rflags;
+ uint64_t rax;
+ uint64_t rcx;
+ uint64_t rdx;
+ uint64_t rbx;
+ uint64_t rsp;
+ uint64_t rbp;
+ uint64_t rsi;
+ uint64_t rdi;
+ uint64_t rip;
+ uint64_t r8;
+ uint64_t r9;
+ uint64_t r10;
+ uint64_t r11;
+ uint64_t r12;
+ uint64_t r13;
+ uint64_t r14;
+ uint64_t r15;
+ uint64_t rflags;
#endif
- u32 cs;
- u32 ss;
- u32 ds;
- u32 es;
- u32 fs;
- u32 gs;
+ uint32_t cs;
+ uint32_t ss;
+ uint32_t ds;
+ uint32_t es;
+ uint32_t fs;
+ uint32_t gs;
-#ifdef __cplusplus
+#if defined(__cplusplus) && defined(__cpp_concepts)
FlatPtr ip() const
{
# if ARCH(I386)