hanchenye-llvm-project/llvm
Guanzhong Chen 9aad997a5a [WebAssembly] Implement Address Sanitizer for Emscripten
Summary:
This diff enables address sanitizer on Emscripten.

On Emscripten, real memory starts at the value passed to --global-base.

All memory before this is used as shadow memory, and thus the shadow mapping
function is simply dividing by 8.

Reviewers: tlively, aheejin, sbc100

Reviewed By: sbc100

Subscribers: dschuff, sbc100, jgravelle-google, hiraditya, sunfish, cfe-commits, llvm-commits

Tags: #clang, #llvm

Differential Revision: https://reviews.llvm.org/D63742

llvm-svn: 364468
2019-06-26 20:16:14 +00:00
..
benchmarks
bindings [IR/DIVar] Add the flag for params that have unmodified value 2019-06-26 11:19:26 +00:00
cmake Add llvm-symbolizer to LLVM_TOOLCHAIN_TOOLS (PR40152) 2019-06-25 07:15:41 +00:00
docs [WebAssembly] Implement tail calls and unify tablegen call classes 2019-06-26 16:17:15 +00:00
examples
include BitStream reader: propagate errors 2019-06-26 19:50:12 +00:00
lib [WebAssembly] Implement Address Sanitizer for Emscripten 2019-06-26 20:16:14 +00:00
projects
resources
runtimes
test BitStream reader: propagate errors 2019-06-26 19:50:12 +00:00
tools BitStream reader: propagate errors 2019-06-26 19:50:12 +00:00
unittests BitStream reader: propagate errors 2019-06-26 19:50:12 +00:00
utils Revert "r364412 [ExpandMemCmp][MergeICmps] Move passes out of CodeGen into opt pipeline." 2019-06-26 12:13:13 +00:00
.arcconfig
.clang-format
.clang-tidy
.gitattributes
.gitignore gitignore: Ignore Qt Creator project configuration files. NFC 2019-06-12 08:28:31 +00:00
CMakeLists.txt build: extract LLVM distribution target handling 2019-06-14 18:28:57 +00:00
CODE_OWNERS.TXT
CREDITS.TXT
LICENSE.TXT
LLVMBuild.txt
README.txt
RELEASE_TESTERS.TXT
configure
llvm.spec.in

README.txt

The LLVM Compiler Infrastructure
================================

This directory and its subdirectories contain source code for LLVM,
a toolkit for the construction of highly optimized compilers,
optimizers, and runtime environments.

LLVM is open source software. You may freely distribute it under the terms of
the license agreement found in LICENSE.txt.

Please see the documentation provided in docs/ for further
assistance with LLVM, and in particular docs/GettingStarted.rst for getting
started with LLVM and docs/README.txt for an overview of LLVM's
documentation setup.

If you are writing a package for LLVM, see docs/Packaging.rst for our
suggestions.