aboutsummaryrefslogtreecommitdiff
path: root/INPUTS
AgeCommit message (Collapse)Author
2012-04-13all-std-headers.cpp: Include the C++11 headers when building with clangRichard Smith
in -std=gnu++11 mode. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154654 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-04For PR11916: Add support for g++'s __int128 keyword. Unlike __int128_t, this isRichard Smith
a type specifier and can be combined with unsigned. This allows libstdc++4.7 to be used with clang in c++98 mode. Several other changes are still required for libstdc++4.7 to work with clang in c++11 mode. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153999 91177308-0d34-0410-b5e6-96231b3b80d8
2012-02-14Extend all-std-headers.cpp to include C++11 headers when building in C++11 mode.Richard Smith
Conditionally include headers which older STL implementations don't provide. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150526 91177308-0d34-0410-b5e6-96231b3b80d8
2011-09-13Enhance the CFG construction to detect no-return destructors forChandler Carruth
temporary objects and local variables. When detected, these split the block, marking the new one as having only the exit block as a successor. This prevents a large number of false positives in warnings sensitive to no-return constructs such as -Wreturn-type, and fixes the remainder of PR10063 along with several variations of this bug that had not been reported. The test cases are extended across the board to cover these patterns. This also checks in a stress test for these types of CFGs. The stress test declares some 32k variables, a mixture of no-return and normal destructors. Previously, this resulted in roughly 2500 CFG blocks, but didn't model any of the no-return destructors. With this patch, it results in over 33k blocks, many of them now unreachable. The nice thing about how the analyzer is set up? This causes *no* regression in performance of building the CFG. It actually in some cases makes it faster, as best I can benchmark. The analysis for -Wreturn-type (and any other that cares about no-return code paths) is technically slower now as it has to look at many more candidate blocks, but it computes the correct answer. I have more test cases to follow, I think they all work now. Also I have further work that should dramatically simplify analyses in the presence of no-return. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@139586 91177308-0d34-0410-b5e6-96231b3b80d8
2011-07-08Add several CFG-stress-testing input source files. These use theChandler Carruth
preprocessor to build up very large CFGs in various shapes that can produce different algorithmic behavior in CFG-walking code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134698 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-29Add an input file that includes all standard C++ headersDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@83042 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-26added to wrong directoryChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62997 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-21add an evil macro expansion perf test from Neil.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@40138 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-11Stage two of getting CFE top correct.Reid Spencer
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@39734 91177308-0d34-0410-b5e6-96231b3b80d8