www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.ldc - LDC 1.2.0 has been released!

reply Kai Nacke <kai redstar.de> writes:
Hi everyone!

On behalf of the LDC team I announce the new 1.2.0 release!
It is based on the 2.072.2 front-end and supports LLVM 3.5-4.0.

Highlights of this release are the new frontend, support for LLVM 
4.0, better cross-compiling support for floating points and a ton 
of fixes to increase robustness of the compiler. Be sure to read 
the change log at the GitHub release page for all the details. 
The packages are available for download at the same page.
https://github.com/ldc-developers/ldc/releases/tag/v1.2.0

MD5 checksums for the release packages:

68a19f08047c38518699351154ed156f  ldc-1.2.0-src.tar.gz
f9c36bdcc4a0f3502b3ba0d6b913cf3e  ldc2-1.2.0-freebsd-x86_64.tar.xz
a57072691c26ca32ad08fa981d5acaa6  ldc2-1.2.0-linux-x86.tar.xz
fa24f73702355a430677d85c9b0e3200  ldc2-1.2.0-linux-x86_64.tar.xz
6b97b2508233ecf35c2add95a2d81666  ldc2-1.2.0-osx-x86_64.tar.xz
fa298a80bdeb9eb8b7b71b8de1fef545  ldc2-1.2.0-win32-msvc.zip
be187180cec83003cc29ffba7e41032f  ldc2-1.2.0-win64-msvc.zip

Regarding the binaries:
The Linux x86/x86_64 binaries are built on Ubuntu 12.04 LTS with 
gcc 4.8.x and LLVM 4.0.0. They work on Ubuntu 12.04 LTS (or 
later) without installing additional software.

The OS X binaries and the FreeBSD binaries are built with LLVM 
4.0.0.

The Win32 and Win64 MSVC versions are built with VS2015 and LLVM 
3.9.1 (due to a regression in LLVM 4.0).

Please be sure to report any bugs at 
https://github.com/ldc-developers/ldc/issues, and feel free to 
drop by at the digitalmars.D.ldc forums 
(http://forum.dlang.org/group/digitalmars.D.ldc) for any 
questions or comments.

Thanks to everybody involved in making this happen. Onward to 
1.3.0!

Regards,
Kai
Apr 23
next sibling parent reply Guillaume Piolat <first.last gmail.com> writes:
On Sunday, 23 April 2017 at 11:40:20 UTC, Kai Nacke wrote:
 Hi everyone!

 On behalf of the LDC team I announce the new 1.2.0 release!
 It is based on the 2.072.2 front-end and supports LLVM 3.5-4.0.

 Highlights of this release are the new frontend, support for 
 LLVM 4.0, better cross-compiling support for floating points 
 and a ton of fixes to increase robustness of the compiler. Be 
 sure to read the change log at the GitHub release page for all 
 the details. The packages are available for download at the 
 same page.
 https://github.com/ldc-developers/ldc/releases/tag/v1.2.0

 MD5 checksums for the release packages:

 68a19f08047c38518699351154ed156f  ldc-1.2.0-src.tar.gz
 f9c36bdcc4a0f3502b3ba0d6b913cf3e  
 ldc2-1.2.0-freebsd-x86_64.tar.xz
 a57072691c26ca32ad08fa981d5acaa6  ldc2-1.2.0-linux-x86.tar.xz
 fa24f73702355a430677d85c9b0e3200  ldc2-1.2.0-linux-x86_64.tar.xz
 6b97b2508233ecf35c2add95a2d81666  ldc2-1.2.0-osx-x86_64.tar.xz
 fa298a80bdeb9eb8b7b71b8de1fef545  ldc2-1.2.0-win32-msvc.zip
 be187180cec83003cc29ffba7e41032f  ldc2-1.2.0-win64-msvc.zip

 Regarding the binaries:
 The Linux x86/x86_64 binaries are built on Ubuntu 12.04 LTS 
 with gcc 4.8.x and LLVM 4.0.0. They work on Ubuntu 12.04 LTS 
 (or later) without installing additional software.

 The OS X binaries and the FreeBSD binaries are built with LLVM 
 4.0.0.

 The Win32 and Win64 MSVC versions are built with VS2015 and 
 LLVM 3.9.1 (due to a regression in LLVM 4.0).

 Please be sure to report any bugs at 
 https://github.com/ldc-developers/ldc/issues, and feel free to 
 drop by at the digitalmars.D.ldc forums 
 (http://forum.dlang.org/group/digitalmars.D.ldc) for any 
 questions or comments.

 Thanks to everybody involved in making this happen. Onward to 
 1.3.0!

 Regards,
 Kai
Thanks. Here are some results with testing audio processing x86 performance versus LDC 1.0 (1.1 would make ~1% faster binaries than 1.0). * 32-bit LDC-1.0.0 x86 Results: * minimum time: 214 ms => 98.7409 x real-time * median time: 220 ms => 96.0479 x real-time * average time: 246.967 ms => 85.5603 x real-time LDC-1.2.0 x86 Results: * minimum time: 175 ms => 120.746 x real-time * median time: 177 ms => 119.382 x real-time * average time: 185.2 ms => 114.096 x real-time LDC-1.2.0 x86 with -ffast-math Results: * minimum time: 175 ms => 120.746 x real-time * median time: 178 ms => 118.711 x real-time * average time: 192.033 ms => 110.036 x real-time => peak dB difference = -150.515 dB => RMS dB difference = -212.253 dB * 64-bit LDC-1.0.0 x86_64 Results: * minimum time: 195 ms => 108.362 x real-time * median time: 200.5 ms => 105.389 x real-time * average time: 206.533 ms => 102.311 x real-time LDC-1.2.0 x86_64 Results: * minimum time: 174 ms => 121.44 x real-time * median time: 176.5 ms => 119.72 x real-time * average time: 180.467 ms => 117.088 x real-time LDC-1.2.0 x86_64 with -ffast-math * minimum time: 170 ms => 124.297 x real-time * median time: 172 ms => 122.852 x real-time * average time: 178.933 ms => 118.092 x real-time => peak dB difference = -inf dB => RMS dB difference = -inf dB Conclusion: for this particular benchmark, LDC 1.2.0 beats the former LDC with ~20% speed-up for 32-bit and ~10% for 64-bit. Very nice!
Apr 24
parent reply Daniel N <no public.email> writes:
On Monday, 24 April 2017 at 16:15:40 UTC, Guillaume Piolat wrote:
 On Sunday, 23 April 2017 at 11:40:20 UTC, Kai Nacke wrote:
 Conclusion: for this particular benchmark, LDC 1.2.0 beats the 
 former LDC with ~20% speed-up for 32-bit and ~10% for 64-bit. 
 Very nice!
Same for me, yay! :)
Apr 25
parent =?UTF-8?B?Tm9yZGzDtnc=?= <per.nordlow gmail.com> writes:
On Tuesday, 25 April 2017 at 07:58:18 UTC, Daniel N wrote:
 On Sunday, 23 April 2017 at 11:40:20 UTC, Kai Nacke wrote:
 Conclusion: for this particular benchmark, LDC 1.2.0 beats the 
 former LDC with ~20% speed-up for 32-bit and ~10% for 64-bit. 
 Very nice!
Progress!
Apr 25
prev sibling parent reply Jon Degenhardt <jond noreply.com> writes:
On Sunday, 23 April 2017 at 11:40:20 UTC, Kai Nacke wrote:
 Hi everyone!

 On behalf of the LDC team I announce the new 1.2.0 release!
 It is based on the 2.072.2 front-end and supports LLVM 3.5-4.0.
FYI - My travis-ci osx build started failing when travis switched to the LDC 1.2 release. I was using default 'osx' and 'ldc' setups. On travis, default osx setup is xcode 7.3. With this setup there were linker failures: error: Invalid bitcode version (Producer: '800.0.42.1_0' Reader: '703.0.31_0') Changing the travis config to use xcode 8.2 solved the issue. I used 8.2 rather than 8.3 to avoid the 'pointer not aligned' messages that are generated with 8.3. --Jon
Apr 27
next sibling parent reply Jon Degenhardt <jond noreply.com> writes:
On Thursday, 27 April 2017 at 21:38:19 UTC, Jon Degenhardt wrote:
 Changing the travis config to use xcode 8.2 solved the issue. I 
 used 8.2 rather than 8.3 to avoid the 'pointer not aligned' 
 messages that are generated with 8.3.
I should have indicated, the 'pointer not aligned' messages are when compiling with DMD, not LDC
Apr 27
parent Jacob Carlborg <doob me.com> writes:
On 2017-04-27 23:46, Jon Degenhardt wrote:

 I should have indicated, the 'pointer not aligned' messages are when
 compiling with DMD, not LDC
That is fixed now [1]. [1] https://github.com/dlang/dmd/pull/6721 -- /Jacob Carlborg
Apr 28
prev sibling next sibling parent David Nadlinger via digitalmars-d-ldc <digitalmars-d-ldc puremagic.com> writes:
Hi Jon,

On 27 Apr 2017, at 22:38, Jon Degenhardt via digitalmars-d-ldc wrote:
 FYI - My travis-ci osx build started failing when travis switched to 
 the LDC 1.2 release. I was using default 'osx' and 'ldc' setups. On 
 travis, default osx setup is xcode 7.3. With this setup there were 
 linker failures
See https://github.com/ldc-developers/ldc/issues/2077. If you have some time to look into this, we'd greatly appreciate any help. — David
Apr 27
prev sibling parent reply Johan Engelen <j j.nl> writes:
On Thursday, 27 April 2017 at 21:38:19 UTC, Jon Degenhardt wrote:
 On Sunday, 23 April 2017 at 11:40:20 UTC, Kai Nacke wrote:
 Hi everyone!

 On behalf of the LDC team I announce the new 1.2.0 release!
 It is based on the 2.072.2 front-end and supports LLVM 3.5-4.0.
FYI - My travis-ci osx build started failing when travis switched to the LDC 1.2 release. I was using default 'osx' and 'ldc' setups. On travis, default osx setup is xcode 7.3. With this setup there were linker failures: error: Invalid bitcode version (Producer: '800.0.42.1_0' Reader: '703.0.31_0')
This is now fixed: there is a new 1.2.0 package for Mac on Github now. Creating LTO-built binary packages for Mac needs a little more work. :/ -Johan
Apr 29
parent Jon Degenhardt <jond noreply.com> writes:
On Saturday, 29 April 2017 at 10:50:38 UTC, Johan Engelen wrote:
 On Thursday, 27 April 2017 at 21:38:19 UTC, Jon Degenhardt 
 wrote:
 On Sunday, 23 April 2017 at 11:40:20 UTC, Kai Nacke wrote:
 Hi everyone!

 On behalf of the LDC team I announce the new 1.2.0 release!
 It is based on the 2.072.2 front-end and supports LLVM 
 3.5-4.0.
FYI - My travis-ci osx build started failing when travis switched to the LDC 1.2 release. I was using default 'osx' and 'ldc' setups. On travis, default osx setup is xcode 7.3. With this setup there were linker failures: error: Invalid bitcode version (Producer: '800.0.42.1_0' Reader: '703.0.31_0')
This is now fixed: there is a new 1.2.0 package for Mac on Github now. Creating LTO-built binary packages for Mac needs a little more work. :/ -Johan
Excellent, thank you!
Apr 29