Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Document simple ASAN build #44475

Merged
merged 1 commit into from
Mar 5, 2022
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 19 additions & 0 deletions doc/src/devdocs/sanitizers.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,24 @@
# Sanitizer support

[Sanitizers](https://github.com/google/sanitizers) can be used in custom Julia builds to make it
easier to detect certain kinds of errors in Julia's internal C/C++ code.

## Address Sanitizer: easy build

From a source-checkout of Julia, you should be able to build a version
supporting address sanitization in Julia and LLVM as follows:

```sh
$ mkdir /tmp/julia
$ contrib/asan/build.sh /tmp/julia/
```

Here we've chosen `/tmp/julia` as a build directory, but you can
choose whatever you wish. Once built, run the workload you wish to
test with `/tmp/julia/julia`. Memory bugs will result in errors.

If you require customization or further detail, see the documentation below.

## General considerations

Using Clang's sanitizers obviously requires you to use Clang (`USECLANG=1`), but there's another
Expand Down