Go to file
Richard Smith 8583872060 Use data recursion in RecursiveASTVisitor when traversing Stmt and Expr nodes.
When RAV traverses a Stmt or Expr node, if the corresponding Traverse*
functions have not been overridden, it will now use data recursion to walk
those nodes. We arrange this to be an unobservable optimization to RAV
subclasses, and to gracefully degrade as parts of the visitation are overridden
with functions that might observe the visitation.

For instance, if an RAV subclass overrides TraverseUnaryNot, we will ensure
that there are real recursive stack frames for those traversals, but we'll
use data recursion for all other traversals.

This removes the need for DataRecursiveASTVisitor, and for the
'shouldUseDataRecursionFor' extension point, both of which are removed by this
change.

llvm-svn: 253948
2015-11-24 03:09:01 +00:00
clang Use data recursion in RecursiveASTVisitor when traversing Stmt and Expr nodes. 2015-11-24 03:09:01 +00:00
clang-tools-extra Fix test failure introduced by r253859. I believe that the new behavior 2015-11-23 22:28:56 +00:00
compiler-rt sync up InstrProfData.inc with master 2015-11-24 00:37:45 +00:00
debuginfo-tests New round of fixes for "Always compile debuginfo-tests for the host triple" 2014-10-18 23:47:59 +00:00
libclc integer: remove explicit casts from _MIN definitions 2015-10-06 19:12:12 +00:00
libcxx Fix some mistakes in the <utility> and <tuple> synopses. No functional change. Thannks to K-ballo for the patch 2015-11-19 19:45:29 +00:00
libcxxabi c++abi: use __builtin_offsetof instead of offsetof 2015-11-18 05:33:38 +00:00
libunwind Make it possible to use libunwind without heap. 2015-11-09 06:57:29 +00:00
lld [ELF/AArch64] Factor out overflow checks into a separate function. NFC. 2015-11-23 17:16:09 +00:00
lldb Prevent ProcessGDBRemote from launching local debug server in case of remote debug server connection failure. 2015-11-23 19:32:24 +00:00
llgo debug: Update for debug info API change. 2015-11-05 22:04:20 +00:00
llvm [DIE] Make DIE.h NDEBUG conditional-free. 2015-11-24 02:21:43 +00:00
openmp Add newlines to debug TRACE messages in kmp_taskdeps.cpp 2015-11-16 22:53:38 +00:00
polly Update format to match clang-format in trunk 2015-11-23 20:04:04 +00:00