summaryrefslogtreecommitdiff
path: root/src/arch-syscall-check.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/arch-syscall-check.c')
-rw-r--r--src/arch-syscall-check.c29
1 files changed, 26 insertions, 3 deletions
diff --git a/src/arch-syscall-check.c b/src/arch-syscall-check.c
index a074c9d..8682483 100644
--- a/src/arch-syscall-check.c
+++ b/src/arch-syscall-check.c
@@ -33,6 +33,8 @@
#include "arch-mips.h"
#include "arch-mips64.h"
#include "arch-mips64n32.h"
+#include "arch-ppc64.h"
+#include "arch-ppc.h"
/**
* compare the syscall values
@@ -67,6 +69,8 @@ int main(int argc, char *argv[])
int i_mips = 0;
int i_mips64 = 0;
int i_mips64n32 = 0;
+ int i_ppc64 = 0;
+ int i_ppc = 0;
const char *sys_name;
char str_miss[256];
@@ -93,6 +97,10 @@ int main(int argc, char *argv[])
mips64_syscall_iterate_name(i_mips64));
syscall_check(str_miss, sys_name, "mips64n32",
mips64n32_syscall_iterate_name(i_mips64n32));
+ syscall_check(str_miss, sys_name, "ppc64",
+ ppc64_syscall_iterate_name(i_ppc64));
+ syscall_check(str_miss, sys_name, "ppc",
+ ppc_syscall_iterate_name(i_ppc));
/* output the results */
printf("%s: ", sys_name);
@@ -111,17 +119,22 @@ int main(int argc, char *argv[])
i_x32 = -1;
if (!arm_syscall_iterate_name(++i_arm))
i_arm = -1;
+ if (!aarch64_syscall_iterate_name(++i_aarch64))
+ i_aarch64 = -1;
if (!mips_syscall_iterate_name(++i_mips))
i_mips = -1;
if (!mips64_syscall_iterate_name(++i_mips64))
i_mips64 = -1;
if (!mips64n32_syscall_iterate_name(++i_mips64n32))
i_mips64n32 = -1;
- if (!aarch64_syscall_iterate_name(++i_aarch64))
- i_aarch64 = -1;
+ if (!ppc64_syscall_iterate_name(++i_ppc64))
+ i_ppc64 = -1;
+ if (!ppc_syscall_iterate_name(++i_ppc))
+ i_ppc = -1;
} while (i_x86_64 >= 0 && i_x32 >= 0 &&
i_arm >= 0 && i_aarch64 >= 0 &&
- i_mips >= 0 && i_mips64 >= 0 && i_mips64n32 >= 0);
+ i_mips >= 0 && i_mips64 >= 0 && i_mips64n32 >= 0 &&
+ i_ppc64 >= 0 && i_ppc >= 0);
/* check for any leftovers */
sys_name = x86_syscall_iterate_name(i_x86 + 1);
@@ -164,6 +177,16 @@ int main(int argc, char *argv[])
mips64n32_syscall_iterate_name(i_mips64n32));
return 1;
}
+ if (i_ppc64 >= 0) {
+ printf("%s: ERROR, ppc64 has additional syscalls\n",
+ ppc64_syscall_iterate_name(i_ppc64));
+ return 1;
+ }
+ if (i_ppc >= 0) {
+ printf("%s: ERROR, ppc has additional syscalls\n",
+ ppc_syscall_iterate_name(i_ppc));
+ return 1;
+ }
/* if we made it here, all is good */
return 0;