[llvm-dev] lld-link with MSVC6 object files

Paul Moran via llvm-dev llvm-dev at lists.llvm.org
Mon Sep 30 14:18:50 PDT 2019


It sounds like perhaps it might mostly work with some tweaks - given its
complaining about bad file magic. I'll see if I can get lld-link to build
locally and hack out the magic checks to see if it works.

On Mon, Sep 30, 2019 at 10:14 PM David Blaikie <dblaikie at gmail.com> wrote:

>
>
> On Mon, Sep 30, 2019 at 2:07 PM Paul Moran <bankybooks at gmail.com> wrote:
>
>> MSVC 6 is 1998 not 1989 :)
>>
>
> Ah, I just glanced briefly at the Wikipedia article (
> https://en.wikipedia.org/wiki/Microsoft_Visual_C%2B%2B ) & misread the "C
> 6.0" and didn't notice it was distinct from "Visual C++ 6.0" - thanks for
> the catch!
>
>
>>
>> The latest MSVC linker can link these object files. Is this just because
>> it has support for C13 types and some other code path for whatever MSVC6
>> uses? After some digging around it appears to be this format:
>>
>>
>> https://docs.microsoft.com/en-us/windows/win32/debug/pe-format#coff-file-header-object-and-image
>>
>>
>> Which is COFF object file format? Does lld link support this format?
>>
>
> COFF is still the windows object file format, and the Windows support in
> lld is COFF support, yeah. I guess there might be some format variations
> that haven't been implemented in lld, though. It's mostly an "on demand"
> sort of approach.
>
>
>>
>>
>> On Mon, Sep 30, 2019 at 7:39 PM Alexandre Ganea <
>> alexandre.ganea at ubisoft.com> wrote:
>>
>>> The CodeView library in LLVM only supports Codeview C13 types, that is,
>>> MSVC 7.0 / Visual Studio 2002 or after.
>>>
>>>
>>>
>>> *De :* llvm-dev <llvm-dev-bounces at lists.llvm.org> *De la part de* David
>>> Blaikie via llvm-dev
>>> *Envoyé :* September 30, 2019 2:38 PM
>>> *À :* Paul Moran <bankybooks at gmail.com>; Rui Ueyama <ruiu at google.com>
>>> *Cc :* llvm-dev at lists.llvm.org
>>> *Objet :* Re: [llvm-dev] lld-link with MSVC6 object files
>>>
>>>
>>>
>>> MSVC 6 as in the Visual Studio released in 1989? Yes, I imagine that's a
>>> bit outside the intended support window.
>>>
>>>
>>>
>>> On Mon, Sep 30, 2019 at 11:18 AM Paul Moran via llvm-dev <
>>> llvm-dev at lists.llvm.org> wrote:
>>>
>>> Hi,
>>>
>>>
>>>
>>> I have a question about lld-link. What obj file formats should it
>>> support? When I try to use an obj from msvc 6.0 it complains that the file
>>> magic is not valid.
>>>
>>>
>>>
>>> However when running  llvm-objdump it reports:
>>>
>>>
>>>
>>> test1.obj:      file format COFF-i386
>>>
>>> Disassembly of section .text:
>>> 0000000000000000 _main:
>>>        0:       68 00 00 00 00  pushl   $0
>>>        5:       e8 00 00 00 00  calll   0 <_main+0xa>
>>>        a:       83 c4 04        addl    $4, %esp
>>>        d:       33 c0   xorl    %eax, %eax
>>>
>>>       f:       c3      retl
>>>
>>>
>>>
>>> Thanks,
>>>
>>> Paul
>>>
>>>
>>>
>>> _______________________________________________
>>> LLVM Developers mailing list
>>> llvm-dev at lists.llvm.org
>>> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>>>
>>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20190930/d741c9a5/attachment.html>


More information about the llvm-dev mailing list