aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/unix/sysv/linux/riscv
diff options
context:
space:
mode:
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>2021-11-19 11:06:00 -0300
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>2021-11-22 13:43:22 -0300
commitbc801b3a40f3a9bc8f24f1d0fdc39413874c3172 (patch)
tree51db36755fec65ea7aa958bfd2799f3136033c89 /sysdeps/unix/sysv/linux/riscv
parent5c3ece451d46a7d8721311609bfcb6faafacb39e (diff)
downloadglibc-bc801b3a40f3a9bc8f24f1d0fdc39413874c3172.zip
glibc-bc801b3a40f3a9bc8f24f1d0fdc39413874c3172.tar.gz
glibc-bc801b3a40f3a9bc8f24f1d0fdc39413874c3172.tar.bz2
setjmp: Replace jmp_buf-macros.h with jmp_buf-macros.sym
It requires less boilerplate code for newer ports. The _Static_assert checks from internal setjmp are moved to its own internal test since setjmp.h is included early by multiple headers (to generate rtld-sizes.sym). The riscv jmp_buf-macros.h check is also redundant, it is already done by riscv configure.ac. Checked with a build for the affected architectures.
Diffstat (limited to 'sysdeps/unix/sysv/linux/riscv')
-rw-r--r--sysdeps/unix/sysv/linux/riscv/jmp_buf-macros.h55
-rw-r--r--sysdeps/unix/sysv/linux/riscv/rv64/jmp_buf-macros.h53
2 files changed, 0 insertions, 108 deletions
diff --git a/sysdeps/unix/sysv/linux/riscv/jmp_buf-macros.h b/sysdeps/unix/sysv/linux/riscv/jmp_buf-macros.h
deleted file mode 100644
index 46e723b..0000000
--- a/sysdeps/unix/sysv/linux/riscv/jmp_buf-macros.h
+++ /dev/null
@@ -1,55 +0,0 @@
-/* The jump buffer constants for RISC-V.
- Copyright (C) 2020-2021 Free Software Foundation, Inc.
-
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library. If not, see
- <https://www.gnu.org/licenses/>. */
-
-/* Produced by this program:
-
- #include <stdio.h>
- #include <unistd.h>
- #include <setjmp.h>
- #include <stddef.h>
-
- int main (int argc, char **argv)
- {
- printf ("#define JMP_BUF_SIZE %d\n", sizeof (jmp_buf));
- printf ("#define JMP_BUF_ALIGN %d\n", __alignof__ (jmp_buf));
- printf ("#define SIGJMP_BUF_SIZE %d\n", sizeof (sigjmp_buf));
- printf ("#define SIGJMP_BUF_ALIGN %d\n", __alignof__ (sigjmp_buf));
- printf ("#define MASK_WAS_SAVED_OFFSET %d\n",
- offsetof (struct __jmp_buf_tag, __mask_was_saved));
- printf ("#define SAVED_MASK_OFFSET %d\n",
- offsetof (struct __jmp_buf_tag, __saved_mask));
- } */
-
-#if defined __riscv_float_abi_soft
-# define JMP_BUF_SIZE 188
-# define JMP_BUF_ALIGN 4
-# define SIGJMP_BUF_SIZE 188
-# define SIGJMP_BUF_ALIGN 4
-# define MASK_WAS_SAVED_OFFSET 56
-# define SAVED_MASK_OFFSET 60
-#elif defined __riscv_float_abi_double
-# define JMP_BUF_SIZE 288
-# define JMP_BUF_ALIGN 8
-# define SIGJMP_BUF_SIZE 288
-# define SIGJMP_BUF_ALIGN 8
-# define MASK_WAS_SAVED_OFFSET 152
-# define SAVED_MASK_OFFSET 156
-#else
-# error "Unknown RISC-V floating-point ABI"
-#endif
diff --git a/sysdeps/unix/sysv/linux/riscv/rv64/jmp_buf-macros.h b/sysdeps/unix/sysv/linux/riscv/rv64/jmp_buf-macros.h
deleted file mode 100644
index be9199e..0000000
--- a/sysdeps/unix/sysv/linux/riscv/rv64/jmp_buf-macros.h
+++ /dev/null
@@ -1,53 +0,0 @@
-/* jump buffer constants for RISC-V
- Copyright (C) 2017-2021 Free Software Foundation, Inc.
-
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library. If not, see
- <https://www.gnu.org/licenses/>. */
-
-/* Produced by this program:
-
- #include <stdio.h>
- #include <unistd.h>
- #include <setjmp.h>
- #include <stddef.h>
-
- int main (int argc, char **argv)
- {
- printf ("#define JMP_BUF_SIZE %d\n", sizeof (jmp_buf));
- printf ("#define JMP_BUF_ALIGN %d\n", __alignof__ (jmp_buf));
- printf ("#define SIGJMP_BUF_SIZE %d\n", sizeof (sigjmp_buf));
- printf ("#define SIGJMP_BUF_ALIGN %d\n", __alignof__ (sigjmp_buf));
- printf ("#define MASK_WAS_SAVED_OFFSET %d\n", offsetof (struct __jmp_buf_tag, __mask_was_saved));
- printf ("#define SAVED_MASK_OFFSET %d\n", offsetof (struct __jmp_buf_tag, __saved_mask));
- } */
-
-#if defined __riscv_float_abi_soft
-# define JMP_BUF_SIZE 248
-# define JMP_BUF_ALIGN 8
-# define SIGJMP_BUF_SIZE 248
-# define SIGJMP_BUF_ALIGN 8
-# define MASK_WAS_SAVED_OFFSET 112
-# define SAVED_MASK_OFFSET 120
-#elif defined __riscv_float_abi_double
-# define JMP_BUF_SIZE 344
-# define JMP_BUF_ALIGN 8
-# define SIGJMP_BUF_SIZE 344
-# define SIGJMP_BUF_ALIGN 8
-# define MASK_WAS_SAVED_OFFSET 208
-# define SAVED_MASK_OFFSET 216
-#else
-# error "Unknown RISC-V floating-point ABI"
-#endif