{"json_modified": "2016-09-10T00:21:52.047268", "uuid": "f1d7c4a1-4724-49ee-86dc-ca5667692b11", "title": "Firefox and Address Sanitizer", "url": "/en-US/docs/Mozilla/Testing/Firefox_and_Address_Sanitizer", "tags": ["Developing Mozilla", "Debugging", "debugging", "Guide"], "translations": [], "modified": "2016-09-10T00:21:52", "label": "Firefox and Address Sanitizer", "localization_tags": [], "locale": "en-US", "id": 696, "last_edit": "2016-09-10T00:21:51", "summary": "Address Sanitizer (ASan) is a fast memory error detector that detects use-after-free and out-of-bound bugs in C/C++ programs. It uses a compile-time instrumentation to check all reads and writes during the execution. In addition, the runtime part replaces the malloc and free functions to check dynamically allocated memory. More information on how ASan works can be found on the Address Sanitizer wiki.", "sections": [{"id": "What_is_Address_Sanitizer", "title": "What is Address Sanitizer?"}, {"id": "Public_Builds", "title": "Public Builds"}, {"id": "Creating_your_own_Linux_Try_build", "title": "Creating your own Linux Try build"}, {"id": "Manual_Build", "title": "Manual Build"}, {"id": "Build_prerequisites", "title": "Build prerequisites"}, {"id": "LLVMClang", "title": "LLVM/Clang"}, {"id": "Building_Firefox", "title": "Building Firefox"}, {"id": "Getting_the_source", "title": "Getting the source"}, {"id": "Adjusting_the_build_configuration", "title": "Adjusting the build configuration"}, {"id": "Starting_the_build_process", "title": "Starting the build process"}, {"id": "Starting_Firefox", "title": "Starting Firefox"}, {"id": "Building_only_the_JavaScript_shell", "title": "Building only the JavaScript shell"}, {"id": "Getting_Symbols_in_Address_Sanitizer_Traces", "title": "Getting Symbols in Address Sanitizer Traces"}, {"id": "Using_the_LLVM_Symbolizer_(recommended)", "title": "Using the LLVM Symbolizer (recommended)"}, {"id": "Post-Processing_Traces_with_asan_symbolize.py", "title": "Post-Processing Traces with asan_symbolize.py"}, {"id": "Troubleshooting_Known_problems", "title": "Troubleshooting / Known problems"}, {"id": "Cannot_specify_-o_when_generating_multiple_output_files", "title": "Cannot specify -o when generating multiple output files"}, {"id": "Optimized_build", "title": "Optimized build"}, {"id": "Crashes_on_Ubuntu_11.10", "title": "Crashes on Ubuntu 11.10"}, {"id": "Recent_cmake_on_Ubuntu_12.04_LTS", "title": "Recent cmake on Ubuntu 12.04 LTS"}, {"id": "Debugging_issues_that_ASan_finds", "title": "Debugging issues that ASan finds"}, {"id": "LeakSanitizer", "title": "LeakSanitizer"}], "slug": "Mozilla/Testing/Firefox_and_Address_Sanitizer", "review_tags": []}