Compiler: Size of generated executable file

Walter Bright newshound1 at digitalmars.com
Mon Jan 11 17:59:46 PST 2010


retard wrote:
> Just looking at the executable size (when compiled with dmc, the latter 
> program is 30 kB and the first one is ~40 kB) makes it pretty clear that 
> dmc/optlink does not optimize this.

Yes, it does, if you use the -Nc (function level linking) switch when 
compiling. dmd puts functions in COMDATs by default. Some older C 
programs require that the layout of functions in memory match their 
appearance in the source file, hence dmc doesn't do that by default.

http://www.digitalmars.com/ctg/sc.html#dashCapNc


> Unfortunately I'm 
> not buying a windows / full dmc license to be able to objdump the 
> executable so it's a bit hard to see what's inside it.

You can get OBJ2ASM for $15 as part of the Extended Utility Package. I 
think it's worth every penny!

http://www.digitalmars.com/shop.html



More information about the Digitalmars-d mailing list