Optlink Contribution
Jonathan Marler via Digitalmars-d
digitalmars-d at puremagic.com
Wed Jul 30 12:50:34 PDT 2014
I like the discussion. I do want to remind everyone that OPTLINK
is very fast and switching to a different linker will likely
result performance hit. There are advantages to using COFF as it
seems more compilers use that format and D would be more
interoperable with other compilers and languages. I think every
peice of software has it's own goals which determine what
tradeoffs to chose. In my view, the linker should 1) always work
and 2) be as fast as possible. OPTLINK passes number 2 with
flying colors but is does have bugs. This is obviously due to
the fact that it is written in assembly but keep in mind that the
performance of the linker affects everyone who uses D. Any
performance hit on the linker will be seen in every single build
of any D program. Adding 1 second to link time will add 1 second
to build time since this process cannot be parallelized (as far
as I know).
That being said, if it were up to me I wouldn't abandon OPTLINK
so quickly. I would spend time creating a test suite for
OPTLINK, and try to comment the code a little better to encourage
other developers to contribute. Then I would consider adding
support in DMD to generate COFF output files for those who want
to link D object files with another linker. I wouldn't make this
a huge priority though as one can use an OMF to COFF converter if
they really needed it.
More information about the Digitalmars-d
mailing list