Lines Matching full:clang
6 <title>Clang - Features and Goals</title>
19 <h1>Clang - Features and Goals</h1>
24 Clang in more detail and gives a more broad explanation about what we mean.
65 <p>A major focus of our work on clang is to make it fast, light and scalable.
66 The library-based architecture of clang makes it straight-forward to time and
70 <p>While there is still much that can be done, we find that the clang front-end
72 compiling "Carbon.h" on Mac OS/X, we see that clang is 2.5x faster than GCC:</p>
78 constants, etc (see slide 25+ of the <a href="clang_video-07-25-2007.html">clang
86 measurements, we find that clang's preprocessor is consistently 40% faster than
89 use Precompiled Headers) you may see a much bigger speedup from clang.
92 <p>Compile time performance is important, but when using clang as an API, often
99 <p>Here we see a huge advantage of clang: its ASTs take <b>5x less memory</b>
100 than GCC's syntax trees, despite the fact that clang's ASTs capture far more
105 mode, clang is built with a <a href="#libraryarch">library based
112 <p>This slide shows how the clang preprocessor can be used to make "distcc"
121 clang to reduce time spent in the kernel by 10x, making distcc over 3x more
126 <p>The clean framework-based design of clang means that many things are possible
129 to tap the full potential of the clang design.</p>
136 <p>In addition to being fast and functional, we aim to make Clang extremely user
145 GCC and Clang diagnostic:</p>
150 $ <b>clang -fsyntax-only t.c</b>
157 understand what is wrong based on the Clang error: Because clang prints a
163 <p>Clang diagnostics are very polished and have many features. For more
196 <p>A major design concept for clang is its use of a library-based
212 Currently, clang is divided into the following libraries and tool:
235 <li><b>clang</b> - A driver program, client of the libraries at various
247 various clang libraries, please see the <a href="docs/InternalsManual.html">
248 clang Internals Manual</a>.</p>
254 <p>Clang is designed and built with many grand plans for how we can use it. The
259 problem in clang.</p>
282 <p>The beauty of the clang approach is that it does not restrict how you use it.
283 In particular, it is possible to use the clang preprocessor and parser to build
285 that does not build an AST at all. As an intermediate step, clang supports
288 clang provides support for building and retaining fully-fledged ASTs, and even
303 to pull together various pieces of the development puzzle, and aim to make clang
319 information that a codegen-only frontend can throw away. Clang is
328 <p>We actively intend for clang (and LLVM as a whole) to be used for
337 <p>For more information about the LLVM/clang license, please see the <a
352 Clang is designed and built by experienced compiler developers who
354 href="comparison.html">existing open source compilers</a> have. Clang is
371 extend the clang source base. A large part of this falls out of our decision to
378 appropriate, and designing the code for simplicity. Beyond that, clang offers
387 <p>Clang is the "C Language Family Front-end", which means we intend to support
416 clang in "strict" mode if you desire.</p>