November 26, 2009
Thu, 26 Nov 2009 12:02:59 -0800, Walter Bright wrote:

> Sergey Gromov wrote:
>> Actually, I'm slowly working on a D linker myself.  Writing it in D, from scratch.  My goal is to allow linking a mix of OMF and COFF objects and libraries into the same executable, obviating the need for any conversion.  I wonder if it's feasible to continue my work.  I'm just a couple baby steps beyond the rough design stage.
>> 
>> Well, probably I'll continue anyway, as long as I've got the courage.  I like to re-invent wheels after all.
> 
> Building a linker itself is probably not too useful, given that it'll be hard to compete with optlink. What would be cool, though, is a linker that is able to do more advanced things - like organizing the code to minimize page loading, eliminating functions that are identical except for the name, etc.

It's definitely possible to compete with optlink in maintainability and extensibility.  :)  As to the optimizations, we'll see if I can pull it off.
November 27, 2009
Sergey Gromov wrote:
> Tue, 03 Nov 2009 10:39:13 -0800, Walter Bright wrote:
> 
>> Optlink is written entirely in rather impenetrable assembler code, and is resistant to understanding and modification. Hence, over the last few months I've been very slowly converting it to C, function by function.
>>
>> [...]
>>
>> Once it is in C and working, it will be trivial to translate it to D and start rewriting it.
>>
>> Anyhow, during this process I stumbled upon what the problem was. 
> 
> That's definitely good news!
> 
> Actually, I'm slowly working on a D linker myself.  Writing it in D,
> from scratch.  My goal is to allow linking a mix of OMF and COFF objects
> and libraries into the same executable, obviating the need for any
> conversion.  I wonder if it's feasible to continue my work.  I'm just a
> couple baby steps beyond the rough design stage.
> 
> Well, probably I'll continue anyway, as long as I've got the courage.  I
> like to re-invent wheels after all.

I hope you're making use of pragma's DDL code. He did so much work in making sense of the object file formats.
November 27, 2009
Fri, 27 Nov 2009 01:10:36 +0100, Don wrote:

> Sergey Gromov wrote:
>> Actually, I'm slowly working on a D linker myself.
> 
> I hope you're making use of pragma's DDL code. He did so much work in making sense of the object file formats.

Good thing you told me.  I'll definitely try to reuse as much of DDL code as possible.  Thanks for the pointer.
November 27, 2009
Walter Bright:
> What would be cool, though, is a linker that is able to do more advanced things -

This may be useful as guide (not used by LDC yet):
http://llvm.org/docs/GoldPlugin.html

Bye,
bearophile
1 2 3 4
Next ›   Last »