Mercurial > projects > ldc
view dmd/html.h @ 1170:e40c65bd8c5d
Allow specific optimization passes to be requested from the command line.
Now you can run "`ldc test.d -c -mem2reg -simplifycfg`" if you feel the urge.
The -O<N> options are still supported, and are inserted in the passes list in
the position where they appear on the command line.
(so -simplifycfg -O1 -instcombine does the "right thing")
One small change: -inline is renamed to -enable-inlining due to a naming
conflict with the option to add the -inline pass. -inline now inserts the
inlining pass in the position specified, not in the middle of -O<N>.
(ldmd has been updated to translate -inline to -enable-inlining)
author | Frits van Bommel <fvbommel wxs.nl> |
---|---|
date | Sun, 29 Mar 2009 15:46:55 +0200 |
parents | c53b6e3fe49a |
children | 229e02867307 |
line wrap: on
line source
// Compiler implementation of the D programming language // Copyright (c) 1999-2006 by Digital Mars // All Rights Reserved // written by Walter Bright // http://www.digitalmars.com // License for redistribution is by either the Artistic License // in artistic.txt, or the GNU General Public License in gnu.txt. // See the included readme.txt for details. #ifndef DMD_HTML_H #define DMD_HTML_H 1 struct OutBuffer; struct Html { const char *sourcename; unsigned char *base; // pointer to start of buffer unsigned char *end; // past end of buffer unsigned char *p; // current character unsigned linnum; // current line number OutBuffer *dbuf; // code source buffer int inCode; // !=0 if in code Html(const char *sourcename, unsigned char *base, unsigned length); void error(const char *format, ...); void extractCode(OutBuffer *buf); void skipTag(); void skipString(); unsigned char *skipWhite(unsigned char *q); void scanComment(); int isCommentStart(); void scanCDATA(); int isCDATAStart(); int charEntity(); static int namedEntity(unsigned char *p, int length); }; #endif