[all-commits] [llvm/llvm-project] 62cf5d: [clang] Use DynamicRecursiveASTVisitor for AST lis...
David Zbarsky via All-commits
all-commits at lists.llvm.org
Wed Jul 8 08:23:01 PDT 2026
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 62cf5de4fee60958508cca4db5df7769e0a9e57f
https://github.com/llvm/llvm-project/commit/62cf5de4fee60958508cca4db5df7769e0a9e57f
Author: David Zbarsky <dzbarsky at gmail.com>
Date: 2026-07-08 (Wed, 08 Jul 2026)
Changed paths:
M clang/lib/Frontend/ASTConsumers.cpp
Log Message:
-----------
[clang] Use DynamicRecursiveASTVisitor for AST listing (#202661)
Replace `ASTDeclNodeLister`'s CRTP `RecursiveASTVisitor` with
`DynamicRecursiveASTVisitor` while keeping `ASTPrinter` and
`ASTDeclNodeLister` separate. Set `ShouldWalkTypesOfTypeLocs` to false
to
preserve the previous traversal.
In identical arm64 release builds, standalone clang shrinks by 251,840
bytes
(0.215%), stripped clang by 149,488 bytes, and `ASTConsumers.cpp.o` by
153,352
bytes; linked `__TEXT` falls by 147,456 bytes and linked fixups increase
by
1,040.
The `-ast-list` output is byte-identical on the existing clang-check
input and
`ASTConsumers.cpp` (150,918 lines); two reversed-order ten-run timing
passes
have overlapping wall-time distributions and a 0.4% combined mean user
CPU-time increase.
Work towards #202616
AI tool disclosure: Co-authored with OpenAI Codex.
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list