dmd makes D appear slow

Manu via Digitalmars-d digitalmars-d at puremagic.com
Sun May 31 01:45:27 PDT 2015


On 31 May 2015 at 17:59, Shachar Shemesh via Digitalmars-d
<digitalmars-d at puremagic.com> wrote:
> On 31/05/15 02:08, Manu via Digitalmars-d wrote:
>>
>> On 31 May 2015 at 04:39, Shachar Shemesh via Digitalmars-d
>> <digitalmars-d at puremagic.com> wrote:
>>>
>>> On 30/05/15 11:00, Iain Buclaw via Digitalmars-d wrote:
>>>>
>>>>
>>>>
>>>> When he says Windows, he means MSVC, gcc backend will never support
>>>> interfacing that ABI (at least I see no motivation as of writing).
>>>>
>>> I thought that's what MINGW was. A gcc backend that interfaces with the
>>> Windows ABI. Isn't it?
>>
>>
>> If your program is isolated, MinGW is fine. Great even!
>> But the Windows ecosystem is built around Microsoft's COFF formatted
>> libraries (as produced by Visual Studio), and most Windows libs that I
>> find myself working with are closed-source, or distributed as
>> pre-built binaries.
>
> Again, sorry for my ignorance. I just always assumed that the main
> difference between mingw and cygwin is precisely that: that mingw
> executables are PE formatted, and can import PE DLLs (such as the Win32 DLLs
> themselves).
>
> If that is not the case, what is the mingw format? How does it allow you to
> link in the Win32 DLLs if it does not support COFF?
>
> Shachar

I did once play with a coff mingw build, but I think the key issue I
had there was the C runtime. GCC built code seems to produce intrinsic
calls to glibc, and it is incompatible with MSVCRT.
I'm pretty certain that GCC can't emit code to match the Win32
exception model, and there's still the debuginfo data to worry about
too.


More information about the Digitalmars-d mailing list