Thread overview
LDC 1.28.1
Jan 13, 2022
kinke
Jan 13, 2022
H. S. Teoh
Jan 15, 2022
Brian Callahan
Jan 19, 2022
workman
Jan 19, 2022
kinke
Jan 19, 2022
workman
Jan 19, 2022
kinke
Jan 25, 2022
workman
January 13, 2022

A new patch version was just released:

  • Based on D 2.098.1+ (stable from 2 days ago).
  • Linux x86[_64]: Important fix with statically linked druntime and lld/bfd linkers. [lld 13 came with a deadly breaking change and doesn't work, older versions do - stay tuned for LDC v1.29 for further improved linker support.]
  • New UDAs: @hidden and @noSanitize.
  • Ability to access magic linker symbols on Mac via special mangle prefix.
  • WebAssembly: Tweaked default lld linker flags for less trouble wrt. stack overflows. Thanks @ryuukk!
  • Support rdtscp in DMD-style inline assembly. Thanks Max!

Full release log and downloads: https://github.com/ldc-developers/ldc/releases/tag/v1.28.1

Thanks to all contributors & sponsors!

PS: The original plan was to release this just before Christmas vacation, but a high-impact Nullable regression in Phobos v2.098.1 prevented that.

January 13, 2022
On Thu, Jan 13, 2022 at 03:51:07PM +0000, kinke via Digitalmars-d-announce wrote:
> A new patch version was just released:
> 
> * Based on D 2.098.1+ (stable from 2 days ago).

Big thanks to the LDC team for continuing to deliver one of the best D compilers around!


T

-- 
Государство делает вид, что платит нам зарплату, а мы делаем вид, что работаем.
January 15, 2022

On Thursday, 13 January 2022 at 15:51:07 UTC, kinke wrote:

>

A new patch version was just released:

Thanks! Working on the OpenBSD package update as we speak...

~Brian

January 19, 2022

On Saturday, 15 January 2022 at 15:43:16 UTC, Brian Callahan wrote:

>

On Thursday, 13 January 2022 at 15:51:07 UTC, kinke wrote:

>

A new patch version was just released:

Thanks! Working on the OpenBSD package update as we speak...

~Brian

Hi kinke, Thanks for the great work.

I has some link problem with lld-12 if use with "--gc-sections -s", confirm on x86-64 and aarch64. (build with betterC)

upgrade to lld-13(or NDK lld-14) no such problem.

The lld-12 link as expect, but when start binary the quickjs promise stop work after one async call, remove "--gc-sections -s" fix the problem but generate huge binary.

I has problem with cross llvm-version LTO, so I want to use same llvm version and upgrade to llvm-13.

I want to know if I build ldc with llvm13 myself, will it work for betterC project ?

January 19, 2022

On Wednesday, 19 January 2022 at 09:17:11 UTC, workman wrote:

>

Hi kinke, Thanks for the great work.

I has some link problem with lld-12 if use with "--gc-sections -s", confirm on x86-64 and aarch64. (build with betterC)

upgrade to lld-13(or NDK lld-14) no such problem.

The lld-12 link as expect, but when start binary the quickjs promise stop work after one async call, remove "--gc-sections -s" fix the problem but generate huge binary.

I has problem with cross llvm-version LTO, so I want to use same llvm version and upgrade to llvm-13.

I want to know if I build ldc with llvm13 myself, will it work for betterC project ?

Hi; LTO with lld for ELF targets has just been fixed in master, after v1.28.1. Without -betterC at least, not sure if -betterC was affected too in some way.

Bumping LLVM to v13 wasn't trivial this time. There's https://github.com/ldc-developers/ldc/pull/3842 using an LLVM v13.0.1-rc2+, which fixed serious issues we've had with the gold linker (lld v13 was fine). You can download that CI artifact (with enabled assertions) and give it a try to see if it works for you: https://dev.azure.com/ldc-developers/ldc/_build/results?buildId=3243&view=artifacts&pathAsName=false&type=publishedArtifacts

January 19, 2022

On Wednesday, 19 January 2022 at 13:03:11 UTC, kinke wrote:

>

Hi; LTO with lld for ELF targets has just been fixed in master, after v1.28.1. Without -betterC at least, not sure if -betterC was affected too in some way.

Bumping LLVM to v13 wasn't trivial this time. There's https://github.com/ldc-developers/ldc/pull/3842 using an LLVM v13.0.1-rc2+, which fixed serious issues we've had with the gold linker (lld v13 was fine). You can download that CI artifact (with enabled assertions) and give it a try to see if it works for you: https://dev.azure.com/ldc-developers/ldc/_build/results?buildId=3243&view=artifacts&pathAsName=false&type=publishedArtifacts

Thanks for the kind reply.

This azure download link work for me very well, with LTO or without LTO, the project build and run without problem.

January 19, 2022

On Wednesday, 19 January 2022 at 13:55:56 UTC, workman wrote:

>

Thanks for the kind reply.

This azure download link work for me very well, with LTO or without LTO, the project build and run without problem.

Glad to hear that, thanks for the feedback!

January 25, 2022

On Wednesday, 19 January 2022 at 15:55:39 UTC, kinke wrote:

>

On Wednesday, 19 January 2022 at 13:55:56 UTC, workman wrote:

>

Thanks for the kind reply.

This azure download link work for me very well, with LTO or without LTO, the project build and run without problem.

Glad to hear that, thanks for the feedback!

My pleasure.

I try use LDC for IOS with https://github.com/llvm/llvm-project/releases/download/llvmorg-13.0.1-rc3/clang+llvm-13.0.1-rc3-x86_64-apple-darwin.tar.xz (clang to build c library).

This office llvm-13 support -arch arm64e flags, to link with ldc2 I get this error:

tests.o has architecture arm64 which is incompatible with target architecture arm64e

Is there a option to made ldc2 support arch flags for apple ?