Mercurial > projects > ldc
diff CMakeLists.txt @ 1275:bedf0bfb8fdb
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)
author | Frits van Bommel <fvbommel wxs.nl> |
---|---|
date | Tue, 28 Apr 2009 21:58:06 +0200 |
parents | 6af2359b433a |
children | 24b33fdc7c0c |
line wrap: on
line diff
--- a/CMakeLists.txt Mon Apr 27 22:34:36 2009 +0200 +++ b/CMakeLists.txt Tue Apr 28 21:58:06 2009 +0200 @@ -135,7 +135,7 @@ file(GLOB FE_SRC ${DMDFE_PATH}/*.c) file(GLOB FE_SRC_ROOT ${DMDFE_PATH}/root/*.c) -file(GLOB GEN_SRC gen/*.cpp) +file(GLOB_RECURSE GEN_SRC gen/*.cpp) file(GLOB IR_SRC ir/*.cpp) # exclude idgen and impcnvgen and generated sources, just in case list(REMOVE_ITEM FE_SRC