SPRAB89A September 2011 – March 2014
The thread library must initialize the TLS blocks once it creates them for a given thread. The static executable TLS model defines a new RTS function for this:
__TI_tls_init(void * dest_addr);
The thread library must pass the address of the TLS block to be initialized to this function.
This RTS function uses the copy table to perform the initialization. However, how this function initializes the TLS block is based on the interface between the static linker and this RTS function, which is subject to future changes. Therefore, the thread library must use only this RTS function as the interface to initialize TLS blocks.