On Mon, Feb 4, 2013 at 1:38 PM, Jakub Jelinek <ja...@redhat.com> wrote: > On Mon, Feb 04, 2013 at 10:22:48AM +0100, Richard Biener wrote: >> > Okay for gcc trunk? >> >> But that does not work across translation units, no? ISTR collect2 has >> support >> to handle constructor priorities all by itself (at link time, >> considering all inputs). > > I wonder why the patch turned from initially at least supporting intra-CU > support for ctor priorities into an ugly hack for asan. I guess asan > doesn't care too much about inter-CU ctor priorities, it just needs its > ctors to run before anything in the same CU is called (mainly the > __asan_init call), other CUs either won't be asan instrumented, then it > doesn't matter, or will be, but they will have their own __asan_init call.
Yes, I was going to ask the same question. Since other compile-time instrumentation tools (like ThreadSanitizer) will benefit from this as well, it's better to provide the intra-CU support by sorting the list of constructors.