diff --git a/Scripts/GenerateSyscallNumbers.py b/Scripts/GenerateSyscallNumbers.py index 466eada1f..b58f7dee7 100755 --- a/Scripts/GenerateSyscallNumbers.py +++ b/Scripts/GenerateSyscallNumbers.py @@ -59,7 +59,13 @@ SyscallArm64File = "/include/uapi/asm-generic/unistd.h" DefinitionRenameDict = { "pread64": "pread_64", "pwrite64": "pwrite_64", - "prlimit64": "prlimit_64" + "prlimit64": "prlimit_64", + # Shm symbols conflict with termux defines and FEX's syscall token pasting. + # Underscore at the start to avoid name collision + "shmget": "_shmget", + "shmctl": "_shmctl", + "shmat": "_shmat", + "shmdt": "_shmdt", } Definitions_x64 = [] diff --git a/Source/Tests/LinuxSyscalls/Arm64/SyscallsEnum.h b/Source/Tests/LinuxSyscalls/Arm64/SyscallsEnum.h index e54ba14cb..ec6c111f5 100644 --- a/Source/Tests/LinuxSyscalls/Arm64/SyscallsEnum.h +++ b/Source/Tests/LinuxSyscalls/Arm64/SyscallsEnum.h @@ -204,10 +204,10 @@ enum Syscalls_Arm64 { SYSCALL_Arm64_semctl = 191, SYSCALL_Arm64_semtimedop = 192, SYSCALL_Arm64_semop = 193, - SYSCALL_Arm64_shmget = 194, - SYSCALL_Arm64_shmctl = 195, - SYSCALL_Arm64_shmat = 196, - SYSCALL_Arm64_shmdt = 197, + SYSCALL_Arm64__shmget = 194, + SYSCALL_Arm64__shmctl = 195, + SYSCALL_Arm64__shmat = 196, + SYSCALL_Arm64__shmdt = 197, SYSCALL_Arm64_socket = 198, SYSCALL_Arm64_socketpair = 199, SYSCALL_Arm64_bind = 200, diff --git a/Source/Tests/LinuxSyscalls/x32/SyscallsEnum.h b/Source/Tests/LinuxSyscalls/x32/SyscallsEnum.h index 4925e085d..45f75bc1d 100644 --- a/Source/Tests/LinuxSyscalls/x32/SyscallsEnum.h +++ b/Source/Tests/LinuxSyscalls/x32/SyscallsEnum.h @@ -410,10 +410,10 @@ enum Syscalls_x86 { SYSCALL_x86_rseq = 386, SYSCALL_x86_semget = 393, SYSCALL_x86_semctl = 394, - SYSCALL_x86_shmget = 395, - SYSCALL_x86_shmctl = 396, - SYSCALL_x86_shmat = 397, - SYSCALL_x86_shmdt = 398, + SYSCALL_x86__shmget = 395, + SYSCALL_x86__shmctl = 396, + SYSCALL_x86__shmat = 397, + SYSCALL_x86__shmdt = 398, SYSCALL_x86_msgget = 399, SYSCALL_x86_msgsnd = 400, SYSCALL_x86_msgrcv = 401, diff --git a/Source/Tests/LinuxSyscalls/x64/SyscallsEnum.h b/Source/Tests/LinuxSyscalls/x64/SyscallsEnum.h index d7edfbab6..b66ff196a 100644 --- a/Source/Tests/LinuxSyscalls/x64/SyscallsEnum.h +++ b/Source/Tests/LinuxSyscalls/x64/SyscallsEnum.h @@ -36,9 +36,9 @@ enum Syscalls_x64 { SYSCALL_x64_msync = 26, SYSCALL_x64_mincore = 27, SYSCALL_x64_madvise = 28, - SYSCALL_x64_shmget = 29, - SYSCALL_x64_shmat = 30, - SYSCALL_x64_shmctl = 31, + SYSCALL_x64__shmget = 29, + SYSCALL_x64__shmat = 30, + SYSCALL_x64__shmctl = 31, SYSCALL_x64_dup = 32, SYSCALL_x64_dup2 = 33, SYSCALL_x64_pause = 34, @@ -74,7 +74,7 @@ enum Syscalls_x64 { SYSCALL_x64_semget = 64, SYSCALL_x64_semop = 65, SYSCALL_x64_semctl = 66, - SYSCALL_x64_shmdt = 67, + SYSCALL_x64__shmdt = 67, SYSCALL_x64_msgget = 68, SYSCALL_x64_msgsnd = 69, SYSCALL_x64_msgrcv = 70,