llvm-xsan is a tool that contains a set of subtools for working with the
Sanitizers. The goal here is to provide useful tools for working with
the Sanitizers that can be shipped as part of an LLVM toolchain.
This patch includes the following subtools
- version - Reports the tool version.
- asan get-schema - A tool to report the schema that describes ASan reports.
- asan symbolicate - A tool to symbolicate ASan reports.
- asan parse - A tool to parse ASan reports.
Other tools (e.g. kasan <subtool>, tsan <subtool>, ubsan <subtool>`)
could be added in the future.
Only the version tool contains a full implementation. The other tools
just contain stubs that will be implemented in future patches.
llvm-xsan will not be installed by default but can be installed by
setting the new LLVM_INSTALL_LLVM_XSAN CMake option to ON.
This patch also includes changes to allow testing of llvm-xsan from any
of the compiler-rt test suites. A llvm-xsan-misc test suite has also
been added that tests features that are independent of any particular
sanitizer.
rdar://problem/67436450