diff options
-rw-r--r-- | src/basic/missing_syscall_def.h | 167 | ||||
-rw-r--r-- | src/basic/missing_syscalls.py | 10 |
2 files changed, 142 insertions, 35 deletions
diff --git a/src/basic/missing_syscall_def.h b/src/basic/missing_syscall_def.h index 84b79ecc09..6a48c2a0c5 100644 --- a/src/basic/missing_syscall_def.h +++ b/src/basic/missing_syscall_def.h @@ -22,7 +22,12 @@ # error "Unknown MIPS ABI" # endif # elif defined(__powerpc__) -# elif defined(__riscv) && defined(__LP64__) +# elif defined(__riscv) +# if __riscv_xlen == 32 +# elif __riscv_xlen == 64 +# else +# error "Unknown RISC-V ABI" +# endif # elif defined(__s390__) # elif defined(__sparc__) # elif defined(__x86_64__) @@ -61,8 +66,14 @@ # endif # elif defined(__powerpc__) # define systemd_NR_bpf 361 -# elif defined(__riscv) && defined(__LP64__) -# define systemd_NR_bpf 280 +# elif defined(__riscv) +# if __riscv_xlen == 32 +# define systemd_NR_bpf 280 +# elif __riscv_xlen == 64 +# define systemd_NR_bpf 280 +# else +# error "Unknown RISC-V ABI" +# endif # elif defined(__s390__) # define systemd_NR_bpf 351 # elif defined(__sparc__) @@ -119,8 +130,14 @@ assert_cc(__NR_bpf == systemd_NR_bpf); # endif # elif defined(__powerpc__) # define systemd_NR_close_range 436 -# elif defined(__riscv) && defined(__LP64__) -# define systemd_NR_close_range 436 +# elif defined(__riscv) +# if __riscv_xlen == 32 +# define systemd_NR_close_range 436 +# elif __riscv_xlen == 64 +# define systemd_NR_close_range 436 +# else +# error "Unknown RISC-V ABI" +# endif # elif defined(__s390__) # define systemd_NR_close_range 436 # elif defined(__sparc__) @@ -177,8 +194,14 @@ assert_cc(__NR_close_range == systemd_NR_close_range); # endif # elif defined(__powerpc__) # define systemd_NR_copy_file_range 379 -# elif defined(__riscv) && defined(__LP64__) -# define systemd_NR_copy_file_range 285 +# elif defined(__riscv) +# if __riscv_xlen == 32 +# define systemd_NR_copy_file_range 285 +# elif __riscv_xlen == 64 +# define systemd_NR_copy_file_range 285 +# else +# error "Unknown RISC-V ABI" +# endif # elif defined(__s390__) # define systemd_NR_copy_file_range 375 # elif defined(__sparc__) @@ -235,8 +258,14 @@ assert_cc(__NR_copy_file_range == systemd_NR_copy_file_range); # endif # elif defined(__powerpc__) # define systemd_NR_epoll_pwait2 441 -# elif defined(__riscv) && defined(__LP64__) -# define systemd_NR_epoll_pwait2 441 +# elif defined(__riscv) +# if __riscv_xlen == 32 +# define systemd_NR_epoll_pwait2 441 +# elif __riscv_xlen == 64 +# define systemd_NR_epoll_pwait2 441 +# else +# error "Unknown RISC-V ABI" +# endif # elif defined(__s390__) # define systemd_NR_epoll_pwait2 441 # elif defined(__sparc__) @@ -293,8 +322,14 @@ assert_cc(__NR_epoll_pwait2 == systemd_NR_epoll_pwait2); # endif # elif defined(__powerpc__) # define systemd_NR_getrandom 359 -# elif defined(__riscv) && defined(__LP64__) -# define systemd_NR_getrandom 278 +# elif defined(__riscv) +# if __riscv_xlen == 32 +# define systemd_NR_getrandom 278 +# elif __riscv_xlen == 64 +# define systemd_NR_getrandom 278 +# else +# error "Unknown RISC-V ABI" +# endif # elif defined(__s390__) # define systemd_NR_getrandom 349 # elif defined(__sparc__) @@ -351,8 +386,14 @@ assert_cc(__NR_getrandom == systemd_NR_getrandom); # endif # elif defined(__powerpc__) # define systemd_NR_memfd_create 360 -# elif defined(__riscv) && defined(__LP64__) -# define systemd_NR_memfd_create 279 +# elif defined(__riscv) +# if __riscv_xlen == 32 +# define systemd_NR_memfd_create 279 +# elif __riscv_xlen == 64 +# define systemd_NR_memfd_create 279 +# else +# error "Unknown RISC-V ABI" +# endif # elif defined(__s390__) # define systemd_NR_memfd_create 350 # elif defined(__sparc__) @@ -409,8 +450,14 @@ assert_cc(__NR_memfd_create == systemd_NR_memfd_create); # endif # elif defined(__powerpc__) # define systemd_NR_mount_setattr 442 -# elif defined(__riscv) && defined(__LP64__) -# define systemd_NR_mount_setattr 442 +# elif defined(__riscv) +# if __riscv_xlen == 32 +# define systemd_NR_mount_setattr 442 +# elif __riscv_xlen == 64 +# define systemd_NR_mount_setattr 442 +# else +# error "Unknown RISC-V ABI" +# endif # elif defined(__s390__) # define systemd_NR_mount_setattr 442 # elif defined(__sparc__) @@ -467,8 +514,14 @@ assert_cc(__NR_mount_setattr == systemd_NR_mount_setattr); # endif # elif defined(__powerpc__) # define systemd_NR_move_mount 429 -# elif defined(__riscv) && defined(__LP64__) -# define systemd_NR_move_mount 429 +# elif defined(__riscv) +# if __riscv_xlen == 32 +# define systemd_NR_move_mount 429 +# elif __riscv_xlen == 64 +# define systemd_NR_move_mount 429 +# else +# error "Unknown RISC-V ABI" +# endif # elif defined(__s390__) # define systemd_NR_move_mount 429 # elif defined(__sparc__) @@ -525,8 +578,14 @@ assert_cc(__NR_move_mount == systemd_NR_move_mount); # endif # elif defined(__powerpc__) # define systemd_NR_name_to_handle_at 345 -# elif defined(__riscv) && defined(__LP64__) -# define systemd_NR_name_to_handle_at 264 +# elif defined(__riscv) +# if __riscv_xlen == 32 +# define systemd_NR_name_to_handle_at 264 +# elif __riscv_xlen == 64 +# define systemd_NR_name_to_handle_at 264 +# else +# error "Unknown RISC-V ABI" +# endif # elif defined(__s390__) # define systemd_NR_name_to_handle_at 335 # elif defined(__sparc__) @@ -583,8 +642,14 @@ assert_cc(__NR_name_to_handle_at == systemd_NR_name_to_handle_at); # endif # elif defined(__powerpc__) # define systemd_NR_open_tree 428 -# elif defined(__riscv) && defined(__LP64__) -# define systemd_NR_open_tree 428 +# elif defined(__riscv) +# if __riscv_xlen == 32 +# define systemd_NR_open_tree 428 +# elif __riscv_xlen == 64 +# define systemd_NR_open_tree 428 +# else +# error "Unknown RISC-V ABI" +# endif # elif defined(__s390__) # define systemd_NR_open_tree 428 # elif defined(__sparc__) @@ -641,8 +706,14 @@ assert_cc(__NR_open_tree == systemd_NR_open_tree); # endif # elif defined(__powerpc__) # define systemd_NR_pidfd_open 434 -# elif defined(__riscv) && defined(__LP64__) -# define systemd_NR_pidfd_open 434 +# elif defined(__riscv) +# if __riscv_xlen == 32 +# define systemd_NR_pidfd_open 434 +# elif __riscv_xlen == 64 +# define systemd_NR_pidfd_open 434 +# else +# error "Unknown RISC-V ABI" +# endif # elif defined(__s390__) # define systemd_NR_pidfd_open 434 # elif defined(__sparc__) @@ -699,8 +770,14 @@ assert_cc(__NR_pidfd_open == systemd_NR_pidfd_open); # endif # elif defined(__powerpc__) # define systemd_NR_pidfd_send_signal 424 -# elif defined(__riscv) && defined(__LP64__) -# define systemd_NR_pidfd_send_signal 424 +# elif defined(__riscv) +# if __riscv_xlen == 32 +# define systemd_NR_pidfd_send_signal 424 +# elif __riscv_xlen == 64 +# define systemd_NR_pidfd_send_signal 424 +# else +# error "Unknown RISC-V ABI" +# endif # elif defined(__s390__) # define systemd_NR_pidfd_send_signal 424 # elif defined(__sparc__) @@ -757,8 +834,14 @@ assert_cc(__NR_pidfd_send_signal == systemd_NR_pidfd_send_signal); # endif # elif defined(__powerpc__) # define systemd_NR_pkey_mprotect 386 -# elif defined(__riscv) && defined(__LP64__) -# define systemd_NR_pkey_mprotect 288 +# elif defined(__riscv) +# if __riscv_xlen == 32 +# define systemd_NR_pkey_mprotect 288 +# elif __riscv_xlen == 64 +# define systemd_NR_pkey_mprotect 288 +# else +# error "Unknown RISC-V ABI" +# endif # elif defined(__s390__) # define systemd_NR_pkey_mprotect 384 # elif defined(__sparc__) @@ -815,8 +898,14 @@ assert_cc(__NR_pkey_mprotect == systemd_NR_pkey_mprotect); # endif # elif defined(__powerpc__) # define systemd_NR_renameat2 357 -# elif defined(__riscv) && defined(__LP64__) -# define systemd_NR_renameat2 276 +# elif defined(__riscv) +# if __riscv_xlen == 32 +# define systemd_NR_renameat2 276 +# elif __riscv_xlen == 64 +# define systemd_NR_renameat2 276 +# else +# error "Unknown RISC-V ABI" +# endif # elif defined(__s390__) # define systemd_NR_renameat2 347 # elif defined(__sparc__) @@ -873,8 +962,14 @@ assert_cc(__NR_renameat2 == systemd_NR_renameat2); # endif # elif defined(__powerpc__) # define systemd_NR_setns 350 -# elif defined(__riscv) && defined(__LP64__) -# define systemd_NR_setns 268 +# elif defined(__riscv) +# if __riscv_xlen == 32 +# define systemd_NR_setns 268 +# elif __riscv_xlen == 64 +# define systemd_NR_setns 268 +# else +# error "Unknown RISC-V ABI" +# endif # elif defined(__s390__) # define systemd_NR_setns 339 # elif defined(__sparc__) @@ -931,8 +1026,14 @@ assert_cc(__NR_setns == systemd_NR_setns); # endif # elif defined(__powerpc__) # define systemd_NR_statx 383 -# elif defined(__riscv) && defined(__LP64__) -# define systemd_NR_statx 291 +# elif defined(__riscv) +# if __riscv_xlen == 32 +# define systemd_NR_statx 291 +# elif __riscv_xlen == 64 +# define systemd_NR_statx 291 +# else +# error "Unknown RISC-V ABI" +# endif # elif defined(__s390__) # define systemd_NR_statx 379 # elif defined(__sparc__) diff --git a/src/basic/missing_syscalls.py b/src/basic/missing_syscalls.py index d3c68dc067..19f9726d4e 100644 --- a/src/basic/missing_syscalls.py +++ b/src/basic/missing_syscalls.py @@ -73,8 +73,14 @@ DEF_TEMPLATE_B = '''\ # endif # elif defined(__powerpc__) # define systemd_NR_{syscall} {nr_powerpc} -# elif defined(__riscv) && defined(__LP64__) -# define systemd_NR_{syscall} {nr_riscv64} +# elif defined(__riscv) +# if __riscv_xlen == 32 +# define systemd_NR_{syscall} {nr_riscv32} +# elif __riscv_xlen == 64 +# define systemd_NR_{syscall} {nr_riscv64} +# else +# error "Unknown RISC-V ABI" +# endif # elif defined(__s390__) # define systemd_NR_{syscall} {nr_s390} # elif defined(__sparc__) |