__FILE__ and __LINE__ again...

Dicebot public at dicebot.lv
Thu Sep 12 07:04:20 PDT 2013


On Thursday, 12 September 2013 at 13:58:03 UTC, H. S. Teoh wrote:
> Interesting. However, I ran into some runtime segfaults caused 
> by
> --gc-sections yesterday. I didn't investigate further, but that 
> makes me
> hesitant to make --gc-sections the default. Something, 
> somewhere, is
> being broken by --gc-sections. It doesn't happen in all cases, 
> though.
> Only some of my programs are affected by it.
>
> I should investigate this when I get some time.

Actually, nevermind, dmd only does it for small portion of the 
code :) However, I have tested -ffunction-sections + 
-fdata-sections + --gc-sections on gdc and have reduced binary 
size _twice_ for a simple `writeln(arr.map(a => a*2)())` snippet. 
Which is only partially cool because gdc binary is more than 
twice larger than dmd one for same code :D

Problem with --gc-sections is that it can't be used when building 
libraries and any with executable that expose parts of own code 
to shared libraries. It is essentially a whole program 
optimization and it can't be done without compiler support in 
cases where binary is _not_ the whole program.


More information about the Digitalmars-d-learn mailing list