Changeset 6adb775f in mainline for uspace/lib/c/include
- Timestamp:
- 2016-04-25T16:46:31Z (9 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 32573ff
- Parents:
- dc0d8b52
- Location:
- uspace/lib/c/include
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/c/include/elf/elf_mod.h
rdc0d8b52 r6adb775f 58 58 } eld_flags_t; 59 59 60 /** TLS info for a module */ 61 typedef struct { 62 /** tdata section image */ 63 void *tdata; 64 /** Size of tdata section image in bytes */ 65 size_t tdata_size; 66 /** Size of tbss section */ 67 size_t tbss_size; 68 } elf_tls_info_t; 69 60 70 /** 61 71 * Some data extracted from the headers are stored here … … 70 80 /** Pointer to the dynamic section */ 71 81 void *dynamic; 82 83 /** TLS info */ 84 elf_tls_info_t tls; 72 85 } elf_finfo_t; 73 86 -
uspace/lib/c/include/rtld/module.h
rdc0d8b52 r6adb775f 46 46 extern module_t *module_load(rtld_t *, const char *); 47 47 extern void module_load_deps(module_t *); 48 extern module_t *module_by_id(rtld_t *, unsigned long); 48 49 49 50 extern void modules_process_relocs(rtld_t *, module_t *); 51 extern void modules_process_tls(rtld_t *); 50 52 extern void modules_untag(rtld_t *); 51 53 -
uspace/lib/c/include/rtld/rtld.h
rdc0d8b52 r6adb775f 41 41 42 42 #include <rtld/dynamic.h> 43 #include <tls.h> 43 44 #include <types/rtld/rtld.h> 44 45 … … 47 48 extern void rtld_init_static(void); 48 49 extern int rtld_prog_process(elf_finfo_t *, rtld_t **); 50 extern tcb_t *rtld_tls_make(rtld_t *); 51 extern unsigned long rtld_get_next_id(rtld_t *); 52 extern void *rtld_tls_get_addr(rtld_t *, void *, unsigned long, unsigned long); 49 53 50 54 #endif -
uspace/lib/c/include/tls.h
rdc0d8b52 r6adb775f 52 52 extern void tls_free(tcb_t *); 53 53 extern void tls_free_arch(tcb_t *, size_t); 54 extern size_t tls_get_size(void); 54 55 55 56 #ifdef CONFIG_TLS_VARIANT_1 -
uspace/lib/c/include/types/rtld/module.h
rdc0d8b52 r6adb775f 40 40 41 41 typedef struct module { 42 /** Module ID */ 43 unsigned long id; 44 /** Dynamic info for this module */ 42 45 dyn_info_t dyn; 46 /** Load bias */ 43 47 size_t bias; 48 49 /** tdata image start */ 50 void *tdata; 51 /** tdata image size */ 52 size_t tdata_size; 53 /** tbss size */ 54 size_t tbss_size; 55 56 size_t ioffs; 44 57 45 58 /** Containing rtld */ -
uspace/lib/c/include/types/rtld/rtld.h
rdc0d8b52 r6adb775f 48 48 module_t *program; 49 49 50 /** Next module ID */ 51 unsigned long next_id; 52 53 /** Size of initial TLS tdata + tbss */ 54 size_t tls_size; 55 50 56 /** List of all loaded modules including rtld and the program */ 51 57 list_t modules;
Note:
See TracChangeset
for help on using the changeset viewer.