aboutsummaryrefslogtreecommitdiff
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-10-27 14:46:54 +0100
commit3dcebd639847f641679ae301554d6ad74578ff4e (patch)
treee04f227a3624519fac41e1e31ab3d1670bcd8460
parent63aa755b4064a0cbd1598b53cb8c82ecb8ea4e2d (diff)
downloadglibc-3dcebd639847f641679ae301554d6ad74578ff4e.zip
glibc-3dcebd639847f641679ae301554d6ad74578ff4e.tar.gz
glibc-3dcebd639847f641679ae301554d6ad74578ff4e.tar.bz2
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 093cddd..1b90bf1 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