Frits van Bommel 0df1e34eb2 Implement first D-specific optimization pass: -simplify-drtcalls.
It uses the machinery of the standard -simplify-libcalls pass, but optimizes
calls to the D runtime instead of calls to C libraries.

At the moment, these optimizations are implemented by this pass:
 - Avoid the runtime call for `arr.length = newlen` if it can determine that
   the new length isn't longer than the old one.
 - Ditto for `cast(T[]) arr` if it will clearly always succeed.
   (e.g. if the length of the original array is zero, or if the old element
   size is a multiple of the new element size)
2009-04-28 21:58:06 +02:00
2008-10-06 22:54:08 +02:00
2008-12-17 18:20:45 +01:00
2009-04-15 20:06:25 +02:00
2009-03-01 22:40:15 +01:00
2009-03-14 22:44:52 +01:00
2008-10-06 22:46:55 +02:00

LLVM D Compiler (LDC)

This compiler is based on the Digital Mars D (DMD) compiler frontend, and
the LLVM compiler toolkit. See LICENSE for licensing information.

For more information, including build instructions, visit the LDC website:

http://www.dsource.org/projects/llvmdc
Description
The LLVM-based D compiler.
Readme Multiple Licenses 14 MiB
Languages
C 75.2%
C++ 23.2%
D 0.7%
CMake 0.6%
Shell 0.2%