August 13, 2015
On 08/13/2015 07:41 AM, David Nadlinger via dmd-internals wrote:
> Most definitely. LDC already passes the test suite on x86_64 and we are currently just cleaning up the fallout of the many half-done fixes/improvements in 2.067. We could actually even release a beta right now if it helps you, but it would have a pretty big codegen speed regression.

I'm currently reducing a bug that prevents me from compiling ddmd with ldc.

objc_stubs.d(48): Error: Function type does not match previously declared function with the same mangled name: _ZN21Objc_ClassDeclaration11isInterfaceEv

Happens both with 0.15.2-beta2 and master



August 13, 2015
On 13 Aug 2015, at 8:28, Martin Nowak via dmd-internals wrote:
> I'm currently reducing a bug that prevents me from compiling ddmd with ldc.
>
> […]
>
> Happens both with 0.15.2-beta2 and master

Drats, this might be a new issue, I haven't tried compiling DDMD in a while.

You'll need to use the merge-2.067 branch, by the way.

 — David
_______________________________________________
dmd-internals mailing list
dmd-internals@puremagic.com
http://lists.puremagic.com/mailman/listinfo/dmd-internals
August 13, 2015
On 08/13/2015 04:58 AM, Walter Bright via dmd-internals wrote:
> How about doing a PR for the sources?

Currently working on that. https://trello.com/c/tHr25s3r/50-magicport



August 13, 2015

On 8/12/2015 10:35 PM, Martin Nowak via dmd-internals wrote:
> On Thursday, 13 August 2015 at 02:58:00 UTC, Walter Bright wrote:
>> Let's do that then.
>
> Yep, 2.067 sounds good and it seems one of gdc/ldc will have a 2.067 before 2.069.
>
>> How about doing a PR for the sources? Seems to me we're just sitting around jawboning, and not moving forward!
>
> This discussion is necessary. Switching to ddmd is a big change with lots of consequences and you should be willing to spent some time to make better decisions.

This discussion is good. Delaying the PR to get the D sources in git is not so good. I don't see any reason for further delay.
_______________________________________________
dmd-internals mailing list
dmd-internals@puremagic.com
http://lists.puremagic.com/mailman/listinfo/dmd-internals
August 13, 2015

On 8/13/2015 1:08 AM, Walter Bright via dmd-internals wrote:
>
>
> On 8/12/2015 10:35 PM, Martin Nowak via dmd-internals wrote:
>> On Thursday, 13 August 2015 at 02:58:00 UTC, Walter Bright wrote:
>>> Let's do that then.
>>
>> Yep, 2.067 sounds good and it seems one of gdc/ldc will have a 2.067 before 2.069.
>>
>>> How about doing a PR for the sources? Seems to me we're just sitting around jawboning, and not moving forward!
>>
>> This discussion is necessary. Switching to ddmd is a big change with lots of consequences and you should be willing to spent some time to make better decisions.
>
> This discussion is good. Delaying the PR to get the D sources in git is not so good. I don't see any reason for further delay.

I.e. the decision on how to compile ddmd for release only has to be made at release time, not before we switch to ddmd. The ongoing gdc/ldc improvements can be done concurrently with getting ddmd in shape to release, because while ddmd is being developed it can be compiled with an existing dmd.
_______________________________________________
dmd-internals mailing list
dmd-internals@puremagic.com
http://lists.puremagic.com/mailman/listinfo/dmd-internals
August 13, 2015
On 08/13/2015 08:41 AM, David Nadlinger wrote:
> Drats, this might be a new issue, I haven't tried compiling DDMD in a while.
> 
> You'll need to use the merge-2.067 branch, by the way.
> 
>  — David

When I try the merge-2.067 branch it fails even earlier.

root/port.d(152): Error: undefined identifier yl2x
root/port.d(157): Error: undefined identifier yl2xp1




August 13, 2015
On 13 Aug 2015, at 11:08, Martin Nowak wrote:
> When I try the merge-2.067 branch it fails even earlier.
>
> root/port.d(152): Error: undefined identifier yl2x
> root/port.d(157): Error: undefined identifier yl2xp1

That's an issue in DDMD. LDC does not offer y2lx in core.math because it makes no sense on platforms beyond x86 (and we would have to implement it using inline asm anyway). We could add an inline asm version to our runtime, but I'd rather our frontend did not rely on a platform-specific operation with wonky semantics.

When Daniel and I built the LDC-based DDMD at DConf, I think we just set Port.yl2x_supported and Port.yl2xp1_supported to false and removed the implementations of those.

 — David
_______________________________________________
dmd-internals mailing list
dmd-internals@puremagic.com
http://lists.puremagic.com/mailman/listinfo/dmd-internals
August 13, 2015
On 13 August 2015 at 11:28, David Nadlinger via dmd-internals < dmd-internals@puremagic.com> wrote:

> On 13 Aug 2015, at 11:08, Martin Nowak wrote:
>
>> When I try the merge-2.067 branch it fails even earlier.
>>
>> root/port.d(152): Error: undefined identifier yl2x
>> root/port.d(157): Error: undefined identifier yl2xp1
>>
>
> That's an issue in DDMD. LDC does not offer y2lx in core.math because it makes no sense on platforms beyond x86 (and we would have to implement it using inline asm anyway). We could add an inline asm version to our runtime, but I'd rather our frontend did not rely on a platform-specific operation with wonky semantics.
>
>
I agree to these semtiments about y2lx(p1).  I have no idea who or why someone thought it was considered a good idea to add it to CTFE in the first place.

Regards
Iain.


August 13, 2015
On 08/13/2015 12:01 PM, Iain Buclaw wrote:
> I agree to these semtiments about y2lx(p1).  I have no idea who or why someone thought it was considered a good idea to add it to CTFE in the first place.

B/C we were missing log and exp functions in CTFE, but of course
actually using log and exp would have made more sense.
This is getting OT though.




August 14, 2015
I have a question for the future development with ddmd.

2.067 contains some known serious codegen bugs. For example, issue 14815 (https://issues.dlang.org/show_bug.cgi?id=14815) is not fixed in both 2.067 and 2.068. It's fixed only in git-head (would be released by 2.069?)

If we will continue to use 2.067 to build new ddmd compiler, we have to avoid issue 14815 in dmd source code _forever_? There's no migration path to update host dmd compiler?

- Kenji
_______________________________________________
dmd-internals mailing list
dmd-internals@puremagic.com
http://lists.puremagic.com/mailman/listinfo/dmd-internals