HelenOS sources

tcb_t              48 uspace/lib/c/arch/abs32le/include/libarch/fibril.h 		(ctx)->tls = ((uintptr_t) (ptls)) + sizeof(tcb_t); \
tcb_t              36 uspace/lib/c/arch/abs32le/src/tls.c tcb_t *tls_alloc_arch(size_t size, size_t align)
tcb_t              41 uspace/lib/c/arch/abs32le/src/tls.c void tls_free_arch(tcb_t *tcb, size_t size, size_t align)
tcb_t              44 uspace/lib/c/arch/amd64/src/tls.c tcb_t *tls_alloc_arch(size_t size, size_t align)
tcb_t              49 uspace/lib/c/arch/amd64/src/tls.c void tls_free_arch(tcb_t *tcb, size_t size, size_t align)
tcb_t              44 uspace/lib/c/arch/arm32/include/libarch/tls.h #define ARCH_TP_OFFSET  (sizeof(tcb_t) - 8)
tcb_t              45 uspace/lib/c/arch/arm32/src/tls.c tcb_t *tls_alloc_arch(size_t size, size_t align)
tcb_t              50 uspace/lib/c/arch/arm32/src/tls.c void tls_free_arch(tcb_t *tcb, size_t size, size_t align)
tcb_t              42 uspace/lib/c/arch/arm64/include/libarch/tls.h #define ARCH_TP_OFFSET  (sizeof(tcb_t) - 16)
tcb_t              38 uspace/lib/c/arch/arm64/src/tls.c tcb_t *tls_alloc_arch(size_t size, size_t align)
tcb_t              43 uspace/lib/c/arch/arm64/src/tls.c void tls_free_arch(tcb_t *tcb, size_t size, size_t align)
tcb_t              47 uspace/lib/c/arch/ia32/src/tls.c tcb_t *tls_alloc_arch(size_t size, size_t align)
tcb_t              52 uspace/lib/c/arch/ia32/src/tls.c void tls_free_arch(tcb_t *tcb, size_t size, size_t align)
tcb_t              44 uspace/lib/c/arch/ia64/src/tls.c tcb_t *tls_alloc_arch(size_t size, size_t align)
tcb_t              49 uspace/lib/c/arch/ia64/src/tls.c void tls_free_arch(tcb_t *tcb, size_t size, size_t align)
tcb_t              56 uspace/lib/c/arch/mips32/include/libarch/fibril.h 		(c)->tls = ((sysarg_t)(ptls)) + 0x7000 + sizeof(tcb_t); \
tcb_t              63 uspace/lib/c/arch/mips32/include/libarch/tls.h #define ARCH_TP_OFFSET (0x7000 + sizeof(tcb_t))
tcb_t              39 uspace/lib/c/arch/mips32/src/tls.c tcb_t *tls_alloc_arch(size_t size, size_t align)
tcb_t              44 uspace/lib/c/arch/mips32/src/tls.c void tls_free_arch(tcb_t *tcb, size_t size, size_t align)
tcb_t              53 uspace/lib/c/arch/ppc32/include/libarch/fibril.h 		(c)->tls = ((sysarg_t) (ptls)) + 0x7000 + sizeof(tcb_t); \
tcb_t              42 uspace/lib/c/arch/ppc32/include/libarch/tls.h #define ARCH_TP_OFFSET (0x7000 + sizeof(tcb_t))
tcb_t              43 uspace/lib/c/arch/ppc32/src/tls.c tcb_t *tls_alloc_arch(size_t size, size_t align)
tcb_t              48 uspace/lib/c/arch/ppc32/src/tls.c void tls_free_arch(tcb_t *tcb, size_t size, size_t align)
tcb_t              47 uspace/lib/c/arch/riscv64/include/libarch/fibril.h 		(ctx)->x4 = ((uintptr_t) (ptls)) + sizeof(tcb_t); \
tcb_t              35 uspace/lib/c/arch/riscv64/src/tls.c tcb_t *tls_alloc_arch(size_t size, size_t align)
tcb_t              40 uspace/lib/c/arch/riscv64/src/tls.c void tls_free_arch(tcb_t *tcb, size_t size, size_t align)
tcb_t              44 uspace/lib/c/arch/sparc64/src/tls.c tcb_t *tls_alloc_arch(size_t size, size_t align)
tcb_t              49 uspace/lib/c/arch/sparc64/src/tls.c void tls_free_arch(tcb_t *tcb, size_t size, size_t align)
tcb_t              56 uspace/lib/c/generic/private/fibril.h 	tcb_t *tcb;
tcb_t             367 uspace/lib/c/generic/rtld/module.c 	rtld->tls_size = sizeof(tcb_t);
tcb_t             368 uspace/lib/c/generic/rtld/module.c 	rtld->tls_align = alignof(tcb_t);
tcb_t             381 uspace/lib/c/generic/rtld/module.c 	rtld->tls_align = alignof(tcb_t);
tcb_t             406 uspace/lib/c/generic/rtld/module.c 	rtld->tls_size += sizeof(tcb_t);
tcb_t             151 uspace/lib/c/generic/rtld/rtld.c tcb_t *rtld_tls_make(rtld_t *rtld)
tcb_t             153 uspace/lib/c/generic/rtld/rtld.c 	tcb_t *tcb;
tcb_t             213 uspace/lib/c/generic/rtld/rtld.c void *rtld_tls_get_addr(rtld_t *rtld, tcb_t *tcb, unsigned long mod_id,
tcb_t             275 uspace/lib/c/generic/rtld/symbol.c void *symbol_get_addr(elf_symbol_t *sym, module_t *m, tcb_t *tcb)
tcb_t             164 uspace/lib/c/generic/thread/fibril.c 	tcb_t *tcb = tls_make(__progsymbols.elfstart);
tcb_t             754 uspace/lib/c/generic/thread/fibril.c 	tcb_t *tcb = __tcb_get();
tcb_t              69 uspace/lib/c/generic/thread/tls.c 	return ALIGN_UP((ptrdiff_t) sizeof(tcb_t), tls_align);
tcb_t              72 uspace/lib/c/generic/thread/tls.c 	return -ALIGN_UP((ptrdiff_t) tls_size, max(tls_align, alignof(tcb_t)));
tcb_t              85 uspace/lib/c/generic/thread/tls.c static tcb_t *tls_make_generic(const void *elf, void *(*alloc)(size_t, size_t))
tcb_t             104 uspace/lib/c/generic/thread/tls.c 	    ALIGN_UP(sizeof(tcb_t), tls_align) + tls_size;
tcb_t             107 uspace/lib/c/generic/thread/tls.c 	    ALIGN_UP(tls_size, max(tls_align, alignof(tcb_t))) + sizeof(tcb_t);
tcb_t             110 uspace/lib/c/generic/thread/tls.c 	void *area = alloc(max(tls_align, alignof(tcb_t)), alloc_size);
tcb_t             115 uspace/lib/c/generic/thread/tls.c 	tcb_t *tcb = area;
tcb_t             120 uspace/lib/c/generic/thread/tls.c 	tcb_t *tcb = (tcb_t *) (data - _tcb_data_offset());
tcb_t             121 uspace/lib/c/generic/thread/tls.c 	memset(tcb, 0, sizeof(tcb_t));
tcb_t             153 uspace/lib/c/generic/thread/tls.c tcb_t *tls_make_initial(const void *elf)
tcb_t             162 uspace/lib/c/generic/thread/tls.c tcb_t *tls_make(const void *elf)
tcb_t             174 uspace/lib/c/generic/thread/tls.c void tls_free(tcb_t *tcb)
tcb_t             189 uspace/lib/c/generic/thread/tls.c 	    ALIGN_UP(tls->p_memsz, tls->p_align) + sizeof(tcb_t),
tcb_t             190 uspace/lib/c/generic/thread/tls.c 	    max(tls->p_align, alignof(tcb_t)));
tcb_t             200 uspace/lib/c/generic/thread/tls.c tcb_t *tls_alloc_variant_1(size_t size, size_t align)
tcb_t             202 uspace/lib/c/generic/thread/tls.c 	tcb_t *tcb = memalign(align, size);
tcb_t             205 uspace/lib/c/generic/thread/tls.c 	memset(tcb, 0, sizeof(tcb_t));
tcb_t             214 uspace/lib/c/generic/thread/tls.c void tls_free_variant_1(tcb_t *tcb, size_t size, size_t align)
tcb_t             229 uspace/lib/c/generic/thread/tls.c tcb_t *tls_alloc_variant_2(size_t size, size_t align)
tcb_t             235 uspace/lib/c/generic/thread/tls.c 	tcb_t *tcb = (tcb_t *) (data + size - sizeof(tcb_t));
tcb_t             236 uspace/lib/c/generic/thread/tls.c 	memset(tcb, 0, sizeof(tcb_t));
tcb_t             247 uspace/lib/c/generic/thread/tls.c void tls_free_variant_2(tcb_t *tcb, size_t size, size_t align)
tcb_t             250 uspace/lib/c/generic/thread/tls.c 		void *start = ((void *) tcb) + sizeof(tcb_t) - size;
tcb_t              81 uspace/lib/c/include/loader/pcb.h 	tcb_t *tcb;
tcb_t              49 uspace/lib/c/include/rtld/rtld.h extern tcb_t *rtld_tls_make(rtld_t *);
tcb_t              51 uspace/lib/c/include/rtld/rtld.h extern void *rtld_tls_get_addr(rtld_t *, tcb_t *, unsigned long, unsigned long);
tcb_t              53 uspace/lib/c/include/rtld/symbol.h extern void *symbol_get_addr(elf_symbol_t *, module_t *, tcb_t *);
tcb_t              48 uspace/lib/c/include/tls.h static inline void __tcb_set(tcb_t *tcb)
tcb_t              53 uspace/lib/c/include/tls.h static inline tcb_t *__tcb_get(void)
tcb_t              55 uspace/lib/c/include/tls.h 	return (tcb_t *)((uint8_t *)__tcb_raw_get() - ARCH_TP_OFFSET);
tcb_t              70 uspace/lib/c/include/tls.h extern tcb_t *tls_make(const void *);
tcb_t              71 uspace/lib/c/include/tls.h extern tcb_t *tls_make_initial(const void *);
tcb_t              72 uspace/lib/c/include/tls.h extern tcb_t *tls_alloc_arch(size_t, size_t);
tcb_t              73 uspace/lib/c/include/tls.h extern void tls_free(tcb_t *);
tcb_t              74 uspace/lib/c/include/tls.h extern void tls_free_arch(tcb_t *, size_t, size_t);
tcb_t              78 uspace/lib/c/include/tls.h extern tcb_t *tls_alloc_variant_1(size_t, size_t);
tcb_t              79 uspace/lib/c/include/tls.h extern void tls_free_variant_1(tcb_t *, size_t, size_t);
tcb_t              83 uspace/lib/c/include/tls.h extern tcb_t *tls_alloc_variant_2(size_t, size_t);
tcb_t              84 uspace/lib/c/include/tls.h extern void tls_free_variant_2(tcb_t *, size_t, size_t);
tcb_t              81 uspace/lib/posix/include/libc/loader/pcb.h 	tcb_t *tcb;
tcb_t              49 uspace/lib/posix/include/libc/rtld/rtld.h extern tcb_t *rtld_tls_make(rtld_t *);
tcb_t              51 uspace/lib/posix/include/libc/rtld/rtld.h extern void *rtld_tls_get_addr(rtld_t *, tcb_t *, unsigned long, unsigned long);
tcb_t              53 uspace/lib/posix/include/libc/rtld/symbol.h extern void *symbol_get_addr(elf_symbol_t *, module_t *, tcb_t *);
tcb_t              48 uspace/lib/posix/include/libc/tls.h static inline void __tcb_set(tcb_t *tcb)
tcb_t              53 uspace/lib/posix/include/libc/tls.h static inline tcb_t *__tcb_get(void)
tcb_t              55 uspace/lib/posix/include/libc/tls.h 	return (tcb_t *)((uint8_t *)__tcb_raw_get() - ARCH_TP_OFFSET);
tcb_t              70 uspace/lib/posix/include/libc/tls.h extern tcb_t *tls_make(const void *);
tcb_t              71 uspace/lib/posix/include/libc/tls.h extern tcb_t *tls_make_initial(const void *);
tcb_t              72 uspace/lib/posix/include/libc/tls.h extern tcb_t *tls_alloc_arch(size_t, size_t);
tcb_t              73 uspace/lib/posix/include/libc/tls.h extern void tls_free(tcb_t *);
tcb_t              74 uspace/lib/posix/include/libc/tls.h extern void tls_free_arch(tcb_t *, size_t, size_t);
tcb_t              78 uspace/lib/posix/include/libc/tls.h extern tcb_t *tls_alloc_variant_1(size_t, size_t);
tcb_t              79 uspace/lib/posix/include/libc/tls.h extern void tls_free_variant_1(tcb_t *, size_t, size_t);
tcb_t              83 uspace/lib/posix/include/libc/tls.h extern tcb_t *tls_alloc_variant_2(size_t, size_t);
tcb_t              84 uspace/lib/posix/include/libc/tls.h extern void tls_free_variant_2(tcb_t *, size_t, size_t);
HelenOS homepage, sources at GitHub