summaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)Author
2018-02-13[sanitizer] Implement GetRSS on WindowsKostya Kortchinsky
Summary: Pretty straightforward, returning the `WorkingSetSize` of a `PROCESS_MEMORY_COUNTERS` structure. AFAIU, `GetProcessMemoryInfo` is in `kernel32.lib` for Windows 7 and above. Support for earlier Windows versions would require `psapi.lib`, but I don't think those are supported by ASan? Reviewers: alekseyshl, rnk, vitalybuka Reviewed By: vitalybuka Subscribers: vitalybuka, kubamracek, delcypher, llvm-commits, #sanitizers Differential Revision: https://reviews.llvm.org/D42822 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@325020 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-12[sanitizer] Size class map & local cache improvementsKostya Kortchinsky
Summary: - Reland rL324263, this time allowing for a compile-time decision as to whether or not use the 32-bit division. A single test is using a class map covering a maximum size greater than 4GB, this can be checked via the template parameters, and allows SizeClassAllocator64PopulateFreeListOOM to pass; - `MaxCachedHint` is always called on a class id for which we have already computed the size, but we still recompute `Size(class_id)`. Change the prototype of the function to work on sizes instead of class ids. This also allows us to get rid of the `kBatchClassID` special case. Update the callers accordingly; - `InitCache` and `Drain` will start iterating at index 1: index 0 contents are unused and can safely be left to be 0. Plus we do not pay the cost of going through an `UNLIKELY` in `MaxCachedHint`, and touching memory that is otherwise not used; - `const` some variables in the areas modified; - Remove an spurious extra line at the end of a file. Reviewers: alekseyshl, tl0gic, dberris Reviewed By: alekseyshl, dberris Subscribers: dberris, kubamracek, delcypher, llvm-commits, #sanitizers Differential Revision: https://reviews.llvm.org/D43088 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@324906 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-11Revert r324847, there's bot failures.Kuba Mracek
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@324849 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-11[sanitizer] Implement NanoTime() on DarwinKuba Mracek
Currently NanoTime() on Darwin is unimplemented and always returns 0. Looks like there's quite a few things broken because of that (TSan periodic memory flush, ASan allocator releasing pages back to the OS). Let's fix that. Differential Revision: https://reviews.llvm.org/D40665 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@324847 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-11[compiler-rt] Replace forkpty with posix_spawnKuba Mracek
On Darwin, we currently use forkpty to communicate with the "atos" symbolizer. There are several problems that fork or forkpty has, e.g. that after fork, interceptors are still active and this sometimes causes crashes or hangs. This is especially problematic for TSan, which uses interceptors for OS-provided locks and mutexes, and even Libc functions use those. This patch replaces forkpty with posix_spawn. Since posix_spawn doesn't fork (at least on Darwin), the interceptors are not a problem. Additionally, this also fixes a latent threading problem with ptsname (it's unsafe to use this function in multithreaded programs). Yet another benefit is that we'll handle post-fork failures (e.g. sandbox disallows "exec") gracefully now. Differential Revision: https://reviews.llvm.org/D40032 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@324846 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-10[XRay] Rename Buffer.Buffer to Buffer.DataDean Michael Berris
Summary: some compiler (msvc) treats Buffer.Buffer as constructor and refuse to compile. NFC Authored by comicfans44. Reviewers: rnk, dberris Reviewed By: dberris Subscribers: llvm-commits Tags: #sanitizers Differential Revision: https://reviews.llvm.org/D40346 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@324807 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-08[scudo] Allow options to be defined at compile timeKostya Kortchinsky
Summary: Allow for options to be defined at compile time, like is already the case for other sanitizers, via `SCUDO_DEFAULT_OPTIONS`. Reviewers: alekseyshl, dberris Reviewed By: alekseyshl, dberris Subscribers: kubamracek, delcypher, llvm-commits, #sanitizers Differential Revision: https://reviews.llvm.org/D42980 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@324620 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-08[builtins] Workaround for infinite recursion in c?zdi2Jonas Devlieghere
gcc resolves `__builtin_c?z` to `__c?zdi2` which leads to infinite recursion. This problem has been observed for sparc64, mips64 and riscv. Presumably this happens whenever an arch without dedicated bit counting instructions is targeted. This patch provides a workaround. Differential revision: https://reviews.llvm.org/D42902 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@324593 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-07[asan] Fix filename size on linux platforms.Yvan Roux
This is a a fix for: https://bugs.llvm.org/show_bug.cgi?id=35996 Use filename limits from system headers to be synchronized with what LD_PRELOAD can handle. Differential Revision: https://reviews.llvm.org/D42900 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@324496 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-07Correct a bug in GetArgsAndEnv() for NetBSDKamil Rytarowski
Fix setting envp. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@324481 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-07[Fuzzer] Use Zircon's public API on FuchsiaPetr Hosek
The original libFuzzer Fuchsia port relied on convenience libraries, but these are not exported as part of Fuchsia sysroot. This change eliminates the use of these libraries and relies on public API only. Differential Revision: https://reviews.llvm.org/D42996 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@324454 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-05[Sanitizers, Darwin] Disable SANITIZER_SUPPORTS_WEAK_HOOKS before Mac OS X 10.9Vitaly Buka
Summary: Before Xcode 4.5, undefined weak symbols don't work reliably on Darwin: https://stackoverflow.com/questions/6009321/weak-symbol-link-on-mac-os-x Therefore this patch disables their use before Mac OS X 10.9 which is the first version only supported by Xcode 4.5 and above. Reviewers: glider, kcc, vitalybuka Reviewed By: vitalybuka Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D41346 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@324284 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-05[sanitizer] Revert rL324263Kostya Kortchinsky
Summary: The 32-bit division breaks SizeClassAllocator64PopulateFreeListOOM which uses Primary that has a maximum size > 32-bit. Reviewers: alekseyshl Subscribers: kubamracek, delcypher, #sanitizers, llvm-commits Differential Revision: https://reviews.llvm.org/D42928 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@324268 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-05[sanitizer] SizeClassMap minor improvement/correctness changesKostya Kortchinsky
Summary: In `ClassID`, make sure we use an unsigned as based for the `lbits` shift. The previous code resulted in spurious sign extensions like for x64: ``` add esi, 0FFFFFFFFh movsxd rcx, esi and rcx, r15 ``` The code with the `U` added is: ``` add esi, 0FFFFFFFFh and rsi, r15 ``` And for `MaxCachedHint`, use a 32-bit division instead of `64-bit`, which is faster (https://lemire.me/blog/2017/11/16/fast-exact-integer-divisions-using-floating-point-operations/) and already used in other parts of the code (64-bit `GetChunkIdx`, 32-bit `GetMetaData` enforce 32-bit divisions) Not major performance gains by any mean, but they don't hurt. Reviewers: alekseyshl Reviewed By: alekseyshl Subscribers: kubamracek, delcypher, llvm-commits, #sanitizers Differential Revision: https://reviews.llvm.org/D42916 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@324263 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-05[sanitizer] Allocator local cache improvementsKostya Kortchinsky
Summary: Here are a few improvements proposed for the local cache: - `InitCache` always read from `per_class_[1]` in the fast path. This was not ideal as we are working with `per_class_[class_id]`. The latter offers the same property we are looking for (eg: `max_count != 0` means initialized), so we might as well use it and keep our memory accesses local to the same `per_class_` element. So change `InitCache` to take the current `PerClass` as an argument. This also makes the fast-path assembly of `Deallocate` a lot more compact; - Change the 32-bit `Refill` & `Drain` functions to mimic their 64-bit counterparts, by passing the current `PerClass` as an argument. This saves some array computations; - As far as I can tell, `InitCache` has no place in `Drain`: it's either called from `Deallocate` which calls `InitCache`, or from the "upper" `Drain` which checks for `c->count` to be greater than 0 (strictly). So remove it there. - Move the `stats_` updates to after we are done with the `per_class_` accesses in an attempt to preserve locality once more; - Change some `CHECK` to `DCHECK`: I don't think the ones changed belonged in the fast path and seemed to be overly cautious failsafes; - Mark some variables as `const`. The overall result is cleaner more compact fast path generated code, and some performance gains with Scudo (and likely other Sanitizers). Reviewers: alekseyshl Reviewed By: alekseyshl Subscribers: kubamracek, delcypher, #sanitizers, llvm-commits Differential Revision: https://reviews.llvm.org/D42851 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@324257 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-05Handle NetBSD symbol mangling devname -> __devname50Kamil Rytarowski
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@324240 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-02Add new NetBSD interceptors: devname(3), devname_r(3)Kamil Rytarowski
Summary: devname, devname_r - get device name Sponsored by <The NetBSD Foundation> Reviewers: joerg, vitalybuka Reviewed By: vitalybuka Subscribers: kubamracek, llvm-commits, #sanitizers Tags: #sanitizers Differential Revision: https://reviews.llvm.org/D42053 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@324120 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-02Correct the return value of strlcat(3) in the interceptorKamil Rytarowski
Late fix for SVN r. 324034 Add new interceptors: strlcpy(3) and strlcat(3) There was forgotten an addition of len to the return value. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@324091 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-01Add new interceptors: strlcpy(3) and strlcat(3)Kamil Rytarowski
Summary: NetBSD ships with strlcpy(3) and strlcat(3), a safe replacement of strcpy(3) and strcat(3). Hide both functions under SANITIZER_INTERCEPT_STRLCPY. Sponsored by <The NetBSD Foundation> Reviewers: joerg, vitalybuka Reviewed By: vitalybuka Subscribers: llvm-commits, kubamracek, #sanitizers Tags: #sanitizers Differential Revision: https://reviews.llvm.org/D42061 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@324034 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-01[sanitizer] Implement NanoTime & MonotonicNanoTime for WindowsKostya Kortchinsky
Summary: Implement `MonotonicNanoTime` using `QueryPerformanceCounter`. This function is used by Scudo & the 64-bit Primary allocator. Implementing it now means that the release-to-OS mechanism of the Primary will kick in (it never did since the function returned 0 always), but `ReleaseMemoryPagesToOS` is still not currently implemented for Windows. Performance wise, this adds a syscall & a 64-bit division per call to `MonotonicNanoTime` so the impact might not be negligible, but I don't think there is a way around it. Reviewers: rnk, alekseyshl, amccarth Reviewed By: alekseyshl, amccarth Subscribers: amccarth, flowerhack, kubamracek, delcypher, llvm-commits, #sanitizers Differential Revision: https://reviews.llvm.org/D42579 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@324011 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-01[scudo] Minor Secondary changesKostya Kortchinsky
Summary: Few changes to the secondary: - mark `const` variables as such; - change some `CHECK` to `DCHECK`: I don't feel we need to be as conservative as we were with out checks, as they are the results of our own computation. - mark a condition as `UNLIKELY`. Reviewers: alekseyshl Reviewed By: alekseyshl Subscribers: delcypher, #sanitizers, llvm-commits Differential Revision: https://reviews.llvm.org/D42696 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@323997 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-01Make detect_invalid_pointer_pairs option to be tristate.Alex Shlyapnikov
Summary: With the change, one can choose not to report comparison (or subtraction) of a pointer with nullptr pointer. Reviewers: kcc, jakubjelinek, alekseyshl Reviewed By: alekseyshl Subscribers: kubamracek Differential Revision: https://reviews.llvm.org/D41479 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@323995 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-01[CMake] Remove -stdlib= which is unused when passing -nostdinc++Jonas Hahnfeld
This avoids the warnings when building with LLVM_ENABLE_LIBCXX which automatically adds -stdlib=libc++ to CMAKE_CXX_FLAGS. Differential Revision: https://reviews.llvm.org/D42238 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@323969 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-01[XRay][compiler-rt+llvm] Update XRay register stashing semanticsDean Michael Berris
Summary: This change expands the amount of registers stashed by the entry and `__xray_CustomEvent` trampolines. We've found that since the `__xray_CustomEvent` trampoline calls can show up in situations where the scratch registers are being used, and since we don't typically want to affect the code-gen around the disabled `__xray_customevent(...)` intrinsic calls, that we need to save and restore the state of even the scratch registers in the handling of these custom events. Reviewers: pcc, pelikan, dblaikie, eizan, kpw, echristo, chandlerc Reviewed By: echristo Subscribers: chandlerc, echristo, hiraditya, davide, dblaikie, llvm-commits Differential Revision: https://reviews.llvm.org/D40894 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@323940 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-30[sanitizer] Fix tests on Android and DarwinVitaly Buka
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@323834 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-30[fuzzer] Update and enable libFuzzer on FuchsiaPetr Hosek
This change updates the Fuchsia-specific code to use the C++ friendly duration expressions and flips on the building of libclang_rt.fuzzer-x86_64.a and similar for Fuchsia. Given that compiler-rt doesn't build on Fuchsia, test have been run by explicitly building the library and linking it against lib/fuzzer/tests/FuzzerUnittest.cpp. Differential Revision: https://reviews.llvm.org/D42670 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@323828 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-30[sanitizer] Add interceptors for readlinkat, name_to_handle_at, ↵Vitaly Buka
open_by_handle_at Summary: Also move existing readlink msan interceptor to sanitizer_common. Fixes google/sanitizers#908 Patch by Oliver Chang Reviewers: vitalybuka, eugenis Reviewed By: vitalybuka Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D42630 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@323825 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-30[libFuzzer] Fix sizeof(ptr) bug.Matt Morehouse
sizeof(const char *) returns 4 or 8 when what we really want is the size of the array. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@323802 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-30[scudo] Add default implementations for weak functionsKostya Kortchinsky
Summary: This is in preparation for platforms where `SANITIZER_SUPPORTS_WEAK_HOOKS` is 0. They require a default implementation. Reviewers: alekseyshl Reviewed By: alekseyshl Subscribers: delcypher, llvm-commits, #sanitizers Differential Revision: https://reviews.llvm.org/D42557 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@323795 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-27[sanitizer] Update from zx_time_get to zx_clock_getPetr Hosek
This Zircon syscall was renamed. Differential Revision: https://reviews.llvm.org/D42617 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@323611 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-26[NFC] fix trivial typos in comments and documentsHiroshi Inoue
"in in" -> "in", "on on" -> "on" etc. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@323510 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-25[scudo] Overhaul malloc related interceptorsKostya Kortchinsky
Summary: This is a follow-up to D42506. There are a few of things that bothered me about `scudo_interceptors.cpp`: - the filename is a misnomer: it intercepts some functions, but the rest (C++) is actually in `scudo_new_delete.cpp`. I feel like `scudo_malloc.cpp` is more appropriate (ASan uses the same naming scheme); - we do not need "full" interceptors, since we are never accessing the unsanitized version of the functions, we just need the `extern "C" INTERCEPTOR_ATTRIBUTE` part of it to just call our functions; - a couple of functions where duplicated while they could just be `ALIAS`'d; - use the `SANITIZER_INTERCEPT_*` defines to hide the unneeded interceptors; - use `SIZE_T` instead of `uptr`: while it's the same behind the curtain, the former is meant for this use case. In the end there is no functional change on the currently supported platforms (Linux, Android). Reviewers: alekseyshl Reviewed By: alekseyshl Subscribers: mgorny, hintonda, delcypher, #sanitizers, llvm-commits Differential Revision: https://reviews.llvm.org/D42546 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@323464 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-25[sanitizer] Implement GetNumberOfCPUs for WindowsKostya Kortchinsky
Summary: Implement `GetNumberOfCPUs` using `GetNativeSystemInfo`. The only consummer of this function is Scudo which is not functional on Windows yet. Reviewers: rnk, zturner Reviewed By: zturner Subscribers: zturner, kubamracek, delcypher, #sanitizers, llvm-commits Differential Revision: https://reviews.llvm.org/D42547 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@323462 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-25Correct typo in TSan codeKamil Rytarowski
We wrongly enabled additional (unwanted) branch for NetBSD. Noted by Vlad Tsyrklevich git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@323413 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-24[scudo] Remove SANITIZER_LINUX requirement for the malloc interceptorsKostya Kortchinsky
Summary: Currently all platforms are using the `scudo_interceptors.cpp` interceptors. We might to come up with platform specific interceptors when/if we get Apple & Windows, but as of now, that allows for Fuchsia to use them. `scudo_new_delete.cpp` didn't have the `#if SANITIZER_LINUX` so it's good to go. Reviewers: alekseyshl, flowerhack Reviewed By: flowerhack Subscribers: delcypher, #sanitizers, llvm-commits Differential Revision: https://reviews.llvm.org/D42506 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@323386 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-24[builtins] Align addresses to cache lines in __clear_cache for aarch64Martin Storsjo
This makes sure that the last cache line gets invalidated properly. This matches the example code at http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.den0024a/BABJDBHI.html, and also matches what libgcc does. Differential Revision: https://reviews.llvm.org/D42196 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@323315 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-23Break a line into <= 80 charactersKamil Rytarowski
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@323279 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-23[scudo] Allow for weak hooks, gated by a defineKostya Kortchinsky
Summary: Hooks in the allocation & deallocation paths can be a security risk (see for an example https://scarybeastsecurity.blogspot.com/2016/11/0day-exploit-advancing-exploitation.html which used the glibc's __free_hook to complete exploitation). But some users have expressed a need for them, even if only for tests and memory benchmarks. So allow for `__sanitizer_malloc_hook` & `__sanitizer_free_hook` to be called if defined, and gate them behind a global define `SCUDO_CAN_USE_HOOKS` defaulting to 0. Reviewers: alekseyshl Reviewed By: alekseyshl Subscribers: #sanitizers, llvm-commits Differential Revision: https://reviews.llvm.org/D42430 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@323278 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-23Add a new interceptor: paccept(2)Kamil Rytarowski
Summary: paccept(2) is a NetBSD-specific variation of accept(2). Sponsored by <The NetBSD Foundation> Reviewers: joerg, vitalybuka, eugenis Reviewed By: vitalybuka Subscribers: llvm-commits, kubamracek, #sanitizers Tags: #sanitizers Differential Revision: https://reviews.llvm.org/D42052 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@323273 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-23[ubsan] Add preinit initializer for ubsanFrancis Ricci
Summary: Now that ubsan does function interception (for signals), we need to ensure that ubsan is initialized before any library constructors are called. Otherwise, if a constructor calls sigaction, ubsan will intercept in an unitialized state, which will cause a crash. This patch is a partial revert of r317757, which removed preinit arrays for ubsan. Reviewers: vitalybuka, eugenis, pcc Subscribers: kubamracek, mgorny, llvm-commits, #sanitizers Differential Revision: https://reviews.llvm.org/D42389 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@323249 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-22[ubsan] Disable signal handling on Android.Evgeniy Stepanov
Summary: See rationale in the comments. Reviewers: vitalybuka Subscribers: srhines, llvm-commits, kubamracek Differential Revision: https://reviews.llvm.org/D42329 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@323142 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-22[lsan] Respect log_path option in standalone LSanMaxim Ostapenko
Differential Revision: https://reviews.llvm.org/D42303 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@323083 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-22[NFC] fix trivial typos in commentsHiroshi Inoue
"the the" -> "the" git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@323080 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-21Reland "[Fuzzer] Parametrize add_custom_libcxx"Petr Hosek
add_custom_libcxx uses the just built compiler and installs the built libc++, e.g. for testing, neither of which is desirable in case of Fuzzer where the libc++ should be built using the host compiler and it's only linked into the libFuzzer and should never be installed. This change introduces additional arguments to add_custom_libcxx to allow parametrizing its behavior. Differential Revision: https://reviews.llvm.org/D42330 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@323054 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-20[compiler-rt] Implement __clear_cache() on OpenBSD/mips64Kamil Rytarowski
Summary: Make __clear_cache() invoke the platform's cache flush function on OpenBSD/mips64. Reviewers: krytarowski Reviewed By: krytarowski Subscribers: sdardis, dberris, arichardson, krytarowski, llvm-commits, #sanitizers Differential Revision: https://reviews.llvm.org/D42332 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@323039 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-20Revert "[Fuzzer] Parametrize add_custom_libcxx"Petr Hosek
This reverts commit r323032: failing on the sanitizer-x86_64-linux-autoconf bot. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@323033 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-20[Fuzzer] Parametrize add_custom_libcxxPetr Hosek
add_custom_libcxx uses the just built compiler and installs the built libc++, e.g. for testing, neither of which is desirable in case of Fuzzer where the libc++ should be built using the host compiler and it's only linked into the libFuzzer and should never be installed. This change introduces additional arguments to add_custom_libcxx to allow parametrizing its behavior. Differential Revision: https://reviews.llvm.org/D42330 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@323032 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-20Reland "Fix syntax error introduced in r322991"Petr Hosek
This triggers compiler error when building sanitizers for Fuchsia. Differential Revision: https://reviews.llvm.org/D42328 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@323029 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-20Revert "[sanitizer] Fix syntax error introduced in r322991"Petr Hosek
This reverts commit r323027: it breaks the SanitizerLintCheck. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@323028 91177308-0d34-0410-b5e6-96231b3b80d8
2018-01-20[sanitizer] Fix syntax error introduced in r322991Petr Hosek
This triggers compiler error when building sanitizers for Fuchsia. Differential Revision: https://reviews.llvm.org/D42328 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@323027 91177308-0d34-0410-b5e6-96231b3b80d8