summaryrefslogtreecommitdiffstats
path: root/llvm/lib/IR/DebugInfo.cpp
diff options
context:
space:
mode:
authorSean Callanan <scallanan@apple.com>2017-09-28 20:20:25 +0000
committerSean Callanan <scallanan@apple.com>2017-09-28 20:20:25 +0000
commit68e4423917b6570b159aa0b694655943d01f0fa9 (patch)
tree214716a253490883a5ad1e63b45b9fa6f12c9fb2 /llvm/lib/IR/DebugInfo.cpp
parented19350293f14bce74f53d9ffbe72ba4fc5d7bd2 (diff)
downloadbcm5719-llvm-68e4423917b6570b159aa0b694655943d01f0fa9.tar.gz
bcm5719-llvm-68e4423917b6570b159aa0b694655943d01f0fa9.zip
[Expression parser] Setting to enable use of ExternalASTMerger
This setting can be enabled like this at the target level: (lldb) settings set target.experimental.use-modern-type-lookup true This causes several new behaviors in the Clang expression parser: - It completely disables use of ClangASTImporter. None are created at all, and all users of it are now conditionalized on its presence. - It instead constructs a per-expression ExternalASTMerger, which exists inside Clang and contains much of the type completion logic that hitherto lived in ExternalASTSource, ClangExpressionDeclMap, and ClangASTImporter. - The expression parser uses this Merger as a backend for copying and completing types. - It also constructs a persistent ExternalASTMerger which is connected to the Target's persistent AST context. This is a major chunk of LLDB functionality moved into Clang. It can be tested in two ways: 1. For an individual debug session, enable the setting before running a target. 2. For the testsuite, change the option to be default-true. This is done in Target.cpp's g_experimental_properties. The testsuite is not yet clean with this, so I have not committed that switch. I have filed a Bugzilla for extending the testsuite to allow custom settings for all tests: https://bugs.llvm.org/show_bug.cgi?id=34771 I have also filed a Bugzilla for fixing the remaining testsuite failures with this setting enabled: https://bugs.llvm.org/show_bug.cgi?id=34772 llvm-svn: 314458
Diffstat (limited to 'llvm/lib/IR/DebugInfo.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud