Go to the source code of this file.
Typedefs | |
typedef struct mach_header_64 | macho_header |
typedef struct segment_command_64 | macho_segment_command |
typedef struct section_64 | macho_section |
typedef struct nlist_64 | macho_nlist |
Functions | |
void * | getTLS () |
void | setTLS (void *) |
void * | swapTLS (void *) |
static void | CmiTLSStatsInit (void) |
static int | count_tls_sizes (struct dl_phdr_info *info, size_t size, void *data) |
static void | populateTLSSegStats (tlsseg_t *t) |
static size_t | GetTLVSizeFromMachOHeader () |
static Addr | getCodeSegAddr () |
static Ehdr * | getELFHeader () |
static Phdr * | getProgramHeader (Ehdr *ehdr) |
Phdr * | getTLSPhdrEntry () |
void | CmiTLSInit () |
void | allocNewTLSSeg (tlsseg_t *t, CthThread th) |
void | switchTLS (tlsseg_t *cur, tlsseg_t *next) |
void | currentTLS (tlsseg_t *cur) |
Variables | |
int | quietModeRequested |
static size_t | CmiTLSSize |
static void * | CmiTLSExecutableStart |
typedef struct mach_header macho_header [read] |
typedef struct segment_command macho_segment_command [read] |
typedef struct section macho_section [read] |
typedef struct nlist macho_nlist [read] |
void * getTLS | ( | ) |
Definition at line 60 of file cmitls.C.
Referenced by allocNewTLSSeg(), currentTLS(), and swapTLS().
void setTLS | ( | void * | newptr | ) |
void * swapTLS | ( | void * | newptr | ) |
Definition at line 81 of file cmitls.C.
References getTLS(), and setTLS().
Referenced by switchTLS().
static void CmiTLSStatsInit | ( | void | ) | [inline, static] |
Definition at line 95 of file cmitls.C.
Referenced by CmiTLSInit().
Definition at line 99 of file cmitls.C.
References tlsseg::align, tlsseg::size, and PUP::t.
Referenced by populateTLSSegStats().
static void populateTLSSegStats | ( | tlsseg_t * | t | ) | [static] |
Definition at line 118 of file cmitls.C.
References tlsseg::align, count_tls_sizes(), and tlsseg::size.
Referenced by allocNewTLSSeg().
static size_t GetTLVSizeFromMachOHeader | ( | ) | [static] |
static Addr getCodeSegAddr | ( | ) | [inline, static] |
Definition at line 273 of file cmitls.C.
References CmiTLSExecutableStart.
Referenced by getELFHeader().
static Ehdr* getELFHeader | ( | ) | [inline, static] |
Definition at line 278 of file cmitls.C.
References getCodeSegAddr().
Referenced by getTLSPhdrEntry().
Definition at line 283 of file cmitls.C.
Referenced by getTLSPhdrEntry().
Phdr* getTLSPhdrEntry | ( | ) |
Definition at line 288 of file cmitls.C.
References getELFHeader(), and getProgramHeader().
void CmiTLSInit | ( | void | ) |
Definition at line 360 of file cmitls.C.
References CmiAbort(), CmiMyPe(), CmiMyRank(), CmiPrintf(), CmiTLSStatsInit(), and quietModeRequested.
Referenced by CthBaseInit().
Definition at line 380 of file cmitls.C.
References tlsseg::align, CmiIsomallocMallocAlignForThread(), getTLS(), tlsseg::memseg, populateTLSSegStats(), and tlsseg::size.
Referenced by CthCreateInner().
Definition at line 399 of file cmitls.C.
References tlsseg::memseg, and swapTLS().
Referenced by CmiDisableTLS(), CmiEnableTLS(), CtgInstallCthTLS(), CtgInstallMainThreadTLS(), and CtgInstallTLS().
void currentTLS | ( | tlsseg_t * | cur | ) |
Definition at line 404 of file cmitls.C.
References getTLS(), and tlsseg::memseg.
Referenced by CthBaseInit().
size_t CmiTLSSize [static] |
void* CmiTLSExecutableStart [static] |