Changeset 6adb775f in mainline for uspace/lib/c/generic/elf/elf_mod.c
- 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
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/c/generic/elf/elf_mod.c
rdc0d8b52 r6adb775f 248 248 } 249 249 250 /** Process TLS program header. 251 * 252 * @param elf Pointer to loader state buffer. 253 * @param hdr TLS program header 254 * @param info Place to store TLS info 255 */ 256 static void tls_program_header(elf_ld_t *elf, elf_segment_header_t *hdr, 257 elf_tls_info_t *info) 258 { 259 info->tdata = (void *)((uint8_t *)hdr->p_vaddr + elf->bias); 260 info->tdata_size = hdr->p_filesz; 261 info->tbss_size = hdr->p_memsz - hdr->p_filesz; 262 } 263 250 264 /** Process segment header. 251 265 * 266 * @param elf Pointer to loader state buffer. 252 267 * @param entry Segment header. 253 268 * … … 277 292 case 0x70000000: 278 293 /* FIXME: MIPS reginfo */ 294 break; 295 case PT_TLS: 296 /* Parse TLS program header */ 297 tls_program_header(elf, entry, &elf->info->tls); 298 DPRINTF("TLS header found at %p\n", 299 (void *)((uint8_t *)entry->p_vaddr + elf->bias)); 279 300 break; 280 301 case PT_SHLIB:
Note:
See TracChangeset
for help on using the changeset viewer.