Commit 55f6d3d
Changed files (4)
platform/linux/coretypes.h
@@ -17,12 +17,12 @@ typedef float f32;
typedef double f64;
X86_64(
- typedef u64 syscall_uint;
+ typedef u64 usize;
)
I386(
- typedef u32 syscall_uint;
+ typedef u32 usize;
)
#endif
platform/linux/syscall_wrappers_gcclike.h
@@ -6,10 +6,10 @@
X86_64(
/* All this mess, just so *maybe* the compiler can optimize register usage when inlining. Check the generic wrappers for a more typical way of going about this. This here is unusual, from what I have seen. */
- static inline syscall_uint linux_syscall1(syscall_uint num, syscall_uint arg1) {
- register syscall_uint ret __asm__("rax") = num;
+ static inline usize linux_syscall1(usize num, usize arg1) {
+ register usize ret __asm__("rax") = num;
- register syscall_uint a1 __asm__("rdi") = arg1;
+ register usize a1 __asm__("rdi") = arg1;
__asm__ volatile(
"syscall\n"
@@ -19,11 +19,11 @@ X86_64(
);
return ret;
}
- static inline syscall_uint linux_syscall2(syscall_uint num, syscall_uint arg1, syscall_uint arg2) {
- register syscall_uint ret __asm__("rax") = num;
+ static inline usize linux_syscall2(usize num, usize arg1, usize arg2) {
+ register usize ret __asm__("rax") = num;
- register syscall_uint a1 __asm__("rdi") = arg1;
- register syscall_uint a2 __asm__("rsi") = arg2;
+ register usize a1 __asm__("rdi") = arg1;
+ register usize a2 __asm__("rsi") = arg2;
__asm__ volatile(
"syscall\n"
@@ -33,12 +33,12 @@ X86_64(
);
return ret;
}
- static inline syscall_uint linux_syscall3(syscall_uint num, syscall_uint arg1, syscall_uint arg2, syscall_uint arg3) {
- register syscall_uint ret __asm__("rax") = num;
+ static inline usize linux_syscall3(usize num, usize arg1, usize arg2, usize arg3) {
+ register usize ret __asm__("rax") = num;
- register syscall_uint a1 __asm__("rdi") = arg1;
- register syscall_uint a2 __asm__("rsi") = arg2;
- register syscall_uint a3 __asm__("rdx") = arg3;
+ register usize a1 __asm__("rdi") = arg1;
+ register usize a2 __asm__("rsi") = arg2;
+ register usize a3 __asm__("rdx") = arg3;
__asm__ volatile(
"syscall\n"
@@ -48,13 +48,13 @@ X86_64(
);
return ret;
}
- static inline syscall_uint linux_syscall4(syscall_uint num, syscall_uint arg1, syscall_uint arg2, syscall_uint arg3, syscall_uint arg4) {
- register syscall_uint ret __asm__("rax") = num;
+ static inline usize linux_syscall4(usize num, usize arg1, usize arg2, usize arg3, usize arg4) {
+ register usize ret __asm__("rax") = num;
- register syscall_uint a1 __asm__("rdi") = arg1;
- register syscall_uint a2 __asm__("rsi") = arg2;
- register syscall_uint a3 __asm__("rdx") = arg3;
- register syscall_uint a4 __asm__("r10") = arg4;
+ register usize a1 __asm__("rdi") = arg1;
+ register usize a2 __asm__("rsi") = arg2;
+ register usize a3 __asm__("rdx") = arg3;
+ register usize a4 __asm__("r10") = arg4;
__asm__ volatile(
"syscall\n"
@@ -65,14 +65,14 @@ X86_64(
return ret;
}
- static inline syscall_uint linux_syscall5(syscall_uint num, syscall_uint arg1, syscall_uint arg2, syscall_uint arg3, syscall_uint arg4, syscall_uint arg5) {
- register syscall_uint ret __asm__("rax") = num;
+ static inline usize linux_syscall5(usize num, usize arg1, usize arg2, usize arg3, usize arg4, usize arg5) {
+ register usize ret __asm__("rax") = num;
- register syscall_uint a1 __asm__("rdi") = arg1;
- register syscall_uint a2 __asm__("rsi") = arg2;
- register syscall_uint a3 __asm__("rdx") = arg3;
- register syscall_uint a4 __asm__("r10") = arg4;
- register syscall_uint a5 __asm__("r8") = arg5;
+ register usize a1 __asm__("rdi") = arg1;
+ register usize a2 __asm__("rsi") = arg2;
+ register usize a3 __asm__("rdx") = arg3;
+ register usize a4 __asm__("r10") = arg4;
+ register usize a5 __asm__("r8") = arg5;
__asm__ volatile(
"syscall\n"
@@ -83,15 +83,15 @@ X86_64(
return ret;
}
- static inline syscall_uint linux_syscall6(syscall_uint num, syscall_uint arg1, syscall_uint arg2, syscall_uint arg3, syscall_uint arg4, syscall_uint arg5, syscall_uint arg6) {
- register syscall_uint ret __asm__("rax") = num;
+ static inline usize linux_syscall6(usize num, usize arg1, usize arg2, usize arg3, usize arg4, usize arg5, usize arg6) {
+ register usize ret __asm__("rax") = num;
- register syscall_uint a1 __asm__("rdi") = arg1;
- register syscall_uint a2 __asm__("rsi") = arg2;
- register syscall_uint a3 __asm__("rdx") = arg3;
- register syscall_uint a4 __asm__("r10") = arg4;
- register syscall_uint a5 __asm__("r8") = arg5;
- register syscall_uint a6 __asm__("r9") = arg6;
+ register usize a1 __asm__("rdi") = arg1;
+ register usize a2 __asm__("rsi") = arg2;
+ register usize a3 __asm__("rdx") = arg3;
+ register usize a4 __asm__("r10") = arg4;
+ register usize a5 __asm__("r8") = arg5;
+ register usize a6 __asm__("r9") = arg6;
__asm__ volatile(
"syscall\n"
platform/linux/syscall_wrappers_generic.h
@@ -6,7 +6,7 @@
X86_64(
- static inline syscall_uint linux_syscall1(syscall_uint num, syscall_uint arg1) {
+ static inline usize linux_syscall1(usize num, usize arg1) {
__asm__ volatile (
"mov %[a1], %%rdi\n"
"syscall\n"
@@ -17,7 +17,7 @@ X86_64(
return num;
}
- static inline syscall_uint linux_syscall2(syscall_uint num, syscall_uint arg1, syscall_uint arg2) {
+ static inline usize linux_syscall2(usize num, usize arg1, usize arg2) {
__asm__ volatile (
"mov %[a1], %%rdi\n"
"mov %[a2], %%rsi\n"
@@ -28,7 +28,7 @@ X86_64(
);
return num;
}
- static inline syscall_uint linux_syscall3(syscall_uint num, syscall_uint arg1, syscall_uint arg2, syscall_uint arg3) {
+ static inline usize linux_syscall3(usize num, usize arg1, usize arg2, usize arg3) {
__asm__ volatile (
"mov %[a1], %%rdi\n"
"mov %[a2], %%rsi\n"
@@ -40,7 +40,7 @@ X86_64(
);
return num;
}
- static inline syscall_uint linux_syscall4(syscall_uint num, syscall_uint arg1, syscall_uint arg2, syscall_uint arg3, syscall_uint arg4) {
+ static inline usize linux_syscall4(usize num, usize arg1, usize arg2, usize arg3, usize arg4) {
__asm__ volatile (
"mov %[a1], %%rdi\n"
"mov %[a2], %%rsi\n"
@@ -53,7 +53,7 @@ X86_64(
);
return num;
}
- static inline syscall_uint linux_syscall5(syscall_uint num, syscall_uint arg1, syscall_uint arg2, syscall_uint arg3, syscall_uint arg4, syscall_uint arg5) {
+ static inline usize linux_syscall5(usize num, usize arg1, usize arg2, usize arg3, usize arg4, usize arg5) {
__asm__ volatile (
"mov %[a1], %%rdi\n"
"mov %[a2], %%rsi\n"
@@ -67,7 +67,7 @@ X86_64(
return num;
}
- static inline syscall_uint linux_syscall6(syscall_uint num, syscall_uint arg1, syscall_uint arg2, syscall_uint arg3, syscall_uint arg4, syscall_uint arg5, syscall_uint arg6) {
+ static inline usize linux_syscall6(usize num, usize arg1, usize arg2, usize arg3, usize arg4, usize arg5, usize arg6) {
__asm__ volatile (
"mov %[a1], %%rdi\n"
"mov %[a2], %%rsi\n"
platform/linux/syscalls.h
@@ -5,12 +5,12 @@
#include "../common/compiler.h"
#include "./coretypes.h"
-static inline syscall_uint linux_syscall1(syscall_uint num, syscall_uint arg1);
-static inline syscall_uint linux_syscall2(syscall_uint num, syscall_uint arg1, syscall_uint arg2);
-static inline syscall_uint linux_syscall3(syscall_uint num, syscall_uint arg1, syscall_uint arg2, syscall_uint arg3);
-static inline syscall_uint linux_syscall4(syscall_uint num, syscall_uint arg1, syscall_uint arg2, syscall_uint arg3, syscall_uint arg4);
-static inline syscall_uint linux_syscall5(syscall_uint num, syscall_uint arg1, syscall_uint arg2, syscall_uint arg3, syscall_uint arg4, syscall_uint arg5);
-static inline syscall_uint linux_syscall6(syscall_uint num, syscall_uint arg1, syscall_uint arg2, syscall_uint arg3, syscall_uint arg4, syscall_uint arg5, syscall_uint arg6);
+static inline usize linux_syscall1(usize num, usize arg1);
+static inline usize linux_syscall2(usize num, usize arg1, usize arg2);
+static inline usize linux_syscall3(usize num, usize arg1, usize arg2, usize arg3);
+static inline usize linux_syscall4(usize num, usize arg1, usize arg2, usize arg3, usize arg4);
+static inline usize linux_syscall5(usize num, usize arg1, usize arg2, usize arg3, usize arg4, usize arg5);
+static inline usize linux_syscall6(usize num, usize arg1, usize arg2, usize arg3, usize arg4, usize arg5, usize arg6);
#if COMPILER == COMPILER_GCC || COMPILER == COMPILER_CLANG
#include "./syscall_wrappers_gcclike.h"