Changes from Git (git http://labmaster3.local/git/llvm-project.git)


  1. [scudo][standalone] Make tests work on Fuchsia (details)
  2. Make memory dump same as the one in asan. (details)
  3. scudo: Call setCurrentTSD(nullptr) when bringing down the TSD registry (details)
Commit 0d3d4d3b0fc57e577a8f80261bd4390c6cb7c040 by kostyak
[scudo][standalone] Make tests work on Fuchsia
Summary: This CL makes unit tests compatible with Fuchsia's zxtest. This
required a few changes here and there, but also unearthed some
incompatibilities that had to be addressed.
A header is introduced to allow to account for the zxtest/gtest
differences, some `#if SCUDO_FUCHSIA` are used to disable incompatible
code (the 32-bit primary, or the exclusive TSD).
It also brought to my attention that I was using
`__scudo_default_options` in different tests, which ended up in a single
binary, and I am not sure how that ever worked. So move this to the main
Additionally fully disable the secondary freelist on Fuchsia as we do
not track VMOs for secondary allocations, so no release possible.
With some modifications to Scudo's in Fuchsia:
[==========] 79 tests from 23 test cases ran (10280 ms total).
[  PASSED  ] 79 tests
Reviewers: mcgrathr, phosek, hctim, pcc, eugenis, cferris
Subscribers: srhines, jfb, #sanitizers, llvm-commits
Tags: #sanitizers, #llvm
Differential Revision:
The file was modifiedcompiler-rt/lib/scudo/standalone/allocator_config.h
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/stats_test.cpp
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/bytemap_test.cpp
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/list_test.cpp
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/flags_test.cpp
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/map_test.cpp
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/quarantine_test.cpp
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/secondary_test.cpp
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/strings_test.cpp
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/combined_test.cpp
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/release_test.cpp
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/chunk_test.cpp
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/primary_test.cpp
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/mutex_test.cpp
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/wrappers_cpp_test.cpp
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/report_test.cpp
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/tsd_test.cpp
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/scudo_unit_test_main.cpp
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/checksum_test.cpp
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/vector_test.cpp
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/atomic_test.cpp
The file was addedcompiler-rt/lib/scudo/standalone/tests/scudo_unit_test.h
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/wrappers_c_test.cpp
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/size_class_map_test.cpp
The file was modifiedcompiler-rt/lib/scudo/standalone/secondary.h
Commit 2045d2c90e240bf618d4e10f78f38dedc6db9357 by mliska
Make memory dump same as the one in asan.
Shadow memory (and short granules) are not prepended with memory address
and arrow at the end of line is removed.
Differential Revision:
The file was modifiedcompiler-rt/lib/hwasan/hwasan_report.cpp
Commit f30fe16d4902617a33dac1ebca066a7cb7e0f2ec by peter
scudo: Call setCurrentTSD(nullptr) when bringing down the TSD registry
in tests.
Otherwise, we will hit a use-after-free when testing multiple instances
of the same allocator on the same thread. This only recently became a
problem with D70552 which caused us to run both
ScudoCombinedTest.BasicCombined and ScudoCombinedTest.ReleaseToOS on the
unit tests' main thread.
Differential Revision:
The file was modifiedcompiler-rt/lib/scudo/standalone/tsd_shared.h