SPRAB89A September 2011 – March 2014
The static executable TLS model can be supported by a C6x EABI conforming compiler as a Quality of Implementation (QoI) item. It is not required for C6x EABI compliance.
In the case of a static executable, there is only
one TLS block, and the TLS offset of each thread-local variable is known at static
link time. The access to thread-local variables is *(TLS base +
offset)
.
Figure 7-2 shows the run-time layout of the TLS. TP is the thread pointer that points to the current thread’s TLS block. The offset of x is known during static linking.