[PATCH] D88938: [llvm-xsan] Introduce llvm-xsan

Dan Liew via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Oct 6 17:51:00 PDT 2020


delcypher created this revision.
delcypher added reviewers: kcc, kubamracek, yln, vitalybuka, eugenis, phosek, vsk.
Herald added subscribers: Sanitizers, mgorny.
Herald added a project: Sanitizers.
delcypher requested review of this revision.

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


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D88938

Files:
  compiler-rt/test/CMakeLists.txt
  compiler-rt/test/lit.common.cfg.py
  compiler-rt/test/llvm-xsan-misc/CMakeLists.txt
  compiler-rt/test/llvm-xsan-misc/TestCases/help.py
  compiler-rt/test/llvm-xsan-misc/TestCases/version.py
  compiler-rt/test/llvm-xsan-misc/lit.cfg.py
  compiler-rt/test/llvm-xsan-misc/lit.site.cfg.py.in
  compiler-rt/tools/CMakeLists.txt
  compiler-rt/tools/llvm-xsan/.flake8
  compiler-rt/tools/llvm-xsan/.gitignore
  compiler-rt/tools/llvm-xsan/.pylintrc
  compiler-rt/tools/llvm-xsan/CMakeLists.txt
  compiler-rt/tools/llvm-xsan/llvm-xsan.in
  compiler-rt/tools/llvm-xsan/llvm_xsan/__init__.py
  compiler-rt/tools/llvm-xsan/llvm_xsan/asan/__init__.py
  compiler-rt/tools/llvm-xsan/llvm_xsan/asan/subtool_asan.py
  compiler-rt/tools/llvm-xsan/llvm_xsan/asan/subtool_get_schema.py
  compiler-rt/tools/llvm-xsan/llvm_xsan/asan/subtool_parse.py
  compiler-rt/tools/llvm-xsan/llvm_xsan/asan/subtool_symbolicate.py
  compiler-rt/tools/llvm-xsan/llvm_xsan/driver.py
  compiler-rt/tools/llvm-xsan/llvm_xsan/subtool_version.py
  compiler-rt/tools/llvm-xsan/llvm_xsan/version_info.py
  compiler-rt/tools/llvm-xsan/llvm_xsan/version_info_install.py.in
  compiler-rt/tools/llvm-xsan/llvm_xsan_install.cmake.in
  compiler-rt/tools/llvm-xsan/setup.py
  compiler-rt/tools/llvm-xsan/utils/lint.sh

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D88938.296567.patch
Type: text/x-patch
Size: 26716 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20201007/51cc8a32/attachment.bin>


More information about the llvm-commits mailing list