Building LDC for the first time
Kai Nacke via digitalmars-d-ldc
digitalmars-d-ldc at puremagic.com
Wed Aug 27 10:14:22 PDT 2014
On Wednesday, 27 August 2014 at 14:59:33 UTC, Daniel N wrote:
> On Tuesday, 26 August 2014 at 17:00:37 UTC, Kai Nacke wrote:
>> Thanks for the hint. I committed the change. If you like you
>> can try it...
>>
>> Regards,
>> Kai
>
> Thanks, the patch works like a Charm! It allowed me to find the
> next(and probably final issue).
>
> When building with LLVM 3.5 my GCC/GAS is not happy with
> certain COMDAT directives, I tested switching to build with my
> own compiled LLVM 3.4.2 that is fully functional as expected.
>
> If I use "-disable-linker-strip-dead" then the 'one_only'
> syntax returns to the old 3.4.2 style, but the new 'discard'
> syntax remain despite the switch, see below comparison for what
> I mean.
>
> === 34 ===
> .text
> .linkonce discard
>
> === 35 ===
> .section .text,"xr",one_only,__Dmain
> .section .text,"xr",discard,__D4dial13__T6createTiZ6createFNaNbNfiZi
>
> === 35 && -disable-linker-strip-dead ===
> .text
> .section .text,"xr",discard,__D4dial13__T6createTiZ6createFNaNbNfiZi
>
> Regards,
> Daniel N
Hi Daniel!
You could try the integrated LLVM assembler. I am currently
testing this setup.
1. In driver/toobj.cpp, set bool const assembleExternally = false;
2. in std.math, exchange in real poly(...) the inline assembler
with the D version (simply replace D_InlineAsm_X86 with none).
This is what I am currently testing.
Regards,
Kai
More information about the digitalmars-d-ldc
mailing list