digitalmars.D - Phobos and LTO
- Las (1/1) Mar 05 2017 Is Phobos compiled with LTO enabled?
- Temtaime (2/3) Mar 05 2017 There is no LTO with D.
- Daniel Kozak via Digitalmars-d (3/6) Mar 05 2017 Yes it is
- Johan Engelen (3/10) Mar 05 2017 And it appeared first in the recent LDC 1.1 release.
- Temtaime (3/10) Mar 07 2017 Being specific only for LDC and only on linux - it's a lie to say
- Johan Engelen (7/18) Mar 07 2017 Cheer up, you wrote "there is no LTO with D", which there clearly
- Johan Engelen (6/9) Mar 07 2017 Has anybody tried LLD on Windows for D already?
- kinke (12/22) Mar 07 2017 Yep, I gave LLD 3.9 a try on Win64 some weeks ago. Works out of
- Johan Engelen (6/10) Mar 08 2017 Niiice. Awesome indeed!
- Johan Engelen (3/7) Mar 08 2017 Er... stop me before doing something stupid :)
- Daniel Kozak via Digitalmars-d (4/23) Mar 07 2017 OTOH he maybe has dmd in mind when he speaking about D. It is a really
- Dmitry Olshansky (5/6) Mar 05 2017 LTO is *link* time optimization so I'd say it makes no sense for
- John Colvin (2/8) Mar 05 2017 Shared libraries are linked.
- Johan Engelen (10/14) Mar 05 2017 Static libraries _are_ linked into your executable and LTO is
On Sunday, 5 March 2017 at 17:17:13 UTC, Las wrote:Is Phobos compiled with LTO enabled?There is no LTO with D.
Mar 05 2017
Dne 5.3.2017 v 20:31 Temtaime via Digitalmars-d napsal(a):On Sunday, 5 March 2017 at 17:17:13 UTC, Las wrote:Yes it is https://johanengelen.github.io/ldc/2016/11/10/Link-Time-Optimization-LDC.htmlIs Phobos compiled with LTO enabled?There is no LTO with D.
Mar 05 2017
On Sunday, 5 March 2017 at 19:52:12 UTC, Daniel Kozak wrote:Dne 5.3.2017 v 20:31 Temtaime via Digitalmars-d napsal(a):And it appeared first in the recent LDC 1.1 release. -JohanOn Sunday, 5 March 2017 at 17:17:13 UTC, Las wrote:Yes it is https://johanengelen.github.io/ldc/2016/11/10/Link-Time-Optimization-LDC.htmlIs Phobos compiled with LTO enabled?There is no LTO with D.
Mar 05 2017
On Sunday, 5 March 2017 at 19:52:12 UTC, Daniel Kozak wrote:Dne 5.3.2017 v 20:31 Temtaime via Digitalmars-d napsal(a):Being specific only for LDC and only on linux - it's a lie to say simple « yes ».On Sunday, 5 March 2017 at 17:17:13 UTC, Las wrote:Yes it is https://johanengelen.github.io/ldc/2016/11/10/Link-Time-Optimization-LDC.htmlIs Phobos compiled with LTO enabled?There is no LTO with D.
Mar 07 2017
On Tuesday, 7 March 2017 at 18:15:52 UTC, Temtaime wrote:On Sunday, 5 March 2017 at 19:52:12 UTC, Daniel Kozak wrote:Cheer up, you wrote "there is no LTO with D", which there clearly is. :-) It works on OS X too. And OS X is the only platform for which we package the LTO linker binaries in the release. -JohanDne 5.3.2017 v 20:31 Temtaime via Digitalmars-d napsal(a):Being specific only for LDC and only on linux - it's a lie to say simple « yes ».On Sunday, 5 March 2017 at 17:17:13 UTC, Las wrote:Yes it is https://johanengelen.github.io/ldc/2016/11/10/Link-Time-Optimization-LDC.htmlIs Phobos compiled with LTO enabled?There is no LTO with D.
Mar 07 2017
On Tuesday, 7 March 2017 at 18:42:40 UTC, Johan Engelen wrote:It works on OS X too. And OS X is the only platform for which we package the LTO linker binaries in the release.Has anybody tried LLD on Windows for D already? https://lld.llvm.org/windows_support.html If LLD works (or another linker that can use the LLVM plugin), then LTO is also available on Windows. -Johan
Mar 07 2017
On Tuesday, 7 March 2017 at 18:46:15 UTC, Johan Engelen wrote:On Tuesday, 7 March 2017 at 18:42:40 UTC, Johan Engelen wrote:Yep, I gave LLD 3.9 a try on Win64 some weeks ago. Works out of the box as drop-in replacement for Microsoft's link.exe, incl. usage of environment variables. What's apparently still lacking is debuginfos (.pdb) generation, so our CDB debugging tests failed (all others worked IIRC). LLD is supposed to be significantly faster than Microsoft's linker; I haven't done any measurements yet. Besides offering nice stuff like LTO, integrating LLD should allow LDC to directly cross-compile *and* cross-link. So you'll only need the target system libs to produce objects, libraries and executables for 'any' target. Which is pretty awesome.It works on OS X too. And OS X is the only platform for which we package the LTO linker binaries in the release.Has anybody tried LLD on Windows for D already? https://lld.llvm.org/windows_support.html If LLD works (or another linker that can use the LLVM plugin), then LTO is also available on Windows. -Johan
Mar 07 2017
On Tuesday, 7 March 2017 at 22:38:33 UTC, kinke wrote:Yep, I gave LLD 3.9 a try on Win64 some weeks ago. Works out of the box as drop-in replacement for Microsoft's link.exe, incl. usage of environment variables.Niiice. Awesome indeed! Does LLVM trunk automatically build an LLD LTO plugin on Windows? If not, we should ask about it on the LLVM mailing list. cheers, Johan
Mar 08 2017
On Wednesday, 8 March 2017 at 17:16:58 UTC, Johan Engelen wrote:Does LLVM trunk automatically build an LLD LTO plugin on Windows? If not, we should ask about it on the LLVM mailing list.Er... stop me before doing something stupid :) LTO is of course a native feature of LLD.
Mar 08 2017
Dne 7.3.2017 v 19:42 Johan Engelen via Digitalmars-d napsal(a):On Tuesday, 7 March 2017 at 18:15:52 UTC, Temtaime wrote:OTOH he maybe has dmd in mind when he speaking about D. It is a really common pattern (problem) I am challenging every time (unfortunately) when I am speaking about D.On Sunday, 5 March 2017 at 19:52:12 UTC, Daniel Kozak wrote:Cheer up, you wrote "there is no LTO with D", which there clearly is. :-) It works on OS X too. And OS X is the only platform for which we package the LTO linker binaries in the release. -JohanDne 5.3.2017 v 20:31 Temtaime via Digitalmars-d napsal(a):Being specific only for LDC and only on linux - it's a lie to say simple « yes ».On Sunday, 5 March 2017 at 17:17:13 UTC, Las wrote:Yes it is https://johanengelen.github.io/ldc/2016/11/10/Link-Time-Optimization-LDC.htmlIs Phobos compiled with LTO enabled?There is no LTO with D.
Mar 07 2017
On 3/5/17 6:17 PM, Las wrote:Is Phobos compiled with LTO enabled?LTO is *link* time optimization so I'd say it makes no sense for libraries, as they are not linked. --- Dmitry Olshansky
Mar 05 2017
On Sunday, 5 March 2017 at 21:00:32 UTC, Dmitry Olshansky wrote:On 3/5/17 6:17 PM, Las wrote:Shared libraries are linked.Is Phobos compiled with LTO enabled?LTO is *link* time optimization so I'd say it makes no sense for libraries, as they are not linked. --- Dmitry Olshansky
Mar 05 2017
On Sunday, 5 March 2017 at 21:00:32 UTC, Dmitry Olshansky wrote:On 3/5/17 6:17 PM, Las wrote:Static libraries _are_ linked into your executable and LTO is very relevant for libraries. Having druntime and/or Phobos compiled with LTO enabled can provide massive speedups. I have not worked on it yet, but it'd be awesome if we could ship LDC with LTO versions of druntime and Phobos. PRs with additions to our CMake files are very welcome! :-) cheers, JohanIs Phobos compiled with LTO enabled?LTO is *link* time optimization so I'd say it makes no sense for libraries, as they are not linked.
Mar 05 2017