This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: thread-local storage: c front end and generic backend patch
Richard Henderson <rth@redhat.com> writes:
[...]
| > There's no definition of "thread" in the standard, so saying that
| > these variables have the lifetime of "the thread" is probably
| > insufficient. "Prior to thread startup" is also a bit unclear; we
| > don't know how to start a thread or what it means for it to be
| > started.
|
| This is intentionally vague. Why would we mention pthread_create
| here when the run-time might actually use some other thread library?
Being more specifc about the semantics is really needed for proving
and/or maintaining the invariant that a change to compiler (be it an
advanced optimization or implementation of standard features) does not
break the semantics of that extension. In shrot, we need to know what
it is supposed to mean in order to prove that some change is correct.
I think the issue is important so that we don't gloss over it.
-- Gaby