内容简介:LDC 是一个高性能的 D 语言编译器。LDC 1.14.0 新版本更新亮点如下: 支持 D 语言最新版本 2.084.1. 增强对 WebAssembly 的兼容性 改进 Windows 32 位系统安装包形式 纤程改进 其他稳定性提升 完整更新日志(英文...
LDC 是一个高性能的 D 语言编译器。LDC 1.14.0 新版本更新亮点如下:
-
支持 D 语言最新版本 2.084.1.
-
增强对 WebAssembly 的兼容性
-
改进 Windows 32 位系统安装包形式
-
纤程改进
-
其他稳定性提升
完整更新日志(英文)
Big news
- Frontend, druntime and Phobos are at version 2.084.1, incl. new command-line options
-mixin
,-{enable,disable}-switch-errors
and-checkaction
. (#2946, #2977, #2999) (new)- Options
-release
,-d-debug
and-unittest
don't override preceding, more specific options (-{enable,disable}-{asserts,invariants,preconditions,postconditions,contracts}
) anymore.
- Options
- Linking WebAssembly doesn't require
-link-internally
(integrated LLD) anymore; an external linker (default:wasm-ld
, override with-linker
) can be used as well. (#2951) - Prebuilt Windows packages include LTO-able 32-bit druntime/Phobos too (previously: Win64 only).
- AddressSanitizer support for fibers (requires rebuilding the runtime libraries with CMake option
RT_SUPPORT_SANITIZERS=ON
). (#2975, ldc-developers/druntime#152) (new) - Support
pragma(LDC_extern_weak)
for function declarations - if the function isn't available when linking, its address is null. (#2984) (new)
Platform support
- Supports LLVM 3.9 - 7.0.
Bug fixes
- Fix C++ mangling regression for functions with multiple
real
parameters introduced with v1.13, preventing to build DMD. (#2954, dlang/dmd#9129) - Fix context of some nested aggregates. (#2960, #2969)
- Support templated LLVM intrinsics with vector arguments. (#2962, #2971)
- Avoid crashes with
-allinst
(fix emission of only speculatively nested functions). (#2932, #2940) - Fix XRay support for LLVM 7+. (#2965)
- AArch64: Fix DMD-style profile measurements. (#2950)
- Be less picky about placement of pragmas (allow intermediate
extern(C)
etc.). (#2599) - MSVC: Fix
real
C++ mangling to match Visual C++long double
. (#2974) - Fix bad ICE noticed when building protobuf-d. (#2990, #2992) (new)
- Fix ICE when directly indexing vector return value. (#2988, #2991) (new)
- Fix identity comparisons of complex numbers. (#2918, #2993) (new)
- MIPS32 fix for
core.stdc.stdarg
. (#2989, ldc-developers/druntime#153) (new) - Fix
core.atomic.cas()
for 64-bit floating-point values. (#3000, #3001) (new) - beta1 regression: 'Instruction does not dominate all uses' (#2996, #2997) (new)
Known issues
- Buggy older
ld.bfd
linker versions may wrongly strip out required symbols, e.g., ModuleInfos (so that e.g. no module ctors/dtors are run). LDC defaults told.gold
on Linux. - LDC does not zero the padding area of a
real
variable. This may lead to wrong results if the padding area is also considered. See #770. Does not apply toreal
members inside structs etc.
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- LDC 1.14.0 发布,高性能 dlang 编译器
- LDC 1.21.0 发布,高性能 D 语言编译器
- LDC 1.18.0 发布,高性能 D 语言编译器
- 高性能 Common Lisp 编译器 SBCL 1.4.7 发布
- 高性能 Common Lisp 编译器 SBCL 1.4.7 发布
- LLVM接受NVIDIA的“f18” Fortran编译器作为官方Fortran编译器
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。