view dmd2/readme.txt @ 1491:360a8e8eea51

Teach stack promotion to walk the CFG when a potential reuse of an allocation is found to see if it can actually happen instead of just assuming it will. This allows it to catch cases like {{{ int i; Foo f; while (cond(i)) f = new Foo(i++); return f.value; }}} where it previously wouldn't because a phi using the allocation would appear in the condition block to propagate it to the use after the loop.
author Frits van Bommel <fvbommel wxs.nl>
date Thu, 11 Jun 2009 02:04:44 +0200
parents 638d16625da2
children
line wrap: on
line source


		The D Programming Language
		Compiler Front End Source
		Copyright (c) 1999-2009, by Digital Mars
		http://www.digitalmars.com
		All Rights Reserved


This is the source code to the front end Digital Mars D compiler.
It covers the lexical analysis, parsing, and semantic analysis
of the D Programming Language defined in the documents at
http://www.digitalmars.com/d/

These sources are free, they are redistributable and modifiable
under the terms of the GNU General Public License (attached as gpl.txt),
or the Artistic License (attached as artistic.txt).

The optimizer and code generator sources are 
covered under a separate license, backendlicense.txt.

It does not apply to anything else distributed by Digital Mars,
including D compiler executables.

-Walter Bright