summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSzabolcs Nagy <szabolcs.nagy@arm.com>2022-10-18 15:10:03 +0100
committerSzabolcs Nagy <szabolcs.nagy@arm.com>2022-11-22 14:31:25 +0000
commitcf6c44c38c77832c59a04c49dc8e031eb1e220a9 (patch)
treed307bd5ee0e17eee7adffaa8fe34da6b74cb4b71
parent3715670ec0528cb113c97240cd96a8638bc723ad (diff)
downloadglibc-cf6c44c38c77832c59a04c49dc8e031eb1e220a9.tar.gz
cheri: Update the static tls requirement of the libc
Larger requirement because pointers are bigger.
-rw-r--r--elf/dl-tls.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/elf/dl-tls.c b/elf/dl-tls.c
index 093cdddb7e..1b90bf17b3 100644
--- a/elf/dl-tls.c
+++ b/elf/dl-tls.c
@@ -62,7 +62,11 @@
observed PT_GNU_TLS sizes across all architectures. Some
architectures have lower values due to differences in type sizes
and link editor capabilities. */
+#ifdef __CHERI_PURE_CAPABILITY__
+#define LIBC_IE_TLS 256
+#else
#define LIBC_IE_TLS 144
+#endif
/* Size of initial-exec TLS in libraries other than libc.so.
This should be large enough to cover runtime libraries of the
@@ -87,7 +91,11 @@ tls_static_surplus (int nns, int opt_tls)
the computation of dl_tls_static_surplus in
_dl_tls_static_surplus_init yields the historic value 1664, for
backwards compatibility. */
+#ifdef __CHERI_PURE_CAPABILITY__
+#define LEGACY_TLS 0
+#else
#define LEGACY_TLS (1664 - tls_static_surplus (DEFAULT_NNS, OPTIONAL_TLS))
+#endif
/* Calculate the size of the static TLS surplus, when the given
number of audit modules are loaded. Must be called after the