llvm-project/clang
Manuel Klimek 95403e6f60 Make the parent-map use significantly less memory.
On test files I ran this on, memory consumption overall went down from
2.5G to 2G, without performance regressions.
I also investigated making DynTypedNode by itself smaller (by pulling
out pointers for everything that doesn't fit in 8 bytes). This led to
another 200-300MB saved, but also introduced a significant regression in
performance due to the memory management overhead.

llvm-svn: 209297
2014-05-21 13:28:59 +00:00
..
INPUTS
bindings Clean up language and grammar. 2014-05-20 17:10:39 +00:00
docs Revert r209231, "Update AttributeReference.rst." 2014-05-20 19:38:07 +00:00
examples Eliminate DefaultImageName from the Driver constructor 2014-05-15 22:26:36 +00:00
include Make the parent-map use significantly less memory. 2014-05-21 13:28:59 +00:00
lib Make the parent-map use significantly less memory. 2014-05-21 13:28:59 +00:00
runtime Make verbose clang builds also build compiler_rt verbosely 2014-05-14 23:07:16 +00:00
test Make global named registers internal variables 2014-05-21 10:40:27 +00:00
tools RAV reunification: merge Lambda body visitation to DRAV 2014-05-20 22:03:39 +00:00
unittests clang-format: Fix corner case working around one-per-line dict literals. 2014-05-21 13:26:58 +00:00
utils utils/CmpDriver: add brief documentation to indicate what this does 2014-05-21 02:08:10 +00:00
www [analyzer] Alpha and implicit checker lists, expand/collapse feature. 2014-05-19 15:04:55 +00:00
.arcconfig Updated phabricator server. 2014-04-07 03:39:55 +00:00
.clang-format
.gitignore
CMakeLists.txt We now require Visual C++ 2012 (MSVC_VERSION = 1700) or later to build LLVM. 2014-03-04 09:12:17 +00:00
CODE_OWNERS.TXT Adding myself as the code owner for the attribute subsystem. 2014-01-13 22:23:27 +00:00
INSTALL.txt
LICENSE.TXT Update the copyright credits -- Happy new year 2014! 2014-01-01 08:27:31 +00:00
Makefile Define ENABLE_CLANG_EXAMPLES instead of relying on BUILD_EXAMPLES 2014-01-08 13:00:32 +00:00
ModuleInfo.txt
NOTES.txt
README.txt

README.txt

//===----------------------------------------------------------------------===//
// C Language Family Front-end
//===----------------------------------------------------------------------===//

Welcome to Clang.  This is a compiler front-end for the C family of languages
(C, C++, Objective-C, and Objective-C++) which is built as part of the LLVM
compiler infrastructure project.

Unlike many other compiler frontends, Clang is useful for a number of things
beyond just compiling code: we intend for Clang to be host to a number of
different source level tools.  One example of this is the Clang Static Analyzer.

If you're interested in more (including how to build Clang) it is best to read
the relevant web sites.  Here are some pointers:

Information on Clang:              http://clang.llvm.org/
Building and using Clang:          http://clang.llvm.org/get_started.html
Clang Static Analyzer:             http://clang-analyzer.llvm.org/
Information on the LLVM project:   http://llvm.org/

If you have questions or comments about Clang, a great place to discuss them is
on the Clang development mailing list:
  http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev

If you find a bug in Clang, please file it in the LLVM bug tracker:
  http://llvm.org/bugs/