A portable D programming language compiler using LLVM for modern optimization and code generation.
LDC is the LLVM-based D Compiler, a portable compiler for the D programming language that uses the official DMD frontend for language support and LLVM Core libraries for code generation. It provides modern optimization capabilities and supports the latest D2 language specification while being fully open-source.
D programmers who need a high-performance, cross-platform compiler with modern optimization features, particularly those working on projects requiring native code generation across multiple target architectures.
Developers choose LDC for its combination of full D language compatibility through the DMD frontend with LLVM's powerful optimization and code generation capabilities, offering better performance and portability than other D compiler options.
The LLVM-based D Compiler.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Leverages LLVM Core libraries for advanced code generation and optimization across platforms, providing efficient native code as highlighted in the key features.
Uses the official DMD frontend to support the latest D2 language specification, ensuring up-to-date language features without compromise.
Available for Linux, macOS, Windows, FreeBSD, Android, and more, with simple cross-compiling capabilities similar to other LLVM-based compilers, enabling diverse target deployments.
Offers stand-alone binary builds for easy deployment and is fully open-source under BSD license, promoting accessibility and community contributions.
Requires a recent LLVM version (≥ 18) for building, adding complexity and potential compatibility issues, as noted in the source build instructions.
CI builds with enabled assertions increase compile times by roughly 50%, indicating slower compilation in debug or development scenarios compared to compilers like DMD.
Packages from package managers are community-maintained and might be outdated or lack full features, as explicitly warned in the installation section, risking inconsistent experiences.