Excerpts from Rainer Orth's message of September 7, 2022 2:40 pm:
> Hi Iain,
> 
>>> Yes, this is data related. The DSO registry picks up nothing in the
>>> miscompiled stage2 compiler, leaving all data uninitialized.  The stage1
>>> compiler works, and runs all module constructors ahead of compilation.
>>> 
>>
>> Ohh, backtrack on that, analysis is correct, but it is a compiler regression.
>>
>> The TARGET_D_MINFO_SECTION macros are in elfos.h, which of course no
>> longer get pulled in to sol2-d.cc after I removed the tm.h include.
>>
>> Re-adding these two ought to fix the bootstrap for you.
>>
>>     #include "tm.h"
>>     #include "memmodel.h"
> 
> it does indeed: with that patch, i386-pc-solaris2.11 and
> sparc-sun-solaris2.11 bootstraps completed successfully and test results
> are back to normal.
> 
> Thanks a lot.
> 

I'm just running through various target configurations with memmodel.h
removed, I know it was used to be required for one of the targets
(probably SPARC), though that may have been because of the previously
included tm_p.h header.

Will have a think about a likely follow-up though.

Firstly fixing the outstanding issues with
https://gcc.gnu.org/pipermail/gcc-patches/2022-July/598078.html

Secondly possibly using a different method to coax out the object format
to the D target hooks, or front-end.

Iain.

Reply via email to