[lldb] Add reproducer verifier
authorJonas Devlieghere <jonas@devlieghere.com>
Mon, 31 Aug 2020 22:13:49 +0000 (15:13 -0700)
committerJonas Devlieghere <jonas@devlieghere.com>
Mon, 31 Aug 2020 22:14:18 +0000 (15:14 -0700)
commit297f69afac58fc9dc13897857a5e70131c5adc85
tree62fc03f64f9f2e27477322dc1e3ad14f3b0c3108
parent867de151a52b6d0750485ac1cf9b3bc012ee51fd
[lldb] Add reproducer verifier

Add a reproducer verifier that catches:

 - Missing or invalid home directory
 - Missing or invalid working directory
 - Missing or invalid module/symbol paths
 - Missing files from the VFS

The verifier is enabled by default during replay, but can be skipped by
passing --reproducer-no-verify.

Differential revision: https://reviews.llvm.org/D86497
13 files changed:
lldb/include/lldb/API/SBReproducer.h
lldb/include/lldb/Utility/Reproducer.h
lldb/source/API/SBReproducer.cpp
lldb/source/Commands/CommandObjectReproducer.cpp
lldb/source/Commands/Options.td
lldb/source/Utility/Reproducer.cpp
lldb/source/Utility/ReproducerProvider.cpp
lldb/test/Shell/Reproducer/TestDebugSymbols.test
lldb/test/Shell/Reproducer/TestVerify.test [new file with mode: 0644]
lldb/tools/driver/Driver.cpp
lldb/tools/driver/Options.td
llvm/include/llvm/Support/VirtualFileSystem.h
llvm/lib/Support/VirtualFileSystem.cpp